Habr.com

  • user warning: Table './drupal/sessions' is marked as crashed and last (automatic?) repair failed query: SELECT COUNT(sid) AS count FROM sessions WHERE timestamp >= 1788958142 AND uid = 0 in /var/www/html/includes/session.inc on line 157.
  • user warning: Table './drupal/sessions' is marked as crashed and last (automatic?) repair failed query: SELECT COUNT(DISTINCT s.uid) FROM sessions s WHERE s.timestamp >= 1788958142 AND s.uid > 0 in /var/www/html/modules/user/user.module on line 808.
Ленты новостей Хабр
Все публикации подряд на Хабре
Обновлено: 1 час 23 мин. назад

Ручного курьера приняли за чужого: почему ID оказался плохим признаком происхождения записи

сб, 09/05/2026 - 01:13

04.09 в 09:06:45 UTC ночной опрос Fleet нашёл одного «нового» курьера. Дальше автоматика отработала без единой ошибки: new_ids: 1, dispatch_alerted: 1, sms_sent: 1. В Google Sheet появилась строка 1248, в служебную группу пришёл алерт, человеку ушла SMS с просьбой подтвердить налоговый статус.

Читать далее

Claude Code взломали просьбой пересказать сайт

сб, 09/05/2026 - 00:28

Представь простую задачу: ты просишь агента пересказать содержимое сайта.
Не установить пакет.
Не запустить скачанный скрипт.
Не открыть подозрительное вложение.
Просто прочитать страницу и сделать краткое резюме. Через несколько шагов на твоей машине выполняется код атакующего, устанавливается соединение с управляющим сервером и для наглядности открывается калькулятор.

И самое интересное: агент не нарушал прямой запрет. Наоборот, в ключевой момент он поступил "безопасно" — отказался запускать неизвестный бинарный файл и написал собственный декодер на Python. Именно это решение и стало частью атаки.

Такую цепочку продемонстрировал исследователь безопасности Иоганн Ребергер на Claude Code с моделью Opus 5 в Auto Mode. В его небольших сериях тестов атака срабатывала в трёх или четырёх запусках из пяти. Это не означает, что "Claude взламывается с вероятностью 80%", но хорошо показывает более важную проблему: безопасный на вид отдельный шаг ничего не гарантирует, если вся цепочка строится в среде, которую контролирует атакующий.

И чего он там наломал?

Как микросервисный подход помог нам спроектировать обучающую платформу для Авито Рекламы

сб, 09/05/2026 - 00:18

Привет, Хабр! Меня зовут Екатерина Юдина, я отвечаю за контент-направление в Авито Рекламе. В этой статье расскажу, как мы перестроили обучение работе с рекламным кабинетом по принципу микросервисной архитектуры и почему решили подойти к образовательному продукту так же, как к ИТ-системе.

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

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

Посмотреть базовый обучающий курс

Читать далее

А как у них-2: как регистрируют программы в Европе

сб, 09/05/2026 - 00:02

Под моей статьёй с разбором реестра российского ПО в комментариях спросили: интересно, а как регистрируют программы за рубежом.

Под статьей с разбором, как регистрируют программы в США, спросили: интересно, как регистрируют программы в Европе.

Сюжетная арка закрутилась и я пошла искать европейский аналог российского Роспатента или американского Copyright Office, но не нашла.

Читать далее

Ошибки аналитиков, проектирующих системы под себя

пт, 09/04/2026 - 23:50

Аналитик может создать логичную систему, которая окажется неудобной для тех, кто ей пользуется каждый день. Разбираем, почему возникает разрыв между ожиданиями специалиста и реальной работой пользователей, и как избежать проектирования «фантомных пользователей».

Разобрать ошибки

Свой git без gitlab‑комбайна: настраиваем gitea, подключаем ci и проверяем полное восстановление

пт, 09/04/2026 - 22:43

Как завести свой Git на небольшом VPS и не превратить его обслуживание в отдельный проект? Показываю свой путь с Gitea: настройку пользователей и SSH, перенос репозиториев из GitHub и подключение CI через Gitea Actions. А затем проверяю бэкап делом - восстанавливаю из внешней копии. С командами, ошибками и оговорками по безопасности - для личных проектов и небольших команд.

Читать далее

Как я скормил stealth/ox‑alpha 60 млн токенов, или история о том, как «навайбкодилось» 127 нод в n8n

пт, 09/04/2026 - 22:21

В финале прошлой статьи я обещал разбор контура генерации ответов с гибридным извлечением данных (LLM‑tools + regex). Но пока немного переиграем планы и переключимся в другую тему — причина практический инженерный эксперимент. Постараюсь вкратце и по существу.:‑)

Читать далее

Почему фирменный стиль ломается внутри интерфейса

пт, 09/04/2026 - 22:12

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

Читать далее

Rust: Макетирование форм для Iced 14

пт, 09/04/2026 - 21:46

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

Некоторое время назад у меня образовалось немного (вернее много) свободного времени, и я между моментами серфинга на известном сайте HH решил посмотреть в сторону освоения Rust. Кроме всего прочего мне очень интересует тема библиотек графических интерфейсов.

В Rust есть несколько подобных библиотек, я решил остановиться на Iced — текущая версия Iced 0.14. Прежде всего понадобилось понять принципы построения библиотеки и архитектурную философию паттерна ELM, которая реализована в библиотеке.

В процессе изучения родился описываемый ниже PET‑проект Iced Forms Pack. Проект представляет собой конструктор форм из базовых элементов Iced.

Читать далее

Компонентные токены за 15 минут вместо двух дней с помощью ИИ: пошаговый процесс и подводные камни

пт, 09/04/2026 - 21:40

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

Привет, Хабр! Меня зовут Екатерина, я продуктовый дизайнер и развиваю дизайн-систему Сова в экосистеме «Лукоморье».

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

Ниже весь процесс целиком: как мы выгружали компоненты из Pixso, что писали в markdown-файлах с правилами и шаблонами, и как потом проверяли, что нейросеть не насочиняла лишнего.

Читать далее

Как AI меняет фарму: опыт «АстраЗенека» в России и в мире

пт, 09/04/2026 - 21:16

Фарма - индустрия с долгими циклами, сложными процессами и высокой ценой ошибки. Это особенно видно на пути разработки препарата: от поиска перспективной молекулы и доклинических исследований до нескольких фаз клинических испытаний, регистрации и вывода на рынок. В среднем разработка одного препарата занимает 10-15 лет и стоит порядка 1-2 млрд долларов, а из кандидатов, дошедших до клинических исследований, девять из десяти не доходят до регистрации1.

Мы не будем писать текст в жанре «внедрили AI → стало лучше». Таких материалов на Хабре уже много, и ввиду распространённости и повального культа AI они могут не вызывать доверия. Нам интереснее показать, что меняется в самой логике работы фармы - на конкретных примерах.

Читать далее

Код как борьба. Кратчайшая история IT. 2. Джон фон Нейман

пт, 09/04/2026 - 21:00

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

Это третья статья цикла “Код как борьба: Кратчайшая история IT”. И после довольно тяжёлого прошлого выпуска про Тьюринга тон сегодня будет совсем другим - не личная трагедия, а история человека, который, кажется, физически не мог заниматься одной вещью за раз.

Погнали

Очередные извращения с DOOM: упаковали в sheet-контейнер и запустили внутри Sheeternetes в электронной таблице

пт, 09/04/2026 - 20:46

Есть проверенный закон вселенной: если у чего-то есть экран и хоть немного памяти, рано или поздно на этом запустят DOOM. Запускали на осциллографах, на тесте на беременность, на кофемашине и на тракторе. Мы в Sheet-Native Computing Foundation тоже решили побыть в этом уже достаточно запылившемся тренде и запустить DOOM в контейнере, упакованном в ячейки электронной таблицы. То есть образ контейнера с игрой физически лежит в ячейках, оттуда собирается обратно в Docker-образ, проверяется по sha256 и запускается.

В первой статье я рассказывал про Sheeternetes — оркестратор контейнеров, у которого весь control plane (Deployments, Nodes, Pods, Events) живёт внутри Google Таблицы или Excel, а на другом конце крутятся настоящие Docker-контейнеры. Там же мельком был упомянут наш формат образов — SICF (Sheet-Native Image Container Format). Эта статья как раз про него: как он устроен, как всё это воспроизвести у себя, как оно работает на bare metal (то есть в эксельке, а не гугл-таблице) без интернета и какие неожиданно интересные находки вылезли, когда мы начали пихать всё это дело в ячейки Google Sheets.

Спойлер: DOOM — настоящий (Chocolate Doom плюс свободный Freedoom, всё в Linux-контейнере, играется в браузере с клавиатуры).

Читать далее

[Перевод] 14 причин, почему робототехника — это сложно

пт, 09/04/2026 - 20:25

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

В среде разработчиков ИИ Сан‑Франциско широко распространено мнение о том, что к этой сфере скоро присоединятся и роботы. Параллельно с гонкой разработки ИИ широкого спектра применений идёт столь же агрессивная гонка разработки роботов широкого спектра применений — гуманоидных машин с физическим интеллектом. Искусственных работников, способных готовить пищу и убираться, быть грузчиками... и делать всё остальное, в том числе и производить себе подобных, приводя (по многим прогнозам) к экономическому росту, который носящему характеристику «взрывного».

Иными словами, распространено мнение, что ИИ в дата-центрах вскоре заместит весь интеллектуальный труд, а ИИ в человекоподобных телах скоро заменит весь физический труд. Однако здесь есть важная разница: мы уже видим прогресс в сфере интеллектуального труда, но физический ИИ пока в основном остаётся ограниченным испытательными полигонами и демонстрационными видео. Пока не существует робота, эквивалентного ChatGPT, которого бы могли приобрести мы с вами.

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

(Пока я ещё не видел практически ни одного видео с последних World Humanoid Robot Games. Они ценны тем, что на публичной платформе меньше возможностей для выборочного представления фактов. В паре просмотренных мной видео можно заметить впечатляющие возможности, но они не затрагивают многие сложности, которые я перечислил ниже... К тому же в этих видео есть множество громких провалов.)

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

(Стоит отметить, что некоторые задачи становятся проще, если использовать роботов на колёсах, а не строго гуманоидных. Колёсный робот может перевозить больший вес, поэтому сила, выносливость и мощность электроники для него не так критичны. Ниже для него и вероятность упасть. Однако такие роботы не могут взбираться по лестницам1, перешагивать через завалы или наклоняться, чтобы взять что‑то из шкафа.)

Читать далее

Vanilla Disintegrate — современные и эффектные анимации для веба

пт, 09/04/2026 - 20:16

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

Читать далее

23 урока для тех, кто отвечает за инфраструктуру: Linux, базы данных, CI/CD и безопасность

пт, 09/04/2026 - 20:15

В этом дайджесте делимся подборкой бесплатных уроков сентября для инженеров инфраструктуры, DevOps и специалистов смежных направлений. В подборке — практические разборы Linux-серверов, PostgreSQL 18, отказоустойчивых кластеров, CI/CD, eBPF, безопасности и применения ИИ в инженерных задачах.

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

Смотреть подборку

CMF: новый формат для создания специализированных LLM моделей

пт, 09/04/2026 - 20:07

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

Это первая подробная открытая публикация формата CMF, уже можно использовать в собственных проектах. Буду рад разработчикам, готовым расширять его возможности и проверять результаты на своих задачах. CMF GitHub

Читать далее

Как мы внедрили Knip в Angular-проект: от настройки до CI/CD

пт, 09/04/2026 - 20:07

Привет! Я Незар, фронтенд-разработчик в Т-Банке. Наш Angular-проект достаточно крупный, и со временем в нем накопился неиспользуемый код. Это замедляет разработку, усложняет рефакторинг и вводит в заблуждение новых членов команды. А ручная очистка такого «мертвого» кода требует огромных трудозатрат и быстро перестает быть эффективной.

Поэтому мы решили автоматизировать этот процесс с помощью Knip — статического анализатора для TypeScript. В статье я расскажу, как мы его настроили, интегрировали в pre‑commit и CI/CD и какие результаты получили.

Читать далее

Как виджет для интернет‑магазина чуть не спалил мой iPhone: Lottie vs видео‑спрайты на телефонах

пт, 09/04/2026 - 20:06

Казалось бы, что может пойти не так с легковесными векторными анимациями? Вектор в Lottie, JSON весит копейки. Но тестирование на реальном телефоне закончилось фиаско: через пару минут скролла чип раскалился до 42 °C, а интерфейс ушёл в троттлинг.

Оказалось, что покадровый пересчёт кривых Безье в JS на мобильных экранах быстро превращает телефон в печку.

В кейсе разбор того, как мы перешли на аппаратно декодируемые видео‑спрайты, почему IntersectionObserver втихую крутил видео под непрозрачными модалками и как в итоге удалось сбить температуру обратно до стабильных 30 °C.

Читать кейс

Лендинг выключили три года назад. Запись в DNS осталась, и указывает она теперь на чужой проект

пт, 09/04/2026 - 20:00

Маркетинг попросил вернуть старую промо-страницу - ту, что делали к акции три года назад. Открываю страницу по её адресу, чтобы посмотреть, что от неё осталось, и вижу чужой сайт. Домен наш, имя в адресной строке наше, замочек на месте, содержимое - не имеет к нам никакого отношения.

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

Читать далее

Сейчас на сайте

Сейчас на сайте пользователей и гостей.