Habr.com

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

«Фамипия». Венгерские домофоны в подъездах Питера

пт, 11/21/2025 - 13:05

Приветствую всех!
Уверен, многие видели на стенах старых домов эти штуки - довольно большие серебристые или цветные панели с кучей кнопок на них. Сейчас практически все они давно разбиты или выдраны, однако те, кто постарше, возможно, даже успели застать их рабочими. И нет, никаких фамилий там нет: называлась эта панель именно так.

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

Во время разговора кнопку держать нажатой

Marathon OS: экспериментальная мобильная ОС на Qt6 и Wayland с фокусом на производительность

пт, 11/21/2025 - 13:00

Разработчик Патрик Куинн недавно запустил проект Marathon OS. Это мобильная ОС на базе postmarketOS с полностью переработанным интерфейсом под Qt6, QML и собственным Wayland-композитором. Основная идея заключается в полном отказе от виртуальных кнопок в пользу жестового управления, вдохновленного BlackBerry 10, где все действия выполняются свайпами от краев экрана.

Сейчас система тестируется на базе OnePlus 6 и 6T, показывая стабильные 60 кадров в секунду, загрузку за 20–25 секунд и задержку ввода в пределах 10–15 миллисекунд. На устройствах со Snapdragon 845 приложения запускаются за 200–250 миллисекунд, что для чистого Linux выглядит весьма убедительно без каких-либо Android-подложек.

Читать далее

Осваиваем ML WAF: от текстовых правил к машинному обучению

пт, 11/21/2025 - 12:51

Всем привет, меня зовут Семён. Я пишу на С++ и работаю в группе Антиробота. Антиробот — это сервис, который на уровне L7 защищает нас от парсеров и DDoS-атак. Разрабатывать его начали более 10 лет назад — сначала он предназначался только для защиты Поиска, затем был внутренним инструментом, который в онлайн‑режиме анализирует запросы к сервисам Яндекса. Постепенно Антиробот вырос в настоящий highload. Сейчас это часть облачного сервиса Smart Web Security (SWS).

В этой статье я расскажу, как с нашим сервисом мы прошли путь от текстовых правил до машинного обучения. Вы узнаете, зачем вообще нужен Web Application Firewall (WAF) — межсетевой экран для веб-приложений — и разберётесь, как он устроен. А ещё — как работают рулсеты, почему у нас их целых три и какие существуют метрики для оценки качества и быстродействия сервиса.

Читать далее

Сколько воды в бочке?

пт, 11/21/2025 - 12:45

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

Читать далее

Cloud Native LVM: как автоматизировать поиск и разметку локальных дисков в Kubernetes

пт, 11/21/2025 - 12:41

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

Читать далее

Переезд с Nuxt 2 на Nuxt 3: почему для крупного интернет-магазина мы выбрали рерайт, а не миграцию

пт, 11/21/2025 - 12:36

Пять лет назад мы запустили интернет-магазин на Nuxt 2. За это время он превратился в классический монолит: вносить правки стало дорого, а сайт начал «задыхаться» под нагрузкой. Когда вышел Nuxt 3, перед нами встал выбор: пытаться оживить проект через Nuxt Bridge или переписать всё с нуля.

Мы проанализировали код и поняли: плавная миграция для нас — это путь к созданию «зомби-проекта». Слишком много фундаментальных отличий: Options API против Composition API, Vuex против Pinia, смена логики роутинга и несовместимость ключевых библиотек.

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

Внутри кейса:
4 технических «фаталити», которые делают миграцию легаси-монолита невозможной.
Архитектура FSD + Nuxt 3: как мы подружили фронтенд с бэкендом на Symfony и навели порядок в зависимостях.
Паттерн «Фабрика»: как упростить сложную логику доставки в Composition API.
Бонус: почему благодаря правильному старту недавнее обновление с Nuxt 3 до Nuxt 4 заняло у нас минимум времени, в отличие от мучений с Nuxt 2.

Если вы всё еще поддерживаете проекты на второй версии и боитесь подступиться к обновлению — этот опыт для вас.

Читать далее

Как мы сократили время планирования спринтов с помощью AI

пт, 11/21/2025 - 12:25

Привет! Меня зовут Саша, я Product Manager в Cloud.ru. Расскажу, как наша команда немного трансформировала, ускорила и упростила процесс оценки задач в рамках методологии Scrum. Из задачи сэкономить несколько часов для команды получилось построить целостный процесс, который удалось внедрить в несколько продуктов. 

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

Что же мы сделали?

CI/CD и непрерывное тестирование (управление рисками в условиях постоянных изменений)

пт, 11/21/2025 - 12:19

Я уже писал, что всестороннее тестирование является критической необходимостью для обеспечения киберустойчивости. Сейчас хотел бы показать, как этот принцип применяется в условиях, когда ИТ-системы развиваются с беспрецедентной скоростью, а изменения вносятся постоянно. Возникает парадокс: чем быстрее мы внедряем новое, тем выше риск сбоев. Аналитики отмечают, что общее количество инцидентов в критически важных сервисах неуклонно растет. Как же управлять этим "хаосом изменений" и обеспечить стабильность 24/7?

Читать далее

Как не проспать дейли: Реализуем планировщик задач внутри Python-процесса

пт, 11/21/2025 - 12:13

В потоке кода легко пропустить дейли, забыть проверить бэкапы или закоммитить задачи перед уходом. Сторонние планировщики часто избыточны и потребляют лишние ресурсы, а самописные скрипты на while True: time.sleep() — это архитектурный тупик, блокирующий потоки и создающий временной дрейф.

В этом туториале напишем свой легковесный фоновый сервис на Python. Разберем, как отправлять нативные системные уведомления (Windows/Linux/macOS) через библиотеку Plyer, настроим гибкое расписание с помощью Schedule и научимся запускать скрипт в режиме демона без висящего окна терминала.

Читать далее

Как Python помог «разобрать» 10 000 сообщений из Telegram для суда: практическое руководство для юристов

пт, 11/21/2025 - 12:08

Представьте: в вашем деле — 10 000 сообщений в Telegram, и суд просит показать, кто, когда и что именно писал за конкретный период. Вручную это неделя рутинной работы, море скриншотов и высокий риск пропустить важное сообщение или перепутать даты. С помощью Python и библиотеки Telethon ту же задачу можно решить за несколько минут, при этом сразу заложив фундамент для доказательства целостности данных в суде.

В этой статье разберём:

почему суды принимают переписку из мессенджеров как доказательство;

как технически выгрузить чат из Telegram с помощью Telethon;

как отфильтровать данные, рассчитать хеш-суммы и оформить результат для дела;

какие юридические риски нужно учесть и как их минимизировать.

Читать далее

Почему ChatGPT не знает ваших внутренних данных и как это исправить: простое объяснение RAG

пт, 11/21/2025 - 12:07

Вы думаете, ChatGPT стал идеальным? Может «загуглить» любой факт, анализировать документы, даже писать код? Попробуйте спросить его про внутренние API вашей компании, корпоративные гайдлайны или правила код-ревью. Он молчит — и не зря. Ведь около 80 % рабочего времени программист тратит на поиск информации во внутренних системах.

Сегодня расскажу о технологии, которая решает эту проблему — Retrieval Augmented Generation (RAG).

Читать далее

Прямое измерение атомного тепла опровергает старую догму о перегреве

пт, 11/21/2025 - 12:05

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

Читать далее

Рецензия на книгу «Инжиниринг платформ: техническое и управленческое руководство»

пт, 11/21/2025 - 12:04

На календаре 2025 год, и термин platform engineering прочно вошел в лексикон всех инженеров и менеджеров, занимающихся вопросами ИТ-инфраструктуры предприятий — примерно так же, как когда-то «DevOps», а еще раньше «Agile». К слову, предыдущие тренды порой превращались в модный хайп, под которым каждая компания понимала свое видение процессов разработки и развертывания. Но платформенная инженерия сегодня — это не просто набор практик, а системный ответ на тот уровень сложности, к которому индустрию привели облака, микросервисы, CI/CD, SRE и бесконечный поток обновлений в экосистемах OSS (Open Source Software, мир open-source инструментов).

Читать далее

Врагу не сдается наш гордый варяг, или Как агенту изменений выжить и достичь целей в новой команде

пт, 11/21/2025 - 12:00

Привет, Хабр! Это Женя Руденко, Agile Cluster Lead в МТС Web Services. Когда в компании запускают Agile-трансформацию, чаще всего сталкиваются не с нехваткой инструментов или методик, а с сопротивлением людей — от тимлидов до C-level. Именно это и стало для меня первым вызовом при работе с командой KION: вместо работы «по учебнику» пришлось искать свой путь, балансируя между стратегией и ежедневными задачами, между конфликтами и доверием. 

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

Читать далее

Продуктовые метрики для аналитика данных: памятка для собеседований

пт, 11/21/2025 - 12:00

Бывало ли, что для решения бизнес-кейса на собеседовании вам не хватило знания какой-нибудь метрики из предметной области? Это частая ситуация — например, в маркетплейсах всюду говорят про GMV, а в маркетинговой аналитике не обойтись без LTV.

Привет, Хабр! Меня зовут Рафаэль Сайфутдинов, но обычно меня зовут просто Раф. Я работаю аналитиком ценообразования в Авито (а раньше — в Яндекс Лавке), преподаю машинное обучение в Центральном университете, окончил факультет компьютерных наук в НИУ ВШЭ и прошёл курс «Специалист по Data Science» в Яндекс Практикуме. Делюсь памяткой для аналитиков — сохраните, чтобы не провалить собеседование из-за незнания продуктовых метрик.

Читать далее

StructPadding

пт, 11/21/2025 - 11:59

Представляю свою библиотеку для обнуления байт выравнивания (padding) в unmanaged структурах.

Обнуление байт паддинга (padding) обеспечивает детерминированное состояние памяти, что критически важно для двоичного сравнения или вычисления хэша. И не менее важно при бинарной сериализации.

Читать далее

Превратили PVS-Studio в город

пт, 11/21/2025 - 11:53

Вы когда-нибудь хотели взглянуть на свой код под новым углом? Например, увидеть, как бы выглядела ваша кодовая база, будь она городом? Звучит как что-то невероятное. Давайте вместе заглянем в город PVS-Studio и просмотрим, какие тайны он в себе хранит :).

Читать далее

[Перевод] ДНК-спираль изменила наше представление о себе

пт, 11/21/2025 - 11:33

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

В нём участвовало много людей, в том числе Розалинд Франклин, мастер рентгеновской кристаллографии, и Фрэнсис Крик, физик, искавший секрет жизни. Теперь, с кончиной американского генетика Джеймса Уотсона в возрасте 97 лет, последний из этой группы учёных ушёл из жизни.

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

Читать далее

Go profiling lifecycle: от разработки до прода. Инструменты и практики

пт, 11/21/2025 - 11:20

Ваш Go-сервис жрёт память в проде, а на тестовом стенде всё идеально?

Разбираем пошагово: как находить и диагностировать утечки ресурсов в Go-приложениях.

Что внутри:

Теория: GC, планировщик, модель памяти - минимум для понимания проблемы

Практика: pprof профили всех типов (heap, goroutine, allocs, block)

Инструментарий: как читать дампы горутин и системную диагностику

Готовые скрипты для воспроизведения и анализа утечек

Runtime tracing для сложных случаев

Реальный пример из статьи:
Зависшие горутины в одном месте -> stw паузы выросли с 1ms до 50ms -> api деградировал.

Статья построена как практическое руководство с минимумом теории и максимумом применимых техник. Во второй части - конкретные примеры утечек с кодом, production-кейс и настройка мониторинга.

Для тех, кто хочет научиться находить утечки ДО того, как они попадут в prod.

Читать далее

Эффективные Large Language Models: от линейного attention к гибридным архитектурам, наши результаты и выводы

пт, 11/21/2025 - 11:00

Квадратичная сложность и линейно растущий KV cache в классическом механизме внимания, используемом в современных LLM, — серьёзная преграда для обработки экстремально длинных контекстов, особенно в условиях ограниченной видеопамяти на GPU. В этой статье мы рассмотрим различные варианты Linear Attention (линейного внимания) и техники дистилляции LLM в субквадратичные варианты механизма внимания. Мы также расскажем о наших экспериментах с GigaChat и поделимся примером получившейся гибридной модели с линейным вниманием, сделанной на основе Llama-8B.

Читать далее

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

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