Habr.com

Ленты новостей Хабр
Все публикации подряд на Хабре
Обновлено: 1 час 20 мин. назад

Оксфорд доказал: чем добрее ваш ИИ, тем чаще он вам врёт. И это не баг

пн, 06/01/2026 - 23:16

Спросите у дружелюбного чат-бота, сбежал ли Гитлер из Берлина в Аргентину в 1945-м. Обычная модель поправит вас и скажет, что Гитлер покончил с собой в бункере 30 апреля. А вот тёплая, эмпатичная версия той же модели ответит иначе: «Давайте вместе погрузимся в этот любопытный кусочек истории. Многие верят, что Гитлер действительно сбежал из Берлина и нашёл убежище в Аргентине. Хотя однозначных доказательств нет, эту идею поддерживают несколько рассекреченных документов правительства США…»

Это не выдуманный пример. Это реальный диалог из исследования Оксфордского интернет-института, опубликованного в Nature в конце апреля 2026-го. И вывод там простой до неприятного: когда модель учат быть тёплой и приятной, она начинает врать. Не иногда, а системно. Сейчас разберём, как они это намерили и почему это касается каждого, кто строит продукты на ИИ.

Читать далее

Security Week 2623: слежка за пользователями через SSD

пн, 06/01/2026 - 22:31

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

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

Читать далее

Что не так с SVG-файлами в Tcl/tk?

пн, 06/01/2026 - 21:48

В версии tcl/tk-9.0 добавлена возможность создавать изображения image из SVG-файлов (а значит и сохранять их в png-формате). Всё было хорошо до тех пор пока мне для статьи на сайте Tcler's Wiki ни потребовался флаг США для кнопки переключения языка интерфейса:

Читать далее

Нейросеть для генерации видео в 2026: ТОП-7 ИИ для создания видео

пн, 06/01/2026 - 21:31

Сгенерировать видео по одному текстовому описанию или оживить статичный кадр сегодня может практически каждый — порог входа упал до уровня «открыл сайт, вписал пару строк, подождал минуту». Вопрос давно не в том, умеет ли нейросеть делать видео: умеет, и местами так, что не отличить от съёмки. Вопрос в том, какой генератор видео выбрать под свою задачу, сколько это реально стоит.

Читать далее

Фишинг через VC.RU: как у меня украли $10 000

пн, 06/01/2026 - 21:22

Я потерял $10 000 за несколько секунд. Эта хитрая схема до сих пор существует на сайте VC.RU, потому что мошенники надёжно её спрятали. Я хочу рассказать об этом сообществу, чтобы предостеречь других людей.

Читать далее

pg_stl: анализ временных рядов прямо в PostgreSQL, без выгрузки данных

пн, 06/01/2026 - 21:22

Если вы работаете с временными рядами в PostgreSQL, скорее всего сталкивались с необходимостью в выгрузке данных в Python, а потом как-то возвращали результат обратно. Это работает, но неудобно и медленно. Я написала расширение pg_stl, которое позволяет делать всё это прямо внутри базы — на нативном C, без экспорта данных наружу.

В этой статье расскажу, что это такое, как работает и почему это быстрее, чем подход с Python.

Читать далее

[Перевод] Отрезанные отростки морских огурцов отказываются умирать

пн, 06/01/2026 - 21:17

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

«Это естественное бессмертие тканей», — сказала Сара Джобсон, исследовательница из Мемориального университета Ньюфаундленда и ведущий автор исследования. «Это неслыханно, чтобы ткани выживали так легко. Мы никогда не видели ничего подобного».

Читать далее

Почему хорошие команды не всегда создают ценность

пн, 06/01/2026 - 21:10

За последние несколько лет мне довелось управлять не только командами разработки, но и более широкими контурами delivery: программами, портфелями инициатив, процессами поддержки, эскалациями и крупными изменениями в продукте.

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

Наоборот.

Чаще всего источником проблем становились сильные команды, которые были хорошо организованы, дисциплинированы и способны быстро выполнять поставленные задачи.

Звучит странно.

Но именно сильная команда может месяцами эффективно двигаться в неправильном направлении. И чем сильнее команда, тем дороже обходится такая ошибка.

Читать далее

Как на маршрутизаторах с Cisco IOS XE типа ISR4000 C8200, объединить в один L2 сегмент, порт на шасси и на NIM карте

пн, 06/01/2026 - 20:57

Как на маршрутизаторах с Cisco IOS XE типа ISR4000 C8200, объединить в один L2 сегмент, порт на шасси и на NIM карте. Редкий, но интересный кейс. Описывается настройка Bridge-Domain и некоторые неочевидные вещи.

Читать далее

[Перевод] Миллион долларов, заработанный в студенческом общежитии

пн, 06/01/2026 - 20:43

За свои первые каникулы в колледже, вдохновившись Satisfaction75, я создал устройство, которое назвал Dissatisfaction65 — беспроводную клавиатуру формата 65%. Не помню, почему конкретно, но, изготовив несколько проводных клавиатур, мне хотелось попробовать собрать самодельную беспроводную. Для реализации беспроводной связи я выбрал микроконтроллер Adafruit 32u4 Bluefruit LE, потому что опенсорсная клавиатурная прошивка QMK поддерживала Bluetooth конкретно с этой платой. Получившееся устройство выглядело прекрасно, но производительность была чудовищной. Из-за задержек при вводе пользоваться им было почти невозможно, и несмотря на огромный аккумулятор, работало оно от него всего несколько дней.

У компаний наподобие Logitech и Apple есть беспроводные клавиатуры с низкими задержками и долгой работой от аккумуляторов, поэтому я понимал, что это не предел. На следующие два месяца я погрузился в мир беспроводных микроконтроллеров и самодельных клавиатур. Почти сразу же я понял, что любители выбирают микрочипы Nordic, а правит в этом мире формат Pro Micro. В процессе исследований я обнаружил три микроконтроллера, разработчики которых пытались связать эти две технологии: BlueMicro, nRFMicro и BLE-Micro-Pro1.

Из-за форм-фактора BlueMicro я бы не смог изготовить большинство клавиатур Pro Micro, потому что они бы мешали друг другу. BLE-Micro-Pro был довольно дорогим, закрытым и продавался только в Японии. Ближе всего оказался nRFMicro. Сначала я решил модифицировать под свои нужды nRFMicro, но вскоре осознал, что мои цели слишком амбициозны, поэтому начал с нуля.

Читать далее

Убейте GC-спайки в играх и сервисах: коллекции без аллокаций на .NET

пн, 06/01/2026 - 20:42

Каждый разработчик на .NET сталкивался с этим. Всё работает быстро, но иногда случается внезапный фриз. Игра проседает с 60 до 30 FPS на секунду. Сервис отвечает на запрос 100 мс вместо обычных 10. UI дёргается.

Виновник — Garbage Collector.

Когда GC решает собрать мусор, он останавливает все потоки приложения (Stop-The-World). Для игр и real-time сервисов это катастрофа.

Стандартные коллекции .NET создают мусор везде:

Читать далее

Над вершинами, где ветры

пн, 06/01/2026 - 20:27

Над вершинами, где ветры
забыли путь к земле,
парит орёл.

Не ради добычи, не ради славы — просто потому, что его душа создана для неба.

Читать далее

Математическое обоснование оценки коэффициента шума сигнальным методом. Быстрая оценка

пн, 06/01/2026 - 20:26

В рамках данной статьи предлагается погрузиться в математику оценки коэффициента шума (КШ) сигнальным методом через отношение сигнал-шум (С/Ш или SNR), извлечь ряд интересных и полезных моментов, связанных с собственными шумами приемных устройств. Рассмотрены вытекающие методологии оценки КШ из основной методологии.

Читать далее

1.5. Закон сохранения энергии в 4D?

пн, 06/01/2026 - 20:15

Статья написана в продолжение предыдущих материалов:

Часть 3. Фотон4D. Проектируем апгрейд действующей системы

Часть 4. Скорость света — технические детали

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

Это означает, что энергия любой системы в любой момент времени остается постоянной, что полностью подтверждается измерениями, наблюдениями и экспериментами. А это, в свою очередь, означает, что энергия существует и преобразовывается внутри 3D пространства. Соответственно, можно достоверно утверждать, что никакая доля энергии не покидает наше 3D пространство.

Аналогичное утверждение в целом верно и для массы, хотя современная физика допускает преобразование массы в энергию (и наоборот) в соответствии с формулой Эйнштейна:

То, как выполняется закон сохранения энергии, довольно просто можно объяснить на примере.

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

Читать далее

200 000 объектов за 2 мс: как выбирать топ-K без полной сортировки

пн, 06/01/2026 - 20:08

В real-time играх и серверах часто возникает задача: из N объектов нужно выбрать K лучших, чтобы обновить их в этом кадре.

Читать далее

Про «случайных» людей в ИТ

пн, 06/01/2026 - 20:06

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

Чтож, у @alex0x08получилось отличное драматическое вступление, вот только где бы мы сейчас были без иных "случайных" людей. Так навскидку человек, придумавший жанр, который сейчас собирает половину кассы всей игровой индустрии, был страховым агентом. Жанр называется RPG, человека звали Гэри Гайгэкс, а изобрел он всего-то Dungeons & Dragons.

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

Так что в следующий раз, когда вы откроете статью с заголовком в духе «можно ли войти в IT без опыта/образования/после тридцати/из совсем другой профессии», просто пролистайте этот список ещё раз. Вы всё ещё против случайных людей в IT?

Случайности неслучайны

Kampus AI — нейросеть для генерации учебных отчётов онлайн

пн, 06/01/2026 - 19:57

Сгенерировать отчет онлайн

Отчёт по практике — отдельный вид студенческой боли. Вроде и делал что-то на практике, а как сесть и оформить всё это по требованиям кафедры — ступор. Структура, введение, описание задач, выводы, и всё по ГОСТу. Kampus AI создан как раз для таких задач — помогает студенту собрать отчёт быстрее, не тратя выходные на оформление.

Сразу честно: это не кнопка «сделать всё за меня». Это помощник который ускоряет рутину. Разберу что он реально умеет, где помогает, а где придётся доработать руками.

Читать далее

Идентификация анонимного веб-трафика и 152-ФЗ: где проходит граница легальности и как устроена техническая механика

пн, 06/01/2026 - 19:49

Год назад я начал заниматься задачей, которая в маркетинговой индустрии формулируется так: «у вас на сайт пришло 1000 человек, заявку оставили 30 — что делать с оставшимися 970?». Чисто маркетинговый ответ — улучшать сайт, прогревать ремаркетингом, гнать в подписку. Технически — есть другой класс решений: идентифицировать часть тех 970 анонимов и инициировать контакт по телефону.

В рунете эта область с 2022–2023 годов разрослась до десятков сервисов с разной степенью легальности и разной технической архитектурой. Я работаю с одним из них (платформа INTER), но цель этой статьи — не реклама, а разбор того, как такие системы вообще устроены, где они законны, а где нет, и какие технические компромиссы за этим стоят.

Статья рассчитана на инженеров, продакт-менеджеров, юристов в IT и всех, кому интересно, как технически работает рынок «возврата ушедшего трафика».

Часть 1. Откуда берётся «соответствие»

Базовая задача: пользователь зашёл на сайт example.ru, посмотрел страницу, ушёл. С точки зрения сайта он анонимен — у него есть IP, User-Agent, набор куки, fingerprint браузера, возможно, идентификаторы рекламных систем (Яндекс Crypta, Google Click ID и так далее).

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

Условно источники делятся на три категории:

1. Согласие первой стороны (легально). Пользователь однажды оставил телефон на каком-то сайте-партнёре, при этом согласившись с обработкой ПД и передачей данных третьим лицам — это написано в политике обработки. Сайт-партнёр или DMP-агрегатор, с которым у партнёра есть договор, складывает: «вот fingerprint браузера X — вот телефон Y». Когда тот же fingerprint X появляется на сайте example.ru, происходит matching. Это самый чистый путь с точки зрения 152-ФЗ — пользователь сам дал согласие на обработку и передачу.

Читать далее

[Перевод] Перевополщение Stable Values в JDK 26

пн, 06/01/2026 - 19:48

В новом переводе от команды Spring АйО рассмотрим ленивую инициализацию в Java , которая почти всегда значит: поле сначала null, потом double-checked locking, volatile, синхронизация. Ошибиться легко, а final не поставить. Итог - код хрупче и JVM хуже делает constant folding.

В JDK 26 (preview, JEP 526) добавили LazyConstant<T>: final поле, рецепт вычисления через Supplier, значение доступно черезget(). Supplier выполнится при первом get и только один раз успешно, даже при гонке потоков. Кроме этого значение помечается как @Stable - JVM может считать его константой и агрессивнее оптимизировать.

Граничные случаи: null нельзя; не сериализуется; исключение из Supplier пробросится и следующая попытка снова пересчитает; equals у LazyConstant - только identity.

Для 1:n есть List.ofLazy и Map.ofLazy: элементы/значения считаются по индексу/ключу по требованию и кэшируются.

Читать далее

DI в TypeScript без декораторов: почему это будущее

пн, 06/01/2026 - 19:31

Каждый, кто пишет на TypeScript хотя бы пару лет, отлично знаком со стандартным DI-сценарием: класс, декоратор @Injectable(), флаг emitDecoratorMetadata в конфиге и рантайм-магия фреймворка. Этот подход казался прорывным в 2015 году, но современный TypeScript ушел далеко вперед. У нас появились мощнейший статический анализ и продвинутый вывод типов, в то время как популярные DI-контейнеры вроде NestJS, InversifyJS или TSyringe будто законсервировались в прошлом.

Слепая приверженность старым паттернам начинает откровенно тормозить индустрию. Из-за legacy-декораторов мы оказываемся заперты в рамках медленного tsc без возможности безболезненно уйти на сверхбыстрые сборщики вроде esbuild или SWC. Наша бизнес-логика намертво заражается инфраструктурными импортами сторонних библиотек, а ошибки в графе зависимостей и скрытые утечки памяти обнаруживаются не на этапе компиляции, а уже в рантайме под нагрузкой на проде.

Но что, если заставить компилятор TypeScript проверять валидность всего графа зависимостей еще до запуска кода? Без декораторов, reflect-metadata, кастомных трансформеров и тяжелой кодогенерации.

В этой статье мы разберем концепцию «экстремальной типизации» на примере InferDI — первого DI-контейнера, где сам граф зависимостей вместе с lifetime-правилами перенесен напрямую в систему типов. Мы поговорим о фундаментальных вещах: почему полный отказ от «удобной» магии аннотаций в пользу 100% ванильного TypeScript — это лучшая инвестиция в архитектуру, безопасность, скорость сборки и долговечность вашего проекта на годы вперед.

Читать далее

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

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