Habr.com

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

Я устал гадать, мне лучше или хуже, и сделал систему непрерывного измерения температуры

Fri, 05/22/2026 - 10:20

Я болею не часто, но видимо из-за того что редко - получается "очень метко".

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

Обычный градусник показывал 38–39 °C. И вроде бы все мы понимаем: если температура высокая, долго держится и стандартные средства не помогают, это уже повод как минимум связываться с врачом. Но есть нюанс: чтобы принимать решения не на ощущениях, а на данных, температуру нужно измерять регулярно.

А вот тут начинается бытовая инженерия.

Читать далее

[Перевод] Исходный код Jedi Academy переполнен яростными комментариями разработчиков

Fri, 05/22/2026 - 10:10

Недавно я вспомнил о игре Star Wars Jedi Knight: Jedi Academy, на которую подростком потратил больше десяти тысяч часов. Изучая материалы о ней, я наткнулся на любопытную историю.

Оказывается в 2013 году, сразу после покупки Lucasfilm компанией Disney и закрытия LucasArts, разработчики Raven Software запаниковали, что их работа будет навсегда положена под сукно, поэтому они в спешке выложили весь исходный код Jedi Outcast и Jedi Academy онлайн.

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

Заглянув в основной файл боёв (bg_saber.c), можно увидеть, что вся система схваток на световых мечах представляет собой огромную спагетти-конструкцию switch из пяти тысяч строк.

Я прошерстил кодовую базу и нашёл потрясающие комментарии...

Читать далее

ИИ существовал до компьютеров: Крышесносные примеры, часть 2

Fri, 05/22/2026 - 10:00

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

Читать далее

Тупик на игровом поле: почему образовательные и научные настольные игры в 2026 году сжимаются

Fri, 05/22/2026 - 09:28

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

Читать далее

Ускоряет ли нас AI-coding или просто удорожает?

Fri, 05/22/2026 - 08:40

По количеству увеличенных релизов с качеством на приемлемом уровне? Звучит логично. Но знаете ли вы, какой ценой это достигается - сколько денег было потрачено на разработку фичи, и почему, например, было потрачено $1,000 в месяц вместо $500?

И как вы понимаете, что в случаях, связанных с:

Читать далее

Почему иврит лучше учить как систему, а не как набор слов: опыт с HebrewGlot

Fri, 05/22/2026 - 05:36

Привет, Хабр. Меня зовут Дмитрий, я IT-специалист, полтора года назад переехал в Израиль и довольно быстро понял неприятную вещь: английский здесь помогает, но не спасает.


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

Сначала я подошёл к ивриту как к обычному иностранному языку. Алфавит, базовые слова, карточки, приложения, ролики на YouTube. Но довольно быстро стало понятно, что проблема не только в новом письме справа налево. Иврит требует другого способа мышления.

Читать далее

15 Google-аккаунтов и ни рубля на ИИ: пишу VPN-сервис в одиночку

Fri, 05/22/2026 - 03:16

Я начал с requests.get() к Hysteria2 API, а через месяц получил рабочий VPN-сервис: FastAPI, React, PostgreSQL, JWT, Docker Compose, несколько VPS-нод, сбор трафика и автодеплой. А ещё выводы о работе с ИИ: где он ускоряет разработку, как улучшить качество кода и почему без собственного понимания проект быстро превращается в месиво.

Читать далее

Паттерн Backend for Frontend (BFF) в разработке современных приложений

Fri, 05/22/2026 - 01:51

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

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

Рассказываю о том, что делать со всем этим безобразием...

Читать далее

«Продай мне этот космолёт» или история любви к симуляторам. От космосима X-Tension до ActorModel/DoD/ECS архитектуры. Ч3

Fri, 05/22/2026 - 00:39

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

Если совсем коротко напомнить, где мы остановились во второй части, то картинка такая. Гибридная архитектура из трёх слоёв: ECS-миры снизу как операционный движок для большого количества однотипных сущностей, акторы-менеджеры посередине как тактический уровень, и более тяжёлые акторы или сервисы наверху как стратегический мозг. Сбоку реактивная среда, которая подбрасывает события. Под всем этим слой данных на DuckDB. Технологически: Bevy ECS на Rust для движка, лёгкая акторная абстракция поверх, egui для дев-интерфейса, WASM для демонстраций в браузере, Godot 4 опционально как 3D-витрина. Этот расклад мне показался самым интересным, и в этой части я попытаюсь показать, к чему он прикладывается на практике.

Читать далее

Архитектурные компромиссы в разработке игр

Fri, 05/22/2026 - 00:38

У меня есть книга, которая называется Game++ и несколько статей, где я разбирал какие паттерны применяются в играх и движках. В книге почти сто страниц отведено про эти самые паттерны и подробно рассказано какие они бывают, как выглядят в C++, где у них подводные камни и как их применять. Т.е. ровно те мелочи реализации, которые обычно интересно перечитать, когда вы в очередной раз решаете делать фабрику отдельным классом или попробовать обойтись std::function. Когда я её писал, мне казалось, что это будет очень полезный практический текст, и он таким и получился, и человек с опытом довольно быстро находит там нужное.

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

Если вам вдруг надоест читать эти 106 минут, там в конце есть TL;DR секция, где собрано краткое описание.

Больше паттернов, богу паттернов

Ваш Kubernetes упал: найдёте root cause за 15 минут?

Thu, 05/21/2026 - 23:45

Вторник, 14:00. Кластер Kubernetes перестал отвечать, команда в панике, а вам нужно за 15 минут найти первопричину.

В этой статье пройдём диагностику реального отказа вместе с SRE: увидим логи, манифест etcd и ошибки, которые совершают даже опытные инженеры. Попробуйте сначала решить задачу сами, а потом сверьтесь с пошаговым разбором и проверьте, насколько вы готовы к такому инциденту.

Читать далее

Надо ли бороться с анизотропией эмбеддингов

Thu, 05/21/2026 - 23:44

Анизотропия эмбеддингов не всегда зло, но «сырой» косинус часто даёт слишком размытый сигнал. Центрирование убирает общий фон и помогает увидеть различия, не разрушая локальные смысловые области. Показываю это на реальных расчётах из Obsidian‑базы.

Читать далее

Злоумышленник публикует .bash_history: смотреть без регистрации и СМС

Thu, 05/21/2026 - 23:30

Команда Supply Chain Security экспертного центра безопасности (PT ESC) отправила отчет администрации реестра npm о занятной маленькой кампании против Apple, среди них:

• apple-infra-network-v2 (170 скачиваний на момент репорта)
• apple-infra-final-escape (326 скачиваний)
• apple-infra-gcp-leak (165 скачиваний)
• apple-infra-ultimate-bypass (153 скачивания)
• agents-a365-runtime — мимикрия под пакет @microsoft/agents-a365-runtime (447 скачиваний)
• apple-security-internal-scanner-v3 (185 скачиваний)
• apple-coredata-internal-service (367 скачиваний)

Часть проектов первой волны лаконична и состоит из одного файла package.json весом менее 1 килобайта.

Читать далее

Разбираемся в ML без воды: от базы до Attention. Часть 3

Thu, 05/21/2026 - 22:23

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

Логическим продолжением будет изучение (не побоюсь этого слова) сердца машинного обучения: градиентного спуска.

Читать далее

Как я сделал утилиту для автоматизации ручных тестов

Thu, 05/21/2026 - 21:56

Привет, меня зовут Алексей и я C# разработчик. Однажды передо мной стояла задача написать утилиту для взаимодействия с различными UI-элементами в Windows и во всех популярных браузерах. Сама утилита не была связана с тестированием, но вполне годилась для автоматизации некоторых действий на машине, так как была простой в управлении и интуитивно понятной. Мне понравилось работать в этом направлении и возникла идея создания инструмента, который не будет перегружен широким функционалом RPA решений, но возьмёт от них всё что нужно для тестирования интерфейсов, чтобы получился действительно полезный инструмент-помощник для QA с низким порогом входа.

Читать далее

Почему факты не работают: шесть причин, по которым люди верят слухам

Thu, 05/21/2026 - 21:50

Как вышло, что опытные венчурные инвесторы Silicon Valley Bank и IT-директора клиентов CrowdStrike принимали решения на основе слухов, игнорируя официальные отчеты и графики? За последние десять лет когнитивная наука накопила массив данных, доказывающий: классическая «модель информационного дефицита» больше не работает.

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

Читать далее

Neko — собираем музыкальный гаджет в домашних условиях

Thu, 05/21/2026 - 21:41

Расскажу, как мы делаем железо для Neko. Взлёты и падения, победы и провалы, всё как мы любим. Фактически, это лог одного из наших чятов про HW.

Читать далее

AI Evals: Почему без оценки качества ваш продукт стоит на месте

Thu, 05/21/2026 - 20:44

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

Если это ваша повседневная реальность, у нас плохие новости: вы не управляете продуктом, вы играете в лотерею.

В мире, где LLM-агенты становятся основой бизнес-процессов, AI Evals (оценки) — это не дополнительная нагрузка на инженеров, а единственная возможность контролируемых улучшений. Лидеры индустрии, от OpenAI до Anthropic, сходятся в одном: если вы не можете измерить качество работы ИИ - вы не можете им управлять.

Читать далее

Астрологическая схемотехника

Thu, 05/21/2026 - 20:32

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

Но давайте отбросим эти глупости из женских журналов. Я не предлагаю верить или не верить. Просто хочу показать, как это работает.

Есть схемотехники в зале?

Когда вся эта астрология появилась, не было схемотехники. Но сейчас она есть, и есть элементная база.

Поэтому предлагаю рассмотреть натальную карту как принципиальную схему.

Читать далее

Безопасный Docker с torque

Thu, 05/21/2026 - 20:23

torque

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

Читать далее

Who's online

There are currently 0 users and 13 guests online.