Самые интересные новости финансов и технологий в России и мире за две недели: Минфин предложил поднять налоги на инвестиционные доходы, Трамп подписал закон об «адских санкциях», ФРС опять начала поднимать ставку, Anthropic и OpenAI выпустили новые модели, рои OpenAI-агентов продолжают хулиганить, Google готовится отправить свои TPU в космос, а Figure учит роботов работать в незнакомых домах.
Читать далееВ салонах услуг — парикмахерских, груминге, маникюре — есть наблюдение, которое все считают очевидным. Новый мастер первые месяцы работает меньше остальных, и объясняют это одинаково: у него нет своей клиентской базы, а у коллег есть.
Объяснение выглядит самоочевидным ровно до того момента, когда его пробуешь воспроизвести. Я собрал простую модель, ожидал увидеть в ней этот разрыв — и не увидел вовсе. Разрыв появился только после того, как я поменял одно правило, которое к базе отношения не имеет.
Дальше — модель целиком, код, числа и вывод, который меня самого удивил.
Читать далееВ этом учебном году мне потребовалось подготовить лабораторные работы по дисциплине «Криптографические протоколы». Самый очевидный вариант практической работы – дать студентам Python и предложить что-нибудь зашифровать: сгенерировать ключ, вызвать AES-GCM из библиотеки, получить ciphertext, затем расшифровать его обратно.
Полезно, но мне хотелось немного другого. Когда мы изучаем криптографический протокол, гораздо интереснее не просто увидеть:
encrypt() → decrypt()
а поставить между отправителем и получателем активного нарушителя и посмотреть, что произойдёт.
Что видит атакующий в зашифрованном пакете? Что будет, если изменить ciphertext? Можно ли повторить старый, но совершенно корректный пакет? Что произойдёт при повторном использовании nonce? Как поведёт себя система после отзыва ключа?
Из этих вопросов постепенно появился CryptoLab – учебный стенд, который я сейчас развиваю параллельно с преподаванием курса.
В этой статье расскажу о том, как устроена первая лабораторная работа, какие задачи я пытался решить при её разработке и покажу два наиболее характерных эксперимента.
Читать далееПопробуем представить ситуацию: очередной человек за очередные два вечера написал с помощью очередного ИИ очередной магазин, пусть будет магазин кормов для кошек. Магазин работает, человек счастлив, новая эра разработки наступила. Теперь остается дело за малым - посмотреть, как оно вообще будет работать, что произойдет после того как автор решит в нем что-то поменять. И здорово было бы, чтобы к тому моменту, когда после добавления скидки пропадёт самовывоз - автор ещё не закончил рассказывать, сколько программистов больше не понадобится. При этом сам инструмент действительно годный. И желание попробовать его вообще везде вполне понятно: интересно же, что ещё получится. Опять же, нередко возникает момент, когда человек ещё не закончил пробовать, но уже начал делать делать далеко идущие прогнозы. Получается как с автополивом - вода из шланга течет, помидоры растут, при чем - сами. Только между "я настроил автополив" и "агрономы больше не нужны" всё-таки есть некоторая разница. И как будто бы, она не настолько неуловима.
Читать далееУтро четверга. Вы открываете таск-трекер, а там тикет от сканера зависимостей: «jackson-databind, CVE-2026-83557, критично, патчить». Ссылка на GitHub-бюллетень, CVSS, слово «полиморфная десериализация», и через двадцать минут у вас уже согласован hotfix на прод в пятницу в 18:00.
Читать далееЯ написал source generator для лексера HydraScript. Он собирал регулярное выражение из описаний токенов. После этого мне оставалось скопировать регулярку и руками вставить её в другой файл.
Даже тест на забытое копирование пришлось завести. Довольно много усилий, чтобы поддерживать одну строку в актуальном состоянии.
Проблема была в том, что результат моего генератора требовался другому генератору — тому, который стоит за атрибутом [GeneratedRegex] в .NET. Хотелось описать токен один раз и поручить остальное сборке. Для этого пришлось разобраться, в каком порядке Roslyn вообще выполняет генераторы.
Читать далееХочу посвятить эту статью погружению в разные возможности обновления данных в JS и React, раскрыв это на примере своей библиотеки "nexus-state". Поделюсь подробными примерами, мотивацией и расскажу, для чего вообще нужны стейт-менеджеры и как они работают. При написании примеров я постараюсь максимально просто объяснить суть и не буду затрагивать тему типизации.
Читать далее →В ходе моего исследования видеокарт линейки NVIDIA CMP, обхода их ограничений и снятия лимитов, оставалась еще одна проблема - видеокарты не могли нормально обмениваться данными напрямую друг с другом. Для моей задачи это было довольно неприятно, потому что сервер собирался ради запуска больших языковых моделей на нескольких дешевых видеокартах одновременно.
В итоге я полез разбираться, можно ли открыть на CMP 90HX настоящий P2P. И получилось - впервые в мире включить прямой обмен между этими картами, заставить одну CMP реально обращаться к памяти другой и получить нормальную скорость передачи.
Самое забавное, что по дороге мне очень сильно помогли сами инженеры NVIDIA. Не лично, конечно. Они просто забыли в драйвере ровно те внутренние механизмы, которыми сами пользовались при разработке и отладке.
Взломать драйвер NVIDIAКак собрать предметные миры, нормализовать таксоны, найти межпредметный перенос, проверить его и вовремя остановить исследование.
В первой статье этой серии «От университета до искусственного интеллекта: как ускорялся генератор изобретений» мы говорили о том, как человечество усиливало генератор нового. Во второй «Одиночный исследователь с ИИ: как собирать новое из разных предметных областей» — о том, что одиночному исследователю не нужна одна «лучшая методология»: реальная работа собирается из нескольких предметных областей и нескольких специализированных методов. Теперь пора сделать следующий шаг и разобрать саму технологию «Глаз стрекозы».
Самая простая ошибка при работе с искусственным интеллектом — начать с генерации идей. Модель охотно предложит десятки связей между биологией, экономикой, производством, логистикой, теорией устойчивости или любой другой областью. Часть этих связей будет интересной, часть — банальной, часть — просто красивой языковой конструкцией. Проблема в том, что до появления идеи исследователь должен понять, какими сущностями он вообще оперирует и какие предметные миры имеет право сравнивать.
Читать далееКоллеги всю неделю обсуждают релиз претрейна https://huggingface.co/yandex/AliceAI-Foundation-80B-A3B-Base https://habr.com/en/companies/yandex/articles/1083300/. В одном из чатов спросили как она отвечает на основополагающий вопрос, и я решил это проверить, что бы узнать сколько стоит инференс подобной модели.
Исходя из того что удалось найти, требуется 4 шт A100, вроде бы можно по пробовать на паре, но это требует CPU-offload, а на такие компромиссы, как и квантизации, я идти не готов. GPU я собрался брать в аренду на облаке, название его писать не буду.
Первый подход был к Datasphere на Jupiter notebook и это был провал (на 6000₽). Детали не важны - проехали. Потом попытался запросить VM c 4 A100, поднял квоты через тикеты, - вот это всё. И не помогло. Ну то есть в теории это возможно - поймать 4 A100, но мне не удалось. Ещё заявлен какой-то Gen2 - но на него даже квоту не поднимают.
Вернулся к Datashpere Jobs, потому что для Jupiter-то их (A100) выделяли! Схема такая:
Читать далееVulkan на моей GTX 1080 генерирует в полтора раза быстрее CUDA. Qwen вставляет китайские слова в русский текст даже при температуре 0. А маленькая модель однажды отчиталась, что удалила файл, и ничего не удалила. Всё это я узнал, пока делал Ollivo: программу, которая запускает локальные нейросети без Python, CUDA и терминала.
Читать далееТак уж вышло, что я до сих пор не могу подобрать лучший способ для работы с транзакциями. Поэтому я решил написать эту обзорную статью. Я разберу все известные мне паттерны для работы с транзакциями и постараюсь выбрать лучший.
db.BeginTxПричалы на обложке складываются в S-57, а в коде слева спрятаны две строки. Кто первый расшифрует, пишите в комментарии.
Читать далееТест зелёный, но в продакшене этот сценарий упадёт. Покажу, как один мок прячет бизнес-инварианты, переносит требования в голову разработчика и заставляет тесты молчать об изменениях.
Читать далееЯ люблю игры, которых нет в Steam: DRM-free игры с GOG и itch.io, визуальные новеллы, фанатские переводы и патчи к ним. На Steam Deck всё это прекрасно запускается, но каждый раз через одну и ту же рутину: скачать, переключиться в режим рабочего стола, распаковать, добавить в Steam как стороннюю игру, выбрать Proton, поискать обложки, вернуться в игровой режим. Переключаться туда ради каждой игры было лень, да и просто геморройно.
Отсюда и выросла идея DeckDrop: один раз зайти в режим рабочего стола, поставить его и больше туда не возвращаться. Дальше всё делается с телефона или компьютера: вставил ссылку, и через пару минут игра уже в библиотеке Steam с нормальным названием и обложками. А скриншоты и длинные записи с дека можно просто скачать на телефон.
Читать далееРабочая карта: от исследовательской оптики и слабых связей до специализированных методов, проверки и работающего компонента.
В первой статье этой серии "От университета до искусственного интеллекта: как ускорялся генератор изобретений" мы смотрели, как человечество постепенно усиливало генератор нового: университеты, печать, научные общества, лаборатории, вычислительные сети и, наконец, искусственный интеллект. Во второй вопрос практичнее: что происходит, когда значительная часть этой мощности оказывается в распоряжении одного исследователя или маленькой группы?
После сравнения разных подходов к изобретательству, научному поиску и разработке продуктов вывод оказался довольно приземлённым. Одиночному исследователю не нужна одна «лучшая методология». Ему нужны три способности: собрать правильную предметную картину задачи, подключить сильный профильный метод в нужный момент и вернуть его результат обратно в общую картину, не потеряв смысл, доказательства и ограничения.
Сначала нужно понять, какими предметными мирами смотреть на задачу. Только потом — какой метод применять.
1. Одиночный исследователь — не маленький НИИ
У одиночного исследователя нет десятков лабораторий, отделов и специалистов. Но его маршрут дешевле перестраивается: можно быстро зайти в соседнюю дисциплину, проверить странную связь, закрыть тупиковую ветвь и вернуться обратно. Большое исследование по более чем 65 миллионам статей, патентов и программных продуктов показало, что малые и большие команды действительно чаще занимают разные ниши: небольшие коллективы чаще связаны с работами, открывающими новые направления, крупные — с развитием существующих линий [1]. Это не означает превосходства одиночки. Это означает другой режим поиска.
Читать далееВсем привет! При широком распространении REST подхода для клиент-серверного взаимодействия всегда существовали и существуют альтернативные решения, иногда незаслуженно обделенные вниманием. Об одном из них речь пойдет в сегодняшней статье. В ней будут даны некоторые теоретические основы, необходимые для работы и создан небольшой проект, который можно использовать для перехода на gRPC.
Читать далееМоя первая должность в трудовой называлась «инженер-программист». Недавно я понял, что вторую половину этого названия уже можно зачеркивать.
Мне понадобилась простая экранная лупа для Mac: положить рамку на кусок экрана и рассмотреть пиксели в отдельном окне. Готового инструмента под мой сценарий я не нашел. Swift и AppKit я толком не знаю, под macOS никогда не писал. Раньше на этом бы все и закончилось.
В этот раз через три дня у меня было нативное приложение: 10+ тысяч строк, сотни тестов, подпись, DMG, open source, ревью в App Store. Понятно, что код писал Claude Code.
Но интереснее другое. Когда я спросил себя, что эти три дня делал я, ответ оказался неожиданным. Я почти не программировал, а работы было полно.
В статье — о том, почему программист превращается в инженера-продакта, зачем дизайнеру рисовать кнопку, если можно сразу сделать настоящую, что будет с Figma и почему софт впервые становится по-настоящему персональным. Функция с одним пользователем, мной, теперь окупается.
С ростом числа финансовых операций аналитикам всё сложнее вручную разбирать срабатывания систем финмониторинга — а большинство из них ложные.
Привет! Меня зовут Максим Коцюба, я старший инженер по данным с опытом в финсекторе — ВТБ и Сбер, выпускник онлайн-магистратуры «Инженерия данных» НИУ ВШЭ и Нетологии. В выпускной работе я взялся за эту задачу и собрал сквозной ML/MLOps-пайплайн, который не просто классифицирует операции, а ранжирует их по степени риска. Расскажу, что получилось и почему одной классификации оказалось мало.
Узнать, что с метриками →XCP (Universal Measurement and Calibration Protocol) — это бинарный автомобильный интерфейсно-независимый протокол прикладного уровня модели OSI-7. Используется при разработке и отладке ECU. Появился в далёком 2003 году как потомок ранее существующего протокола CCP.
Читать далее