Современный DNS — это не только соответствие доменов IP-адресам, но и целое распределенное хранилище различных метаданных (SVCB-, HTTPS-записи, всевозможные верификации и публичные ключи).
Сегодня расскажем, как проект стал одним из основных DNS-сервисов в мире. Статья написана на основе доклада технического директора AdGuard Андрея Мешкова и директора по инфраструктуре AdGuard Константина Замякина в рамках Профессиональной конференции разработчиков высоконагруженных систем Saint HighLoad++ (июнь-2025).
Читать далееВ этой статье мы познакомимся с Flet — революционным фреймворком, который позволяет делать именно это. Flet дает вам возможность создавать интерактивные GUI на чистом Python, а для отрисовки использует мощный движок Flutter. Результат — быстрые, красивые и нативные приложения для Windows, macOS, Linux и даже для веба, без необходимости писать ни строчки на Dart или JavaScript.
Читать далееКороче, вот что я поняла за годы работы: в крупных цифровых продуктах UX‑исследования — это уже не «было бы круто», а must‑have. Без них ты просто не выживешь в конкурентной среде. Но вот между тем, чтобы сказать «ой, исследования важны
По мере того как ваша молодость уходит в прошлое, вы можете начать бояться старения.
Но исследование, которое мы с моим коллегой недавно опубликовали в журнале Intelligence, показывают, что есть и очень веские причины для радости: для многих из нас общие психологические функции достигают своего пика в возрасте от 55 до 60 лет.
И это знание объясняет, почему люди в этом возрасте могут быть лучшими в решении сложных задач и лидерстве на рабочем месте.
Читать далееМногие разработчики привыкли везде ставить if-проверки, даже для условий, гарантированных кодом. Зачем проверять то, что не может нарушиться? Такие проверки создают шум в коде и мусор в релизе. Assert решает эту проблему: документирует допущения и исчезает из финальной сборки. В статье покажу все преимущества assert'ов и предостерегу от подводных камней их использования.
Читать далееПривет! Я Никита, инженер-инсталлятор в Selectel. Представьте ситуацию: вы нашли уязвимость и понимаете, что ее можно воспроизвести. Цель — помочь владельцу сервиса закрыть дыру быстро и безопасно. Но до контакта важно остановиться и взвешенно проанализировать собственные действия. Чтобы вам было чуть проще сориентироваться «на месте», собрали ключевые советы и рекомендации под катом.
Под кат →Многие команды работают с кластерами Kubernetes побольше нашего. В них больше узлов, больше подов, больше ingress и так далее. По большинству размерностей нас кто-нибудь, да побеждает.
Но есть одна размерность, по которой, как мы подозреваем, мы почти на вершине: это пространства имён. Я думаю так, потому что мы постоянно сталкиваемся со странным поведением во всех процессах, которые их отслеживают. В частности, все процессы, выполняющие их listwatch, занимают на удивление много памяти и подвергают apiserver серьёзной нагрузке. Это стало одной из сложностей масштабирования, которую замечаешь, только достигая определённого порога. При увеличении оверхеда памяти эффективность снижается: каждый байт, который нам нужно использовать для управления — это байт, отнятый у пользовательских сервисов.
Проблема сильно усугубляется, когда daemonset должен выполнять listwatch пространств имён или сетевых политик (netpol), которые мы определяем для каждого пространства имён. Так как daemonset запускают под в каждом узле, каждый из этих подов выполняет listwatch одних и тех же ресурсов, из-за чего объём используемой памяти увеличивается при росте количества узлов.
Хуже того — эти вызовы listwatch серьёзно нагружали apiserver. Если одновременно перезапускалось множество подов daemonset, например, при развёртывании, то они могли перегрузить сервер запросами и вызвать реальный вылет.
Читать далееВ общем-то и целом, мой предыдущий эмулятор ZX Spectrum, написанный на go, работал. Показывал нужное (или очень близко к нужному) и давал чувство приближенности к программистам. Однако у него были очень фундаментальные проблемы, связанные исключительно с языком разработки. Ну по крайней мере я сейчас так думаю.
Другим движущим фактором все-таки была бесплатность БЯМок от cloud.ru (не реклама, да и бесплатности больше нет). Ну где еще можно на халяву пожечь сотни миллионов токенов и получить хоть что-то работающее?
В общем, я принял волевое решение переписать все на С++. Под катом дневник "переписчика", в котором я последовательно описываю все боли и страдания начинающего писателя эмуляторов. Желающим сразу посмотреть на конечный результат можно сходить на https://github.com/kiltum/zxcpp
Читать далееКак разработать источник отрицательного напряжения? Легко, это делается из классического Buck конвертера!
Стандартное решение, которое может пригодиться всем, кто хоть раз сталкивался с разработкой DC/DC источников питания или столкнулся сейчас.
Это началось со статьи "Алгебраические типы данных на самом деле не такие страшные". Мы знаем о типах-суммах и типах-произведениях. Но задумывались ли вы когда-нибудь о том, откуда они получили такие имена, и как вообще были открыты они и их свойства? Я провел последнюю неделю в кроличьей норе истории, и я просто обязан поделиться тем, что я нашёл.
Читать далееКак систематизировать работу с техническим долгом
Техдолг растёт, пока его никто не контролирует. Мы решили это так: выделили отдельную доску в Jira, разделили процесс на Backlog → To Discuss → Ready for Development → В работе, проводим регулярный груминг, оцениваем и приоритизируем задачи, сделали быстрые фильтры и дашборд для контроля времени.
Результат: прозрачность и приоритетность задач, техдолг перестал копиться «в стол», стало проще брать задачи без хаоса, улучшилось качество кода, выросла инициативность команды.
Читать далееОдна из фундаментальных проблем при создании эффективных моделей машинного обучения – определение необходимого и достаточного количества данных для их обучения. Слишком мало данных – модель будет неточной, слишком много – неоправданные затраты времени и ресурсов на сбор и обработку информации.
Коллектив ученых из Московского физико-технического института предложил два новых метода для решения этой задачи, основанных на анализе функции правдоподобия с использованием техники бутстрэпа. Работа опубликована в журнале Computational Mathematics and Mathematical Physics.
Читать далееПроблема раковых опухолей в том, что их существует тысячи видов. Однако, у каждого вида рака оказался собственный микробиом – специфический набор бактерий, которые влияют на возникновение, распространение и реакцию опухолей на лечение. И если подбирать лечение с учетом этой бактериальной среды, то можно добиться лучших показателей для выздоровления.
Читать далееСамые интересные новости финансов и технологий в России и мире за неделю: российским операторам запретили рассылать смс-коды для Telegram, Аяза Шабутдинова посадили на 7 лет, первый штраф за рекламу в Инстаграме, рекордная капитализация Nvidia на $5 трлн, реорганизация OpenAI в коммерческую компанию, а также предзаказ домашнего робота Neo за $20к.
Читать далееБолее 50 тысяч информационных систем на российских предприятиях ― объекты критической инфраструктуры. Объясня., что это означает.
Еще в июле 2024 года Госдума приняла в первом чтении законопроект о переходе объектов критической информационной инфраструктуры на использование российского ПО.
Выполнение требований закона влечет рост расходов компаний, в том числе операторов связи, ведь все они ― субъекты КИИ. Как соответствовать требованиям и справляться с дополнительной нагрузкой на бизнес?
Читать далееУ JetBrains есть фреймворк JetBrains.Annotations для .NET, который предоставляет набор полезных атрибутов. Они выступают дополнительными метаданными для статического анализатора JB, который включён в их IDE и ReSharper, для самих разработчиков и даже для нейросетей, которые работают с этим кодом.
Какие атрибуты доступны, как и где ими воспользоваться — об этом кратко и с примерами далее.
Читать далееЯ задал это вопрос ИИ (Google) и получил ответ:
Виртуальные машины (ВМ) нужны для запуска нескольких операционных систем на одном компьютере, тестирования программ без риска для основной системы, создания изолированных и безопасных сред, а также для эффективного использования серверных ресурсов в облачных вычислениях и дата-центрах. Они полезны для разработчиков, системных администраторов и для пользователей, которым необходимо работать с разными ОС или приложениями.
Основные причины, зачем нужны виртуальные машины:
Запуск нескольких ОС: Позволяют использовать Windows на Mac или, наоборот, запускать различные операционные системы в отдельных окнах на вашем компьютере.
Тестирование: Можно безопасно тестировать новое или подозрительное программное обеспечение, не боясь навредить основной системе. Это особенно актуально для тестирования приложений на разных платформах (например, на Windows и Linux).
Изоляция и безопасность: ВМ создают изолированную среду. Если в виртуальной машине произойдет сбой или она заразится вирусом, это не повлияет на работу основной операционной системы.
Виртуальные серверы: ВМ позволяют использовать один физический сервер для размещения нескольких виртуальных серверов. Это экономит средства, снижает потребление энергии и упрощает управление серверной инфраструктурой для компаний.
Гибкость и масштабируемость: ВМ легко создать, настроить и перенести. Это позволяет компаниям быстро адаптироваться к меняющимся нагрузкам и легко масштабировать свои ресурсы.
Эффективное использование ресурсов: Виртуальные машины позволяют распределять ресурсы одного физического компьютера между несколькими ВМ, что повышает общую эффективность использования оборудования.
Разберемся с каждым пунктом по отдельности.
Читать далееИИ уже достаточно давно научился искать симптомы, отвечать на вопросы из учебников и угадывать диагнозы на тестах, кажется, что следующий рубеж уже совсем близко и они смогут заменить врачей-диагностов. Однако, на более сложных и приближённых к реальности задачах, когда нужно самому принимать решения по ходу, многие из существующих ИИ-моделей почему-то оказываются не способны рассуждать на уровне врача-эксперта: они часто не могут понять, когда стоит остановиться, не знают какие анализы назначить или попросту действуют по шаблону.
Новое исследование, наоборот, утверждает, что всё о чём мы думали раньше вообще не важно — и размер модели и количество данных — всё это практически не влияет на итог, а самое главное это то, как именно ИИ учится рассуждать и стратегически мыслить. Авторы помещают ИИ в виртуальную клинику, где каждое действие имеет значение, а решение о неправильном выборе будущего анализа повлияет на конечный диагноз. При этом, ИИ получает обратную связь не только за финальный точный диагноз, но и за всю цепочку принятых решений.
Давайте разберёмся, почему для успеха ИИ недостаточно просто «знать правильный ответ» из учебника и почему обучение на реалистичных медицинских сценариях позволяет делать рассуждения ИИ похожими на врачебные. Всё это меняет не только подход к диагностике, но и то, как вообще следует использовать ИИ в медицине.
Читать далееВ прошлой статье мы рассмотрели, как отлаживать код, загружать отредактированные файлы и удалять ненужные файлы на устройстве прямо из браузера (беспроводное управление устройством) через WebREPL и через uPyLoader. Теперь научим устройство "говорить" — отправлять нам сообщения через систему push-уведомлений популярных мессенджеров.
Для сохранения логической целостности цикла статей я включил этот раздел, даже учитывая наличие похожих материалов на Хабре. Цель — не просто повторить известную информацию, а показать проверенные решения, адаптированные под конкретный проект и решающие проблему с русской кодировкой и эмодзи.
Мы протестируем две системы уведомлений:
Telegram-бот — для ESP32, который будет отображать сообщения от модуля, обладающего достаточными ресурсами для обработки SSL-шифрования, требуемого Telegram API.
ПродолжаемНоябрь входит в тройку самых тёмных месяцев года, уступая в этом рейтинге лишь декабрю и уверенно конкурируя с январем, попутно используя то обстоятельство, что снега в ноябре в климатической зоне средних северных широт как правило еще нет, отчего ноябрь кажется еще темнее и мрачнее. Погода способствует тому же восприятию. По набору видимых созвездий ноябрь тоже вполне соответствует зимним месяцам. В 2025 году ноябрь оказался довольно изобильным на астрономические явления. Давайте, их перечислим.
Читать далее