Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 43 min 18 sec ago

[Перевод] Физик проанализировала более 100 000 «исправленных» багов ядра Linux

8 hours 58 min ago

В вашем ядре сейчас есть баги, которые не найдут в течение многих лет. Я знаю это, потому что проанализировала 125 183 из них, каждый в 20-летней git-истории ядра Linux помечен прослеживаемым тегом Fixes:.

Средний баг ядра существует 2,1 года. А некоторые подсистемы намного хуже: драйверы CAN‑шины [шины сети контроллеров] — в среднем 4,2 года, работа с сетью SCTP — 4,0 года. Самый долгоживущий баг в моём наборе данных — переполнение буфера в ethtool — сохранялся в ядре 20,7 лет. Подробно остановлюсь на утечке памяти из‑за подсчёта ссылок в netfilter, существовавшей 19 лет.

Я создала инструмент, который выявляет 92% исторических багов в отложенном тестовом наборе данных о времени коммита. Вот что я узнала.

Читать далее

[Перевод] Как разработчик взломал умные пылесосы DJI Romo и научился управлять ими с помощью геймпада PS5

9 hours 6 min ago

Руководитель отдела пропаганды цифровых технологий и искусственного интеллекта в CLINITEX Groupe Сэмми Аздуфаль поделился необычным опытом. Он рассказал, что хотел дистанционно управлять своим новым пылесосом DJI Romo с помощью геймпада PS5. Однако на пути к своей цели Аздуфаль вскрыл уязвимость в работе многих роботов-пылесосов.

Читать далее

Механическая вселенная и свобода воли

9 hours 12 min ago

Бывают такие научные опыты, после которых хочется просто выйти на улицу, вдохнуть холодного воздуха и долго смотреть в пустоту, пытаясь переварить услышанное. Для многих таким моментом стало знакомство с экспериментами Бенджамина Либета, которые он проводил в восьмидесятых годах прошлого века. Либет подключал датчики к голове добровольцев и просил их совершить простое действие: в любой произвольный момент, когда им захочется, пошевелить кистью руки. Это должен был быть максимально свободный, ничем не обусловленный выбор.

Учёный измерял так называемый потенциал готовности — это нарастание электрических сигналов в мозге, которое происходит непосредственно перед началом движения. О том, что мозг готовится к действию чуть раньше, чем мышца сокращается, знали и до него. Но Либет добавил в схему важную деталь. Он поставил перед участниками циферблат с быстро движущейся точкой, чтобы они могли зафиксировать точный момент, когда у них возникло осознанное желание пошевелить рукой.

Результаты оказались обескураживающими. Измерения показали, что испытуемые осознавали своё решение примерно за одну пятую секунды до самого движения. Но вот потенциал готовности в мозге начинал формироваться значительно раньше — примерно за полсекунды до действия. Если верить этим цифрам, мозг принимал решение «сделать это» раньше, чем человек успевал об этом подумать. Как будто сознание — это не капитан корабля, а просто пассажир, которому приносят уведомление о манёвре, когда штурвал уже повёрнут.

Читать далее

Ultra Ethernet: что это за технология и зачем она нужна дата-центрам

10 hours 13 min ago

Сети в дата-центрах за последние десятилетия заметно эволюционировали: еще сравнительно недавно для большинства задач хватало Gigabit Ethernet, и этого было достаточно для корпоративных сервисов и первых облаков. Ethernet удерживал позиции за счет массовости и огромной экосистемы. Однако с распространением крупных моделей искусственного интеллекта характер нагрузок резко изменился: тысячи ускорителей обмениваются терабайтами данных, коллективные операции требуют строгой синхронизации, а кратковременная перегрузка способна замедлить обучение всего кластера. В таких условиях традиционные сетевые подходы начинают упираться в свои ограничения — отсюда и возникает интерес к решениям вроде Ultra Ethernet.

Инициатива родилась в 2023 году благодаря корпорациям Intel, AMD, Broadcom, Cisco, Microsoft и другим. Они сформировали консорциум UEC. На сегодня в нем уже больше сотни компаний. Идея была в том, чтобы взять проверенный Ethernet и переработать его под нагрузки, которые доминируют сегодня: обучение нейросетей и высокопроизводительные вычисления. В 2025 году представили спецификацию 1.0 с полным описанием стека, включая транспортный протокол, механизмы управления затором и телеметрию. Уже появились первые чипы и сетевые карты с поддержкой: Broadcom показал свой Thor Ultra с 800G портами, AMD выпустила адаптеры Pensando Pollara, Nokia и Arista тестируют свитчи. Первые реальные продукты начали поступать на рынок, но экосистема только формируется. Давайте разберем, что именно изменилось и почему это может стать новым стандартом для больших систем.

Читать далее

vCISO — это сотрудник или услуга?

10 hours 13 min ago

Виртуальный директор по информационной безопасности (vCISO) — это внешний эксперт высшего уровня, который берет на себя стратегическое руководство программой информационной безопасности организации на условиях частичной занятости или проектной работы. В отличие от штатного директора по ИБ, который работает в компании на постоянной основе с полным рабочим днем, виртуальный специалист предоставляет свои услуги гибко — это может быть несколько дней в неделю, определенное количество часов в месяц или работа над конкретными проектами.

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

Читать далее

Java Rock Stars Meetup к нам приходит

10 hours 13 min ago

Привет, Хабр!

Вот мы уже полтора месяца в новом году, пора бы встретиться и обсудить насущные вопросы, что думаете?

Это мы приглашаем вас на наш первый в 2026 году Java Rock Stars Meetup) Надеемся, вы соскучились по нам и нашим митапам так же сильно, как и мы по вам!

Регистрация открыта, но количество мест ограничено.

Читать далее

Сплит-клавиатура Lily58 Pro: как я сделал ее беспроводной. Пайка, GitHub и аккумуляторы

10 hours 13 min ago

Недавно я опубликовал здесь статью о беспроводной сплит-клавиатуре Sofle RGB Wireless. В целом, с ней все хорошо: работает, глюков нет, за исключением мелочей. Единственное — мне все же больше нравятся низкопрофильные клавиатуры. Это я понял, когда через пару дней работы на Sofle RGB вернулся к Lily58 Pro. Настолько я привык к ней, что отвыкать оказалось сложно. Но по возвращении меня стала раздражать одна вещь — провода.

Кабель к компьютеру и шнур между половинками работали безотказно, но, во-первых, это лишние элементы на столе. Во-вторых, это причина ограниченной мобильности. Переставить ноутбук, подключить второй ПК, разнести половинки шире — и снова приходится вспоминать о длине кабеля. Короче, я решил ее сделать беспроводной. Забегая наперед скажу, что все получилось. Эта статья, к слову, написана посредством Lily58 Pro. Но было много всего интересного, о чем расскажу под катом. Поехали!

Читать далее

Знакомство с BLE. Модуль HM-10

10 hours 23 min ago

Начиная с версии Bluetooth 4.0, т.е. момента, когда вышла первая спецификация, включающая BLE (Bluetooth Low Energy), данная технология обосновалась в нашей жизни надолго. Число всевозможных BLE устройств стремительно растёт, повышая спрос на специалистов, обладающих знаниями в этой сфере. Однако, спецификация протокола Bluetooth сродни бойцу тяжеловесу, способна отправить в нокаут любого начинающего embedded программиста.

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

Читать далее

Эволюция ПО в разработке игр на практике: 1982 — IBM PC

10 hours 48 min ago

Мир в 1982 году

Общие даты, по категориям, наука, спорт, музыка, кино, театр, литература, живопись, игры (англ.), авиация, метро, железные дороги.

Положение на игровом и компьютерно-железных рынках

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

Из выпущенных систем стоит отметить:

11.1981 - PC-88. Несмотря на выпуск в прошлом году, игры начали выходить только с 1982 года (во всяком случае достоверной информации о играх за 1981 год нет, на mobygames с высокой долей вероятности может быть ошибка с платформой).

23.04.1982 - ZX Spectrum. Только в Британии, выпуск в США будет только в ноябре 1983 года. 06.1982 - MPC 1600 (Columbia Data Products). Первый IBM PC совместимый клон.

08.1982 - Commodore 64. Легенда и важный гвоздь кризиса игровой индустрии США в 1983 году. 10.1982 - PC-98. Самый известный японский компьютер. В последние годы, за счет основы на процессорах Intel, возможна эмуляция в DosBox-X.

11.1982 - Sharp X1. Самый продвинутый из основной тройки японцев на момент выхода (PC-88, X1, FM-7).

11.1982 - FM-7.

Для обычного человека все тоже шло своим чередом - потребности покупать еще один компьютер нет, в отличие от приобретения софта и потенциального расширения памяти. Последнее можно было приобрести у IBM или же купить у Microsoft подобие-аналог RamCard (помимо опции расширения памяти её можно было использовать и как RAM-диск, что могло быть полезным). Другое направление - программирование. BASIC показался привлекательным по своей простоте и интересно посмотреть еще какой-нибудь язык. Таковым становится ассемблер, благо IBM и Microsoft продают компиляторы под него (но с нюансом).

Читать далее

Как работает реклама в интернете простыми словами

10 hours 57 min ago

Простым языком про то как работают рекламные системы и почему за мной гоняется чайник, который я купил неделю назад

Читать далее

SDD (Spec-Driven Documentation) – фреймворк для разработки технической документации в репозитории

11 hours 13 min ago

По мере роста сложности программных систем документация становится не “сопроводительным текстом”, а инженерным активом, она участвует в принятии решений, согласовании требований, проектировании архитектуры, тестировании и эксплуатации. Однако на практике документация часто создаётся разрозненно, несколькими авторами, в несогласованных форматах. Это приводит к потере целостности и росту транзакционных издержек на коммуникации. В такой распределённой среде параллельно растёт применение AI-ассистирования при подготовке технических материалов, что повышает требования к формализации процесса и контролю качества создаваемых артефактов [1].

В программных проектах техническая документация представляет собой совокупность различных артефактов – требований, сценариев, диаграмм, описаний архитектуры и данных – распределённых между участниками и стадиями жизненного цикла. В условиях активного уточнения целей и решений, особенно на стадии исследовательско-опытных работ (research and development, R&D; далее – R&D), такие артефакты развиваются неравномерно, одни быстро детализируются и пересматриваются, другие остаются на уровне ранних гипотез. Это приводит к утрате целостности документационного контура, возникают противоречия между документами, различается уровень абстракции, дрейфует терминология, а изменения становятся трудно сопоставимыми друг с другом. Одновременно ослабевает трассируемость и затрудняется восстановление причинно-следственной цепочки “исходные данные → допущение → решение → требование → сценарий/диаграмма → проверка”, что увеличивает стоимость ревью и повышает риск ошибочных инженерных выводов [2–5].

Читать далее

Я добавил трейты и указатели в свой язык

11 hours 45 min ago

Язык активно улучшается, осталось недолго до bootstrapping'а! Также уменя есть планы писать LSP и загрузить язык на github linguist. Для последнего нужны репозитории (>200). Для тех, кому нечего делать, или кому просто не лень, попробуйте пописать программки на моем языке. Пока мало что можно будет написать, но, думаю, хотя бы что-то можно.

Читать далее

9 вещей, которые я понял, анализируя рынок робототехники в этом году

11 hours 51 min ago

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

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

Читать далее

Товарный знак в 2026 году: стратегический подход для опытных предпринимателей

12 hours 3 min ago

Когда бизнес растет, вопрос «как зарегистрировать товарный знак» не перестает быть актуальным. А еще возникают новые вопросы: как защитить бизнес от подражателей, как правильно масштабироваться и какую работу с брендом вести на разных этапах его развития? 

Поехали!

Почему я до сих пор верю в воздушное охлаждение

12 hours 12 min ago

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

Читать далее

Своя байт-код VM, шейдеры и 3 килобайта на всё: как я создавал игру за 7 дней

12 hours 57 min ago

Как уместить полноценный Shoot ’em up в 3 КБ? Когда иконка на вашем раб столе весит в несколько раз больше. Однако в эпоху терабайтных дистрибутивов всё еще жива магия сайз-кодинга — искусства втиснуть максимум смысла в минимум байт.

Этот проект родился в рамках одного геймджема, где по правилам: «Вначале нужно придумать свой язык программирования, а потом написать на нём игру». У меня было 7 дней, чтобы пройти путь от проектирования архитектуры байт-кода до финальной оптимизации исполняемого файла под Windows.

Читать далее

[Перевод] Возможно, самый гениальный код на python на сегодня: разбираем 200-строчный microgpt от Андрея Карпаты

20 hours 3 min ago

Буквально на днях Андрей Карпаты, один из ранних сооснователей OpenAI, покинувший компанию, исследователь нейросетей, опубликовал на Гитхаб фантастическую вещь: чистый (без специализированных библиотек) 200-строчный python-код трансформера, аналога GPT-2, для изучения всеми желающими. И написал в блоге статью для понимания этого кода (и работы трансформеров). Я перевёл статью и комментарии к коду — ведь этот код (я уверен!) войдёт в ИТ-историю...

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

Читать далее

Чат-бот с генеративным AI под капотом (разговаривает как живой)

20 hours 36 min ago

Реализация чат-бота с LLM под капотом, который ведет общение с пользователем в свободной форме, но собирает структурированную информацию, согласно перечню параметров в конфигурационном файле. А сам файл конфигурации - таблица с описанием скрипта общения, такая, которую вы бы написали для людей: операторов кол-центров, продавцов или интервьюеров. Интересно? Погодите, я еще не закончил! LLM работает локально, не надо платить за токены!

Подробности внутри

Хочу всё знать

22 hours 16 min ago

В проекте часто бывает некий data-flow, который идет через ETL или даже отдельные серверы обогащения данных. Собственно и наш проект не исключение. Что было нужно? Данные из интернета летят в PostgreSQL, но только если в Redis не валяется хэш таких же. Далее несколько ETL проводит стандартный OLTP - OLAP преобразование и складывает все это в MongoDB — откуда клиент дергает эти данные и сравнивает их со своей PostgreSQL попутно складируя кэш в Redis. Все это периодически летает через RabbitMQ.

Что бесило? DBeaver + MongoExpress + redis‑cli все это в разных местах с разными учетками, экспресс постоянно падал по невыясненной причине, неправильный запрос в редиску подвисал, а затем улетал в космос. Мелькнула мысль: «ну почему никто не написал чего‑то более стабильного и удобного?», — собственно это и стало драйвером выходного дня.

Спасибо древним грекам, над названием долго думать не пришлось: Паноптикум — в оригинале «место откуда видно все», но также «сборище жутких и необычных артефактов».

Собственно дальше все очень просто, можно читать, можно искать, можно обновить отдельную запись (если DevOps разрешит) собственно это не production‑ready софт, а простой и надежный инструмент для QA и разрабов. Примитивная basic‑auth которую обязательно надо прятать под TLS и желательно за корп‑VPN, чтобы только свои могли запороть. Для прода и около можно сделать READ_ONLY — но тут каждый сам решает надо оно вообще ему или нет.

Наконец‑то можно проследить все преобразования данных и найти кто потерялся, можно открывать несколько вкладок, можно давать ссылку на конкретный объект. Ставится самым стандартным образом: берем образ — разворачиваем, ничего необычного.

Читать далее

Как выбирать правильно: быстрая оценка масштаба пользовательского интерфейса цифрового продукта

22 hours 25 min ago

Что делать проектировщику пользовательского интерфейса, чтобы не выглядеть белой вороной в глазах бизнеса, когда требуется выявить, показать и обосновать объективную сложность (масштаб) интерфейса цифровых продуктов B2B?

Читать далее

Who's online

There are currently 1 user and 1 guest online.