Привет, Хабр! Сегодня я расскажу, как пытался анализировать поведение AES-128-CBC на 500 000 выборках шифротекстов.
Всем привет! Меня зовут Григорий Дядиченко, и я разрабатываю разные проекты на заказ. Сталкивались ли вы с ситуацией, когда персонаж в вашей игре начинает немного дёргаться, если поиграть достаточно долго? Или пуля иногда пролетает сквозь тонкую стену, хотя коллайдер на месте? Если да — добро пожаловать в мир проблем float precision.
Сегодня хочется поговорить о том, почему тип float — при всей его повсеместности — может создавать тонкие и неочевидные баги в играх. Разберём, как он устроен, где именно он начинает врать, и что с этим делать.
Если вам интересна эта тема — добро пожаловать под кат!
Читать далееСэм Альтман не понимает технологии, не хочет понимать и считает, что ему это не нужно.
Или это только мне кажется, что истинная миссия Сэма Альтмана — спалить как можно больше инвестиционного капитала за кратчайший срок?
В этом он и правда похож на своего кумира — Наполеона Бонапарта. Французский император привёл миллионы европейцев к смерти; император ИИ спустил миллиарды долларов. И занял ещё больше — без каких-либо внятных перспектив возврата инвестиций.
Чего только не сделаешь ради славы!
Читать далееКладовые забиты деталями, но на финишную сборку не хватает двух позиций. Склад показывает «всё в наличии», а в цехе пусто. К концу месяца — авральные переработки, чтобы закрыть план. Это не описание какого-то конкретного завода. Это типичная картина на предприятиях, где производство и складская логистика живут в параллельных мирах.
На проводимых нами проектах автоматизации на производствах — от рыбопереработки до промышленных заводов — практически везде встречаются одни и те же пять проблем. Разбираем, откуда они берутся и что с ними делать.
Читать далееIT-найм в 2026 — это 6-8 этапов собеседований и тестовые на 3 дня. В ответ кто-то написал AI-агента на Claude Code, который скрейпит 45 сайтов с вакансиями, адаптирует резюме под каждый отклик и готовит к интервью. Разбираю архитектуру, что реально работает, и почему массовые автоматические отклики — скорее всего плохая идея.
Читать далееПривет, Хабр! Я — Максим Куркин из лаборатории FusionBrain AIRI. Когда мне сказали «поедешь на WACV», первая мысль была — отлично, конференция. Вторая мысль — Тусон, Аризона. Пустыня Сонора. Кактусы‑сагуаро высотой с двухэтажный дом. +25°C в начале марта, когда в Москве ещё лежит снег. Круто!
В итоге я провёл в командировке девять дней — с 5 по 13 марта. Два дня дороги в каждую сторону, пять дней конференции, немного пустыни вокруг. Поездка получилась насыщенной: и по науке, и по ощущениям, и очень хочется поделиться увиденным!
Читать далееПривет, Habr!
Меня зовут Игорь, я разработчик на удалёнке. И у меня, как и положено серьёзному разработчику, куча входящих сообщений и пиликающих мессенджеров.
Сказать, что заниматся творческой деятельностью в виде написания кода в таких условиях сложно - ничего не сказать.
Сотни уловок и ухищрений, секретных техник концентрации и полноразмерные наушники с активным шумоподалениям привзваны помагать мне выходить в астрал входить в состояния потока и укладыватся в дедлайны.
Идея этой статьи родилась из коментария одного комментария @Xregn к статье Как меньше отвлекаться и прокрастинировать..., где ребята обсуждали идею Pomodoro-таймера для spotify.
Идея проста: заводишь таймер и влючаешь музыку, по истечении времени музыка должна встать на стоп. Супер, если можно слушать музыку с ноута, чтобы не переключать наушники с телефона на ноут и обратно, когда бегаешь по созвонам.
Читать далееПривет, Хабр! Я Дмитрий Белозеров из МТС Линк, моя команда отвечает за ПО и оборудование для переговорных комнат и сервис Rooms. Сейчас BYOD-системы для переговорок — это мастхэв. Простота подключения, независимость от вендора и сниженные затраты на обслуживание — это то, что привлекает компании.
Мы тоже предлагаем такие решения. В своей практике я часто сталкиваюсь с тем, что при внедрении BYOD-систем не все учитывают полный спектр расходов, которые подразумевает правильное использование таких переговорных. В посте расскажу про эти неочевидные затраты. Надеюсь, будет полезно тем, кто пока только планирует такое у себя.
Читать далееЕсли посмотреть на первые эскизы устройства и на то, что в итоге уходит в производство, между ними часто оказывается большая разница. Не только во внешнем дизайне. Гораздо сильнее меняется внутренняя архитектура.
На ранних этапах всё обычно выглядит логично: компактная плата, аккуратная батарея, понятное расположение интерфейсов. Компоненты укладываются в корпус почти идеально. Но по мере разработки эта схема начинает постепенно расползаться. Плата увеличивается, корпус утолщается, появляются дополнительные кабели, меняются точки крепления.
К финальной версии устройство может выглядеть вполне аккуратно снаружи. Но если разобрать его, становится видно, что внутренняя структура — результат длинной цепочки компромиссов.
Это происходит не из-за некомпетентности команды. Это почти неизбежный эффект того, как устроен процесс разработки сложных устройств.
Читать далееКаждый, кто льет трафик с Директа, рано или поздно сталкивается с одной и той же шизой: интерфейс Директа показывает одни конверсии, Метрика совершенно другие, и хрен поймешь, кому из них верить. Плюс всегда хочется видеть общую картину: расходы, отказы, реальные лиды и качество трафика по кампаниям в одной нормальной таблице, а не скакать по десятку вкладок.
В этой статье я покажу, как собрать связку простых Python-скриптов, которые стягивают данные из обоих API и сводят их в единый дашборд. Никаких громоздких BI-систем и баз данных только хардкор, requests и pandas.
Заодно подсвечу несколько неочевидных грабель Яндекса, о которые сам успел разбить лоб.
Читать далееРасскажем, как нам удалось повысить качество определения истинных секретов в результатах сканирования кода с 0.70 до 0.90 PR AUC с помощью LLM.
Читать далееВ мире высоконагруженных .NET-приложений каждая наносекунда на счету. Когда ваш код обрабатывает миллионы запросов, даже микрооптимизации могут дать ощутимый прирост производительности. Две ключевые фичи, появившиеся в .NET 8— SearchValues<T> и FrozenSet<T>/FrozenDictionary<TKey, TValue> — позволяют выжать максимум из «горячих путей» (hot paths) благодаря умной предварительной оптимизации.
Читать далееВ современном мире ИИ развивается с бешеной скоростью, помогая реализовывать низкоуровневые задачи, где-то даже заменяя самого специалиста. Несколько месяцев назад ко мне пришел друг - у него свой бизнес, он начал жаловаться, что ему не хватает времени вести рабочие соц. сети. И тут меня осенило: а что, если попробовать автоматизировать процесс полностью? Уменьшить рутину, убрать человеческие ошибки и сделать ведение контента максимально лёгким.
Читать далееAIVPN — это VPN-протокол на Rust, который не только шифрует трафик, но и маскирует его под реальные приложения. Внутри: короткие криптотеги вместо открытого идентификатора сессии, малозаметный старт соединения, профили масок для мимикрии трафика и легковесный модуль нейросетевого резонанса, который отслеживает деградацию маски и позволяет автоматически переключаться на резервный профиль. Сейчас проекту нужна поддержка для развития протокола и выпуска iOS-версии с оплатой Apple Developer Program и размещением в App Store.
Читать далееИТ-директор знает, что сервер загружен на 90% и скоро встанет. Бухгалтер знает, что этот же сервер уже три года как самортизирован и формально не существует. Закупщик знает, что на прошлой неделе купил сорок новых ноутбуков — и понятия не имеет, что на складе лежат ещё два десятка. Все трое работают в одной компании, но живут в разных реальностях.
Цена этого разрыва — потерянное оборудование, раздутые бюджеты и простои, которых можно было избежать.
Увидеть все три правдыВ 2019 году я публиковал статью о первой версии своего проекта Russian Railway Simulator. Прошло достаточно много времени, и возможно кто-то думает, что проект умер. Нет, проект не только не умер, но и продолжает развиваться. На днях вышла новая версия игры. В связи с этим реализую свою давнюю задумку написать о проекте еще раз, о том как он развивался все эти годы, к чему мы пришли к сегодняшнему дню и какие перспективы ожидают нас в будущем.
Читать далееС прошлого года я изучаю бюджетные варианты сборок для локального ИИ в домашних условиях. Точкой “не возврата” стал запуск модели gpt-oss-120b на 3 видеокартах на открытом стенде, после чего я провел длительные тесты в работе и мне понравилось. Однако, десктопные платы и корпусы не могут вместить в себя 3 RTX 3090 (слишком широкие). Тогда я присмотрелся к майнерским решениям, которые имеют свои нюансы и сложности.
В этой статье я расскажу про свой путь: как тестировал 2 майнерские платы, а одну из них прокачал по максимуму, сколько в итоге удалось выжать и финансовые затраты. Разберем по порядку: с чего начинал и к чему пришел. Внутри много скриншотов и даже есть видео.
Читать далееПока мы ждём, что в Telegram наконец раскатится обновлённая реализация Fake-TLS, хочу рассказать о своей реализации MTProto-прокси 2018 года, которая снова становится актуальной, и об одной из её уникальных возможностей.
MTProto-прокси — решение для обхода блокировок Telegram в странах с интернет-цензурой (мы говорим про Иран конечно же
Тёплое зелёное свечение ИВ-11 и ИВ-6, современная электроника на STM32 и минималистичный корпус. Проект сочетает советскую эстетику 80-х с доступными современными компонентами.
Читать далееПривет, Хабр!
PostgreSQL умеет блокировать строки (SELECT ... FOR UPDATE) и таблицы (LOCK TABLE). Об этом знают все. Но есть третий тип блокировок, который решает задачи, с которыми row-level и table-level locks не справляются: advisory locks. Консультативные блокировки — механизм, где PostgreSQL предоставляет инфраструктуру (атомарные блокировки с очередями ожидания), а семантику определяет приложение.
Это значит: вы берёте блокировку по произвольному числовому ключу, и PostgreSQL гарантирует, что никто другой не возьмёт блокировку с тем же ключом одновременно. Никаких таблиц, строк или ресурсов БД не блокируется — это чисто логическая блокировка, видимая только тем, кто её проверяет.
Звучит как-то абстрактно. Посмотрим на конкретные задачи, где advisory locks незаменимы.
Читать далее