Обновить
-23
@lrrr11read⁠-⁠only

Пользователь

4
Подписчики
Отправить сообщение

про само доказательство ничего не сказано, ЧСХ.

Кореец рассматривает Q(S) - минимальную площадь дивана Гервера, в которую входит искомый диван. Он выражает Q как квадратичный функционал в пространстве троек некоторых параметров. Затем доказывает, что у этого функционала только один локальный максимум.

Про то, что площадь дивана Гервера является локальным максимумом, было известно еще из работы самого Гервера. А т.к. он только один, то он не только локальный, но и глобальный. Теорема доказана.

судя по рождению в Байконуре и поступлению на явно очень непростую кафедру, куда брали не только лишь всех, его родители тоже очень непростые люди. Наверняка какие-нибудь высокопоставленные военные.

С другой стороны, ученая степерь и карьера в частном бизнесе говорят, что сам он тоже далеко не папенькин сынок.

То есть тут идеальная ситуация с точки зрения высшей государственной бюрократии, квалифицированный человек из хорошей семьи. Поэтому его начали быстро продвигать по службе.

Сравнится ли такая система с жестким естественным отбором в частном бизнесе, которому подвергся Маск? Наверно нет.

В общем посмотрим, что у него получится. "Вот когда получится, тогда и поговорим" (с). Помню как меня тут минусовали, когда я говорил такое же про Маска с его фальконами.

меня радует, как представителям одной с каждым днем все более маленькой и все более гордой страны, а также сочувствующим им позволено говорить и делать буквально что угодно. И на каждый такой эпизод в комменты прибегают доброхоты вроде тебя и начинают газлайтить, что все не так.

Нет, все именно так.

про cmake ничего не понял

Значит нужно собрать старый boost отдельно от системы, подключив к проекту через cmake. Опа! Но cmake тоже новый, и на старую версию boost он ругается ошибками.

что мешает скачать старый cmake с cmake.org или github (gitlab)? Распаковать в какую-нибудь папку, добавить в PATH и вуаля, я так делал.

Но не тут-то было. Оказалось, что в новых версиях такого мощного и любимого всеми сборщика проектов Cmake изменились политики поиска библиотек через функцию FindPackage, что он категорически отказался находить старые версии, как я ни плясал над ним

это видимо про политику CMP0167, но что мешает вернуть старое поведение через cmake_policy? Я посмотрел в версии 3.31, FindBoost.cmake пока на месте.

очередной инфоцыган, накатавший нейронками статью с рекламой своего канала.

В какую же помойку превратился хабр, а ведь когда-то тут айтишники писали что-то новое и интересное.

я прямо так и представляю. Страны из красной зоны объявляют международную кооперацию по разработке современной микроэлектроники (благо из технологий для AI там по сути нужно только быстрое умножение матриц), часть желтых стран начинает этим интересоваться, потому что чипов по квотам не хватает для конкуренции. В ответ США начинают угрожать этим желтым странам передвинуть их в красную зону, в ответ на что те начинают угрожать поставкам каких-нибудь критически важных ресурсов, в ответ на что где-нибудь рядом находятся бравые повстанцы, жаждущие демократии.

В общем, торговые ограничения и бесконечные локальные конфликты по всей планете, а как только в красных странах допилят микроэлектронику до желаемого уровня - то у кучи заключенных к тому моменту и как-никак поддерживавших зыбкое перемирие международных договоров кончатся все причины их соблюдения, и локальные конфликты начнут сливаться в один глобальный. Крайне жестокий, на уничтожение.

Добро пожаловать в дивный новый мир.

В более безопасных языках есть сначала compile-time check

int main(int argc, char *argv[]) {
  int a[5];
  a[6] = 1;
}
$ clang t.c
t.c:3:3: warning: array index 6 is past the end of the array (that has type 'int[5]') [-Warray-bounds]
    3 |   a[6] = 1;  

это компайл-тайм чек?

потом runtime check

тебе кто-то запрещает делать рантайм проверки в Си, бездарь?

после которого будет либо ошибка, либо исключение, а не краш.

ты несешь бессмысленную чушь. Рассказать, к чему приводит необработанное исключение, или сам догадаешься?

Язык C небезопасен с точки зрения доступа к памяти, плюс вам придется самостоятельно управлять ею

что это вообще значит? Если процесс начнет ломиться куда не положено, то получит SEGFAULT. Или например после fork() процесс-потомок не получит доступ на запись к памяти родителя без дополнительных усилий. Это безопасность или нет? А как насчет присутствующих в gcc и clang аттрибутов cleanup, constructor, destructor - это случайно не полные аналоги init и defer из golang?

Когда вы работаете с кодом, который должен обезопасить или обработать ненадежные входные данные

то есть в других языках входные данные всегда надежные, ничего обрабатывать не надо? Дальше не читал, прокрутил вниз.

Мы все в курсе, что язык C — появился раньше сред, требующих работы с зависимостями и библиотеками.

я в курсе, что например в cmake есть FetchContent, позволяющий скачивать что угодно откуда угодно. А ламер, наливший кучу воды в этой статье - видимо нет. Хотел написать "наливший кучу воды при помощи нейронок", но даже ChatGPT в ответе на вопрос про управление зависимостями в проектах на Си упоминает conan с vcpkg...

а также с надежностью этих вибрирующих крошечных мембран и воздействием производимого ими ультразвука на человека и животных.

Еще ремонтопригодность. У меня пару месяцев назад сдох вентилятор в китайском мини-ПК. Я без проблем его разобрал и залил смазку в нужное место, после чего он работает как новый. А вот с этими ультразвуковыми штуками как бы не было единственного варианта "купить новый ноутбук", потому что они например намертво приклеены к плате и вообще не продаются в виде запчастей.

пользуйтесь distrobox, там из коробки настроен проброс всех нужных сокетов и переменных окружения для запуска GUI.

К предыдущей статье тоже относится.

на самом деле вообще не шутка, руководство командой из 7 человек для студента - это очень хорошая практика. Потому что в командной работе даже на самых простых проектах может вылезти столько косяков, что мама не горюй. А он его еще и успешно завершил.

А вот то что сам сел дорабатывать в конце - это минус, руководство так не поступает.

если уж писать на современном C++, то и std::print() вместо std::cout.

И return 0; не нужно в конце main.

а еще у beelink служба поддержки мне ответила в выходные в течение пары часов.

(начал шуметь и плохо крутиться вентилятор на мини-ПК. Предложили обменять по гарантии, но я не хотел оставаться без девайса, кроме того оказалось что этот вентилятор элементарно самому разобрать и смазать. До сих пор хорошо работает)

да-да, потом еще окажется что в "safe rust" unsound unsound-ом погоняет, что в "unsafe rust" больше шансов поймать UB чем в Си, что это чудо при разработке сначала постоянно вынуждает делать глубокие инвазивные рефакторинги по все кодовой базе (потому что отстает по фичам от C++ лет на 15), а потом компилируется по полчаса (потому что пытается компенсировать это отставание процедурными макросами во все поля).

Взять хотя бы этих акробатов, которые сейчас тащат раст в ядро Linux. Оказалось что в расте не обрабатываются ошибки аллокации при создании структур (Vec::new()), а так как машинерии для работы с исключениями у них тоже нет, то им пришлось наспамить кучу новых методов типа Vec::try_new() для всех структур в стандартной библиотеке.

Это я еще про комьюнити фанатов раста не сказал, которое начинает агрессивно тебе доказывать что ты ничего не понимаешь (либо, как вариант, молча лепит минусы в карму). А потом при проверке оказывается что там один студент без опыта, другой фронтендер, третий в лучшем случае пилит круды по шаблонам...

И это был не банк федерального масштаба, а какая-то залупная конторка, торгующая билетами через интернет

проблема в том, что эта залупная конторка подчиняется точно таким же законам о защите персональных данных (ведь билеты - это оно и есть), как и банк федерального масштаба.

Эта статья - наглядная иллюстрация того, почему весь софт на расте либо переписан с Си, либо имеет кучу сишных зависимостей, которые и выполняют основную работу.

нормальные новички стали редкостью из-за того, что крупные компании начинают их обхаживать еще во время учебы, курса с 3-го, и эти люди в принципе почти не выходят на рынок.

Мы в этом году наняли одного такого выпускника одного из ведущих университетов страны. К моменту получения диплома у него уже оказалось больше двух лет опыта работы в резюме и достаточно скиллов, чтобы браться за любые задачи в нашей предметной области. То есть он уже был не джуном, а отличным миддлом.

не, тут дело не в тарологах, а в том что Эльвира Сахипзадовна случайно одела не ту брошку. И не просто одела, а еще и пришла с ней на заседание ЦБ по ключевой ставке.

А чем выше ключевая ставка (и как следствие проценты по кредитам), тем сложнее бизнесу расширять деятельность и создавать новые рабочие места.

да, надо еще раз пояснить, что тут весь цимес вовсе не в санкциях - тот же github например уже 2 года потихоньку ограничивает и удаляет профили юзеров, указавших свою принадлежность к таким организациям - а во-первых в словах Торвальдса, во-вторых в том как все это было сделано.

Два из трёх стандартизированных алгоритма базируются на теории решёток, где взлом одного может повлечь и взлом другого. При этом, оставшийся третий алгоритм - SPHINCS+ (базируемый на хеш-функциях) способен лишь создавать цифровые подписи, но не шифровать сообщения / не инкапсулировать ключи. Таким образом, в настоящее время не существует стандартизированных альтернатив KEM'а (key encapsulation mechanism), кроме ML-KEM'а (Kyber'а).

ну вот поэтому в NIST сейчас и объявили дополнительный раунд, чтобы стандартизировать что-нибудь не на решетках (либо на решетках, но принципиально более лучшее)

В целом все это тлен, стойкость никакого алгоритма шифрования не доказана и не может быть доказана, т.к. это задача из серии "докажи что ты не верблюд". Даже если там что-нибудь сведут к NP-сложной задаче и докажут что P!=NP - никто не гарантирует, что не найдутся какие-нибудь 0.1% частных случаев с эффективным эвристическим алгоритмом решения.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность