Всем привет, это Тимур. Сейчас в YADRO я разрабатываю сетевую операционную систему для коммутаторов KORNFELD. В ходе этого проекта летом я получил сложную задачу: реализовать установку опции PROTO_DOWN для Ethernet-интерфейсов в ядре Linux. «Из коробки» ядро поддерживает эту опцию только для vxlan и macvlan-интерфейсов, а для Ethernet поддержка определяется драйвером сетевого устройства.
В статье я подробно расскажу о той части задачи, что касается непосредственно ядра Linux. На реализацию требования я потратил много сил, времени и хочу, чтобы мой опыт остался в сообществе. Постараюсь максимально подробно объяснить каждый шаг, чтобы вы смогли построить собственный процесс разработки на этой основе, даже если никогда не занимались разработкой для ядра. Статья будет полезна не только программистам, но и любителям Linux, так как в большей степени она посвящена тонкостям работы с этой ОС, а не программированию.
Читать далееМаркетологи говорят нам: купи увлажнитель, купи очиститель, купи ионизатор. Но никто не говорит про главное — углекислый газ.
Ты можешь сидеть в кристально чистой комнате с идеальной влажностью, но если CO2 там зашкаливает за 1500 ppm — твой мозг превращается в хлебушек. Ты устаешь, делаешь баги и хочешь спать.
Готовые мониторы стоят от 5 до 15 тысяч рублей. Внутри — датчик за тысячу и три светодиода.
Я решил, что переплачивать за пластиковый корпус не буду. Берем паяльник (или просто провода), ESP32 и делаем инструмент, который покажет правду.
Читать далееСегодня мы построим масштабируемую, отказоустойчивую систему, которая будет расти вместе с вашей инфраструктурой и не сломается в самый неподходящий момент.
Вместо 3 часов дебага падающего Prometheus вы смотрите дашборд, который показывает 99.9% uptime вашего мониторинга.
Это реальность с правильно настроенным стеком на основе VictoriaMetrics.
Читать далееКто-то может спросить: зачем нужен свой почтовый сервер на самохостинге? Ведь корпорации любезно предоставляют бесплатные почтовые ящики. Зачем собственный VPS? На это есть несколько причин.
Во-первых, бесплатный сыр только в мышеловке.
Во-вторых, на своём сервере можно развернуть инфраструктуру для уникальных и очень полезных сервисов, которые никогда не разрешит корпорация. Например:
анонимные почтовые алиасы, с которых почта форвардится на ваш адрес, так что для каждого сайты вы генерируете уникальный email, не засвечивая основной;
почтовые рассылки для тысяч читателей, в том числе с платной подпиской.
И это только начало.
Читать далееЧто есть реальность? То, что мы можем увидеть? Но, одев очки виртуальной реальности, мы тоже видим множество вещей, что не есть реальностью. Фантазии на тему того, что окружающий нас мир является всего лишь симуляцией циркулируют в научной фантастике уже очень давно. Однако с выходом фильма «Матрица» поклонников данной гипотезы стало в разы больше. Конечно, нам бы сильно хотелось верить в то, что все ужасы окружающего мира, часто являющиеся творениями нас самих, являются не более чем симуляцией, из которой можно вырваться на свободу. Однако, такой эскапизм полностью противоречит законам природа, в частности физики. Ученые из Университета Британской Колумбии (Ванкувер, Канада) провели исследование, в котором сформировали доказательства того, что наша Вселенная вполне реальна. Как именно ученым это удалось, мы узнаем из их доклада.
Читать далееОдна из базовых функций систем машинного зрения состоит в классификации объектов. Для решения этой задачи традиционно применяются методы обучения с учителем (SL). Эти методы обеспечивают высокую точность, но при этом размер нейросетевой модели увеличивается с увеличением количества классов. Такая особенность ограничивает применимость SL в тех случаях, когда число классов слишком велико или заранее неизвестно.
Эксперт отдела перспективных исследований компании «Криптонит» Никита Габдуллин предложил новую методологию, позволяющую добиться одного и того же размера нейросетевой модели независимо от числа классов. Это достигается за счёт использования предопределённых векторных систем в качестве целевой конфигурации скрытого пространства (Latent Space Configuration, LSC) во время обучения.
С проблемой раздувания классов сталкиваются во многих областях — от ритейла до научных исследований. Мы рассмотрим её на задаче распознавания лиц, где каждый человек (его ID) считается отдельным классом.
Существующий подход (SL) требует, чтобы размер последнего классификационного слоя был пропорционален количеству этих ID.
Когда число идентифицируемых лиц исчисляется миллионами, параметры этого слоя становятся просто астрономическими, а модель — непрактичной из-за непомерных требований к ресурсам (в частности — к видеопамяти). Это становится существенным барьером на пути к масштабированию.
В качестве решения этой проблемы эксперт «Криптонита» предложил радикально новый метод — LSC, который устраняет прямую зависимость между размером модели и числом классов. Вместо того, чтобы заставлять сеть запоминать каждый класс во всё увеличивающемся классификационном слое, LSC учит её проецировать входные данные — например, изображения лиц — в заранее заданную, фиксированную систему векторов в абстрактном скрытом пространстве.
Читать далееЭтот гайд поможет быстро и без проблем развернуть Proxmox VE 9. Разбираем все шаги: от первого входа и настройки сети до запуска VM, LXC и автоматических бэкапов. Четкие инструкции, практические советы и решения частых проблем.
Читать далееСуществует ряд ошибок, которые подрывают доверие к продукту. Одна из таких — потеря пользовательских данных. Мне пришлось столкнуться с этим лично, когда мой отзыв пропал при попытке публикации. В этой заметке — разбор UX-проблем и то, как мой фидбек привёл к конкретным изменениям в алгоритмах 2GIS.
Читать далееВидео стало неотъемлемой частью нашей жизни: мы смотрим его на смартфонах, ноутбуках и всё чаще — на телевизорах. Несмотря на то, что видеосервисы традиционно ориентировались на мобильные устройства, за длинным контентом пользователи идут именно на большие экраны, и это подтверждается ростом времени просмотра. Сегодня среднее дневное время смотрения VK Видео на Smart TV достигает 216 минут.
И тут начинается самое интересное: телевизоры — это особый мир со своими капризами и законами. Официальные спецификации обещают поддержку HLS, DASH, 4K, 60 FPS. На практике поддержка функций зависит не столько от новизны модели, сколько от того, как это реализовано у конкретного производителя. В одних устройствах всё работает корректно, в других — частично или вовсе не запускается. Новая модель при этом не всегда гарантирует лучшее воспроизведение видео.
Меня зовут Игорь Горяйнов, я программист в команде веб-технологий Единой видеоплатформы VK. Ниже расскажу, как команда прошла путь от нативных плееров к собственному веб-решению для ТВ, какие задачи пришлось решать и что это дало пользователям.
Читать далееКогда на RDP или VPN одновременно приходит несколько тысяч запросов авторизации, 2FA перестает быть просто удобным способом безопасного входа. Это становится чисто инженерной задачей: как выдержать нагрузку, не потерять запросы на авторизацию и не превратить безопасность в точку отказа.
Мы в МУЛЬТИФАКТОР несколько лет решаем именно этот вопрос — строим систему двухфакторной аутентификации, которая работает в больших и маленьких корпоративных сетях, поддерживает все основные протоколы и при этом не зависит от зарубежных сервисов. В этой статье расскажем о том, как устроена система MULTIFACTOR: архитектура, взаимодействие компонентов и инженерные решения, которые позволяют системе быть стабильной при любой нагрузке.
Читать далееПривет, Хабр! Это Сергей Перевозчиков, основатель агентства контекстной рекламы «КонтекстЛаб». В этой статье расскажу историю производителя сэндвич-панелей, который ежемесячно вкладывал в контекстную рекламу около 7 миллионов рублей, но получал лишь порядка 50 обращений. Рост бюджета не приводил к увеличению продаж и ситуация казалась тупиковой.
Читать далееЕсли в вашей команде больше семи человек, то вы наверняка сталкивались с тем, что во время ретро часть участников «отваливается»: кто-то молчит, а кто-то участвует формально. Однако чтобы встреча прошла успешно и стала источником задач для улучшений, это должен быть разговор всей команды, а не простая расклейка стикеров. А что если добавить в этот процесс геймификацию?
Меня зовут Лея, я менеджер проектов в Lamoda. Я решила сделать ретро полезным и интересным для команды, вдохновившись примером одного из хабровчан и популярными играми. Опишу процесс на примерах с Pac-Man и Тетрисом, полученный результат и оставлю для вас рекомендации для применения в своей команде.
Читать далееПривет, Хаброжители!
Хотите научиться писать в Unity понятный и простой в сопровождении код для игр? Тогда вы пришли по адресу! Изучение популярных паттернов проектирования Unity позволит использовать весь их потенциал при создании захватывающих проек-тов. Изучая практические примеры, вы освоите такие порождающие паттерны, как Прототип, помогающий эффективно создавать врагов, и поведенческие паттерны, например Наблюдатель, для реализации реактивной игровой механики. По мере чтения вы также научитесь замечать негативные последствия плохих архитектурных решений и справляться с ними с помощью простых, но эффективных методов.
Когда вы прочтете эту книгу, ваши приемы разработки игр в Unity изменятся. Вы не только станете более опытным разработчиком, но и научитесь использовать в работе передовые паттерны проектирования.
Привет, Хабр! Меня зовут Юля Анпилогова, я менеджер команды индивидуальных интеграций CDEK. Мы стали первыми, кто не только запустил интеграцию с Wildberries по схеме DBS (delivery by seller — доставка силами продавца), но и создал единую точку подключения к маркетплейсам WB и Ozon. Этот опыт оказался похож на квест. Курьеры, не привыкшие спрашивать код, лимиты запросов API Wildberries и покупательница Елена, заказавшая тестовый ежедневник — всё это оказалось его частью. Сегодня в статье расскажу, как мы прошли этот путь.
Читать далееДавайте поставим точку: я пишу тексты с ИИ.
Как это выглядит?
Во-первых, я пишу черновик текста. Руками и головой, как я писал сотни текстов до этого.
Например, как я написал свою первую тетрадку в 1 классе про "Удивительные приключения суперниндзей", которую учитель потом читал всему классу на уроке труда. Моя первая гордость. Потом таких тетрадок было еще штук пятнадцать. Одноклассники просили продолжение.
Читать далееГотовьтесь к обрушению: как спроектировать приложение, чтобы «черная пятница» не превратилась в «черного лебедя».
Какие инструменты спасут от крушения в момент пика.
что спасетВсе началось с того, что я хотел включить свет в туалете, а он включился через три секунды.
У меня стоял шлюз Xiaomi, датчик движения Aqara и какая-то ноунейм релешка. Схема работала так: датчик видит меня -> сигнал летит в Китай на сервер Xiaomi -> там скрипт думает -> сигнал летит обратно ко мне в квартиру -> свет включается.
В тот момент я понял две вещи.
Первая: я не хочу, чтобы товарищ майор из Пекина знал, как часто я хожу в туалет.
Вторая: мой дом не должен превращаться в тыкву, когда провайдер проводит плановые работы.
Ниже рассказ о том, как я выкинул все проприетарные шлюзы, купил один свисток и поднял Home Assistant.
Читать далееВсе мы ждем выставку CES 2026, на которой покажут много нового из мира технологий. Но Samsung решила удивить мир заранее и показала два революционных накопителя. Первым стал модульный SSD для автомобилей Detachable AutoSSD (AM9C1 E1A), а вторым компактный монстр производительности PM9E1 M.2 22x42. Если коротко — теперь SSD можно собирать как конструктор, а размеры накопителей продолжают снижаться, как будто на улице похолодало, ну и сами понимаете, что произошло.
Читать далееКартинка: freepik.com
Что первым приходит в голову, когда кто-то говорит «3D-печать»? Ок, у всех разное :-).
Но те, кто в теме и сами занимались или занимаются ею, знают, что одной из основных проблем любительской печати является прочность готовых изделий.
С этим мне самому тоже приходится сталкиваться постоянно, и я решил разобраться, есть ли способы улучшить этот показатель и что в мире существует по этой теме (из наиболее интересного).
Читать далееРанее мы выяснили, что монадные возможности присущи эндофункторам, основанных на определённых ковариантных обобщённых типах. Обобщённые же типы соответствуют алгебраическим выражениям, собранным из сумм, произведений и экспоненциалов типов.
В этой части обзора мы увидим, почему конструкторы типов связаны с алгебраическими операциями, и как сама эта связь порождает монады и комонады.
Читать далее