Habr.com

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

Моды к компьютерным играм: творчество или нарушение

Mon, 07/06/2026 - 14:09

В 2016 году разработчик под псевдонимом DoctorM64 выпустил AM2R — фанатский ремейк Metroid II для Game Boy, над которым работал девять лет. Через сутки после релиза он получил официальное уведомление от Nintendo о нарушении авторских прав и был вынужден закрыть загрузку​. Nintendo направила более 500 аналогичных уведомлений о прекращении нарушений​. При этом другие крупные издатели — Bethesda, Valve, Paradox — не только терпят моды, но и создают для них инструменты.

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

Читать далее

Гарантия кончилась вчера, а сервер сгорел сегодня

Mon, 07/06/2026 - 14:06

Считаем, сколько компании теряют на просроченной поддержке, и при чём тут штрафы 152-ФЗ — от 3 до 15 млн ₽, а при повторе до 500 млн.

Читать далее

Low-code IT-экосистема для управления розничной сетью. Часть 1

Mon, 07/06/2026 - 14:05

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

Читать далее

Если я в чем‑то и опытнее всех, так это в активном поиске работы

Mon, 07/06/2026 - 14:05

В свое время я выбрал не самую востребованную специальность.

И когда я слышал, что другим пишут надоедливые рекрутеры, я удивлялся и не верил.

Сейчас, спустя годы, и ко мне рекрутеры иногда сами выходят на связь (ничего себе). Но тогда, в начале, работу я не выбирал, а выцарапывал. В то время я довольно быстро закрыл глаза на качество откликов и включил количество.

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

Читать далее

Modbus-датчик от подключения до Grafana без написания кода — только конфиги

Mon, 07/06/2026 - 14:05

Типичная история при работе с промышленными датчиками выглядит примерно так. Есть RS485- датчик, нашли документацию с картой регистров. Написали Python-скрипт, который раз в 10 секунд опрашивает Modbus, парсит регистры и пишет строчку в CSV. Через неделю скрипт падает — оказывается, что порт занят другим процессом, или systemd не поднял его после перезагрузки, или датчик не ответил три раза подряд и скрипт завис в ожидании. Чиним, причесываем, добавляем watchdog. Потом понимаем, что CSV — плохая идея и надо куда-то писать данные нормально. Этот путь знаком многим в промышленной инженерии, но есть и другой. 

Читать далее

Борис Чёрный: уроженец Одессы и создатель Claude Code

Mon, 07/06/2026 - 14:01

Бориса Чёрного эвакуировали в США совсем маленьким, примерно в четыре годика. В этом смысле он немного похож на Брина, которого увезли из Москвы в шестилетнем возрасте. Обе семьи бежали от нищеты, чтобы обеспечить детям надежду на светлое будущее в стране, где реально каждый талантливый паренёк может своим умом заработать миллион или миллиард долларов.

Читать далее

Голь на выдумку хитра

Mon, 07/06/2026 - 13:55

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

Читать далее

Готовы проверить свои знания в AI и ML? Попробуйте решить кроссворд и выиграть мерч Selectel

Mon, 07/06/2026 - 13:55

Привет, Хабр! На связи команда Selectel. Старожилы наверняка помнят ИT-кроссворд, который мы проводили в 2023 и 2024 годах. Тогда в течение нескольких дней вы отвечали на сотни вопросов и боролись за призы. Пришло время повторить онлайн-соревнование и провести третий сезон ИТ-кроссворда.

Все вопросы в этом году объединены одной темой — AI и ML. Но не переживайте, если не разбираетесь глубоко в этих направлениях: задания будут разной сложности, а каждая рубрика посвящена отдельной подтеме. В этот раз вас ждут более 100 вопросов о моделях ИИ, истории AI и ML, безопасности и железе для ML-инфраструктуры.

Под катом — краткие правила участия и вопросы первой рубрики. Знатоки, которые наберут за ответы наибольшее количество баллов, получат эксклюзивный мерч Selectel и бонусы на аренду серверов.

Читать далее

GigaChat 3.5 — меньше, быстрее, сильнее

Mon, 07/06/2026 - 13:48

Салют, Хабр!

Сегодня мы выкладываем в open source GigaChat 3.5 Ultra — нашу новую 432B-модель. В этом релизе мы впервые для нашей линейки масштабировали собственную гибридную архитектуру на сотни миллиардов параметров, ускорили инференс и усилили модель в коде, агентных сценариях и сложных областях.

GigaChat 3.5 Ultra компактнее прошлого флагмана: 432 млрд параметров вместо 700 млрд у GigaChat 3.1 Ultra. Но это не компромисс «меньше, зато дешевле»: за счёт новых данных, обновлённого рецепта обучения и архитектурных изменений модель стала сильнее, а также эффективнее по памяти и скорости генерации.

Интересно? Добро пожаловать под кат.

Читать далее

Как я делал компактную библиотеку для создания приложений с графическим интерфейсом на языке C++. Часть 3

Mon, 07/06/2026 - 13:46

Это третья статья из цикла статей о создании компактной кросс‑платформенной библиотеки для разработки приложений с графическим интерфейсом на языке C++ — Frenchie. Для тех, кто привык изучать исходный код самостоятельно, репозиторий с исходным кодом библиотеки можно найти по ссылке. В данном материале я продолжу рассказывать про ту часть библиотеки, которая управляет состоянием контекстного окна и отслеживает связанные с ним события.

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

Читать далее

Бесплатные нейросети: ТОП-23 лучшие ИИ онлайн для генерации фото, текста из России в 2026 году

Mon, 07/06/2026 - 13:46

К середине 2026 года большие языковые модели и генеративные алгоритмы окончательно перешли из категории технологических развлечений в статус незаменимых производственных инструментов. На этом фоне «бесплатно» стало самым запутанным, а порой и манипулятивным словом на ИТ-рынке. Практически каждый веб-сервис декларирует свободный free-доступ, однако при ближайшем рассмотрении он оказывается жестким freemium-пакетом с урезанными суточными лимитами, многочасовыми очередями на рендеринг и водяными знаками. Для отечественных специалистов ситуация дополнительно осложняется постоянными geo-блокировками со стороны зарубежных ИТ-гигантов, необходимостью искать рабочие прокси-соединения и выпускать международные банковские карты.

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

Читать далее

Точно ли здесь нужен `any`? 13 сценариев из TypeScript-код-ревью — от `unknown` до границы приложения

Mon, 07/06/2026 - 13:44

Красная волнистая линия под строкой раздражает, и самый быстрый способ её убрать — дописать any, as или !. Компилятор замолкает, сборка зеленеет, PR уходит дальше. Вот только ошибка никуда не делась: она переехала из редактора в рантайм, поближе к пользователю.

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

Поэтому на code review я задаю не привычное «как затипизировать, чтобы TypeScript замолчал», а обратный вопрос:

Что именно я здесь отключаю — и правда ли без этого нельзя?

Веду frontend-команду, много времени провожу в чужих диффах, и про any, as и ! у нас постепенно сложился небольшой свод договорённостей для review. Из него и выросла эта статья: 13 сценариев, которые складываются в один короткий фильтр. Для каждого есть пара «плохо → хорошо» и рабочий пример на TypeScript 6 — всё можно потрогать в playground (он написан на React, но сами приёмы относятся к TypeScript в целом). Разберём any и unknown, сужение и type guards, satisfies, as const, оператор ! и валидацию данных на границе.

Главная мысль:

Типы — это проверяемые обещания о данных. any, а также необоснованные as T и !, позволяют компилятору принять такое обещание без доказательства. Если тип неизвестен — это unknown и сужение; если известен, но невиден компилятору — это guard, валидация или контролируемый инвариант, а не слепое утверждение.

Читать далее

От WordPress-сайта до $220 000 в месяц: как два друга сделали сервис для музыкантов и заработали $1,8 млн

Mon, 07/06/2026 - 13:44

Когда говорят про SaaS, чаще всего представляют продукты для бизнеса: системы учета, аналитики или автоматизации бизнеса.

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

Сегодняшняя история как раз про такой проект.

Михаил и его партнер Дмитрий запустили сервис музыкальной дистрибуции для независимых артистов. За несколько лет они прошли путь от WordPress-сайта, собранного практически без понимания того, как строятся SaaS-продукты, до компании с двумя инвестиционными раундами, командой из 30 человек и выручкой около $220 000 в месяц.

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

Читать далее

Зачем переводить сухой регламент в работающие настройки — харденинг Linux

Mon, 07/06/2026 - 13:36

Большинство документов по защите информации читаются как перевод с иностранного языка. Красивые слова, логичная структура, ни одного конкретного шага. Администратор получает такой регламент, ставит галочку в чек-листе и идёт дальше. Через полгода сервер оказывается в ботнете, потому что никто не объяснил, почему именно этот пункт важен именно в этой инфраструктуре.

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

В подсистеме nf_tables ядра Linux обнаружена уязвимость CVE-2026-23111, которую вызвал единственный лишний символ «!» в исходном коде. Логическая ошибка в функции nf_tables_addchain() создаёт условие use-after-free, позволяющее локальному непривилегированному пользователю выполнить код в контексте ядра и получить полные привилегии root

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

Читать далее

Токены, интеграции, люди и кривая обучения: размышления об экономике ИИ-агентов

Mon, 07/06/2026 - 13:35

Когда сегодня обсуждают экономику ИИ-агентов, разговор очень быстро скатывается к цене токенов. Сколько стоит миллион входных и выходных токенов? Какой будет темп расходования бюджета? Какую модель взять, чтобы не переплачивать? Если размещаемся в контуре заказчика, то сколько нужно GPU-ускорителей и какой будет их утилизация?

Все эти вопросы правильные. Но если мы говорим про корпоративный клиентский сервис — ответов на эти вопросы критически недостаточно.

Читать далее

Общая информация о принципе действия Joomla 6. Жизненный цикл Приложений Joomla

Mon, 07/06/2026 - 13:28

Как работает ядро Joomla 6 на уровне Приложения (Application)? Сколько видов Приложений на самом деле есть в Joomla и в чём между ними разница? Какой жизненный цикл каждого Приложения Joomla, включая роутинг, диспетчеризацию и события плагинов? На эти и другие вопросы попытается дать ответ эта статья, опирающаяся на кодовую базу Joomla 6.1.0. Также в статье хронология вызова триггеров плагинов в разных сценариях.

Как создавать рекламные креативы, которые конвертят: разберём на примерах

Mon, 07/06/2026 - 13:25

Почему одни рекламные креативы собирают заявки, а другие — только лайки? Дело далеко не всегда в дизайне.

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

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

Читать далее

Как нейроответ Яндекса выбирает источники: прогнал 60 запросов через Search API и посчитал, что как

Mon, 07/06/2026 - 13:16

Наш любимый доходяга Яндекс частенько показывает вверху выдачи готовый ответ и ссылается в нём на три‑четыре сайта. При этом по такому же запросу в обычной выдаче сотни, а то и тысячи страниц. Позвольте спросить, по какому такому принципу нейроответ отбирает из этих сотен именно те самые избранные, которые собирают весь куш? Я решил проверить свои (бестолковые) гипотезы на реальных данных.

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

Сразу про масштаб. Это одна ниша и всего 60 обращений, так что на вселенскую истину я не претендую, хотя очень хотелось бы. Но даже на таком объёме картинка получилась на удивление устойчивой, пусть и не такой, как мнение Греты Тунберг обо всём на свете.

Читать далее

От REST к MCP: как LLM меняют принципы проектирования API и архитектуры систем. Часть 2

Mon, 07/06/2026 - 13:16

Начнем с самых основ.

История API берет начало в 1945-1951 году, когда появляются первые библиотеки подпрограмм и модульный подход к разработке. В это время растет количество программного кода и появл

Читать далее

6 полезных фишек FluxCD. Выжимаем все соки из GitOps

Mon, 07/06/2026 - 13:00

Если вы применяете в своей инфраструктуре GitOps-подход, то вам точно знакомы такие решения по автоматизации доставки для Kubernetes, как FluxCD и ArgoCD. Это популярные инструменты, которые позволяют синхронизировать наполнение отслеживаемого Git-репозитория и отобразить его в кластере Kubernetes.

Сегодня воздержимся от их сравнения и сконцентрируемся на разговоре о том, какие удобства при работе может предоставить FluxCD.

Читать далее

Who's online

There are currently 0 users and 1 guest online.