<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Все публикации в потоке Разработка ]]></title>
    <link>https://habr.com/ru/flows/develop/articles/all/</link>
    <description><![CDATA[Все публикации в потоке Разработка  на Хабре]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Tue, 21 Jul 2026 13:08:57 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      
        
    
    <item>
      <title><![CDATA[Почему Docker не всегда лучший выбор и чем его заменить]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/ruvds/articles/1060030/</guid>
      <link>https://habr.com/ru/companies/ruvds/articles/1060030/?utm_campaign=1060030&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/0d8/692/b5b/0d8692b5bdc189fd034e7785716ae497.png" /><p>Docker — отличный инструмент, но «отличный» не значит «единственный» и тем более не значит, что он подходит для любой задачи. На одиночном сервере с одним-двумя приложениями Docker может принести больше проблем, чем пользы. Демон, образы, слои, сети и тома упрощают упаковку и запуск приложений, но на одиночке или небольшом VDS они избыточны. Под катом о том, в каких случаях Docker не нужОн, чем его заменить и как.&nbsp;</p> <a href="https://habr.com/ru/articles/1060030/?utm_campaign=1060030&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 13:01:21 GMT</pubDate>
      <dc:creator><![CDATA[SrvTrantor (RUVDS.com)]]></dc:creator>
      
      <category><![CDATA[Docker]]></category><category><![CDATA[Podman]]></category><category><![CDATA[systemd]]></category><category><![CDATA[systemd-nspawn]]></category><category><![CDATA[Incus]]></category><category><![CDATA[Firejail]]></category><category><![CDATA[Linux-контейнеры]]></category><category><![CDATA[контейнеризация]]></category><category><![CDATA[администрирование серверов]]></category><category><![CDATA[ruvds_статьи]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как заставить нескольких агентов работать над одним проектом и не мешать друг другу]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061420/</guid>
      <link>https://habr.com/ru/articles/1061420/?utm_campaign=1061420&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<p>Когда проект становится большим и сложным, а количество задач растёт, одного агента уже недостаточно. Он переполняет контекст, забывает, что делал в начале, и начинает выдавать «почти правильный код».</p><p>Чтобы такого не случалось, стоит задуматься о мультиагентной системе. Она состоит из нескольких агентов, каждый из которых отвечает за свой этап работы, а вместе они выстраиваются в конвейер.</p><p><strong>Архитектура мультиагентной системы следует тем же принципам, что и архитектура хорошей команды разработчиков. </strong>Агенты делятся по уровням ответственности:</p><p>• Нижний уровень — агенты, которые пишут конкретный код: правят константы, следят за чистотой функций, генерируют строки.</p><p>• Средний уровень — агенты, управляющие архитектурой модуля: где какие классы, как связаны зависимости.</p><p>• Верхний уровень — агенты, которые видят картину целиком: как компоненты системы связаны между собой, где база данных, где сервер приложений, где веб-сервер.</p><p>Это немного напоминает команду с джуниорами, сеньорами и техлидом, но роли исполняют не люди, а агенты.</p> <a href="https://habr.com/ru/articles/1061420/?utm_campaign=1061420&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 13:00:12 GMT</pubDate>
      <dc:creator><![CDATA[ai_fucked_up]]></dc:creator>
      
      <category><![CDATA[agents]]></category><category><![CDATA[оркестрация]]></category><category><![CDATA[ai]]></category>
    </item>
  

  

  

	
  

  

  

    

  

  

	
  

  
    <item>
      <title><![CDATA[[Перевод] Запуск DOOM на собственном CPU]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061416/</guid>
      <link>https://habr.com/ru/articles/1061416/?utm_campaign=1061416&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/029/225/756/029225756f3aa0fd809abe2377359d41.png" /><p>Doom — это выпущенная в 1993 году видеоигра, которую разработала id Software. Она совершила революцию в гейминге и стала определяющей для современных шутеров от первого лица. Благодаря её популярности возникла поговорка «Doom можно запустить на чём угодно». Чтобы доказать это, Doom портировали почти на все платформы, от микроконтроллеров до тостеров и даже бактерий.</p><p>Две недели назад мы успешно запустили Doom (тормозной) на созданном с нуля CPU (а потом опубликовали об этом видео, получившее несколько миллионов просмотров). Честно говоря, мне до сих пор в это не верится. Но что же мы создали на самом деле? Спроектировали собственный CPU на уровне логических вентилей, подключили его к периферии, адаптировали исходный код DOOM для запуска на этой машине и развернули всё это на FPGA для исполнения в реальном времени. До запуска Doom мы писали только простые программы, например, Pong и множества Мандельброта. Теперь мы можем запускать завершённые опубликованные игры, но путь к этому был довольно непростым.</p> <a href="https://habr.com/ru/articles/1061416/?utm_campaign=1061416&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:57:58 GMT</pubDate>
      <dc:creator><![CDATA[PatientZero]]></dc:creator>
      
      <category>doom</category><category>самодельный процессор</category>
    </item>
  

  

    
    <item>
      <title><![CDATA[Расширенный аудит Windows. Или с чего начать расследование инцидентов?]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061400/</guid>
      <link>https://habr.com/ru/articles/1061400/?utm_campaign=1061400&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/c10/eb0/621/c10eb0621b057c1dc689e7b0b6964d71.jpg" /><p>Когда я начал разбираться в SOC (Security Operations Center), то довольно быстро понял, что стандартная Windows не дает особого понимания, что вообще внутри нее происходит. События входа, создание процессов, изменение политик – все это просто не пишется либо пишется в достаточно урезанном виде.</p><p>Здесь я хотел бы показать (конечно, частично), каким вообще образом настроить аудит безопасности Windows 10/11 так, чтобы получить вполне читаемые и полезные события, которые можно будет использовать для расследования инцидентов ИБ. Разберемся, что и зачем мы включаем, что такое Event ID и как потом выглядят события на реальной практике. Все действия будут выполняться на ВМ, дабы не затрагивать хост.</p> <a href="https://habr.com/ru/articles/1061400/?utm_campaign=1061400&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:24:51 GMT</pubDate>
      <dc:creator><![CDATA[Kr1x5896]]></dc:creator>
      
      <category><![CDATA[аудит]]></category><category><![CDATA[аудит безопасности]]></category><category><![CDATA[информационная безопасность]]></category><category><![CDATA[системное администрирование]]></category><category><![CDATA[soc]]></category><category><![CDATA[Windows аудит]]></category><category><![CDATA[логирование]]></category><category><![CDATA[auditpol]]></category><category><![CDATA[event id]]></category><category><![CDATA[журнал безопасности]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Я написал свой self-hosted MDM для смешанного парка корпоративных устройств]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061394/</guid>
      <link>https://habr.com/ru/articles/1061394/?utm_campaign=1061394&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/36d/71b/ae4/36d71bae46ba797538af2f232319e711.jpg" /><p>Полгода назад я пришёл в новую организацию, и мне достался парк машин. Десяток на Windows, несколько маков, пачка линуксовых ноутов у разработчиков. Невыносимым было другое. Навешанные до меня политики и блокировки со стороны ИБ связывали руки так, что здраво администрировать домен было попросту нельзя: любое рутинное действие упиралось в чужие ограничения. Тогда я и полез искать решение, которое помогло бы мне нормально админить этот парк.</p><p>Готового, что легло бы на мою ситуацию, я так и не нашёл — и в итоге сел писать своё. Ниже — не анонс, а разбор инженерных решений, которые по дороге пришлось принять, и честная карта того, где у этой конструкции проходит настоящая граница безопасности. Последнее для меня важнее всей остальной механики: MDM по определению даёт слишком много власти над чужими машинами, и делать вид, что это не так, было бы нечестно. Поэтому архитектуру ниже я разбираю не как список возможностей, а как ответ на вопрос «где это ломается».</p> <a href="https://habr.com/ru/articles/1061394/?utm_campaign=1061394&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:17:58 GMT</pubDate>
      <dc:creator><![CDATA[Floodww]]></dc:creator>
      
      <category><![CDATA[MDM]]></category><category><![CDATA[system administration]]></category><category><![CDATA[windows]]></category><category><![CDATA[macos]]></category><category><![CDATA[linux]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Несколько взглядов на кросс-энтропию]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061392/</guid>
      <link>https://habr.com/ru/articles/1061392/?utm_campaign=1061392&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/8d3/52c/dca/8d352cdcaf359ac70828ba9ebf8e27e0.png" /><p>В данной статье разбирается несколько способов вывода формулы кросс-энтропии, а также попытки сформировать интуиции относительно ее сути.</p> <a href="https://habr.com/ru/articles/1061392/?utm_campaign=1061392&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:16:55 GMT</pubDate>
      <dc:creator><![CDATA[MMKuz]]></dc:creator>
      
      <category><![CDATA[теория информации]]></category><category><![CDATA[энтропия]]></category><category><![CDATA[теория кодирования]]></category><category><![CDATA[оптимизация]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Ленивый LINQ: разбираем yield и ленивые вычисления по кирпичикам]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061386/</guid>
      <link>https://habr.com/ru/articles/1061386/?utm_campaign=1061386&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/bea/d0d/118/bead0d118d603471b5f18f96fee20d21.png" /><p>Каждый C#‑разработчик писал <code>numbers.Where(x =&gt; x &gt; 10).Select(x =&gt; x * 2)</code>&nbsp;— и удивлялся, узнав, что&nbsp;эта строчка ничего не&nbsp;вычисляет. Цепочка спит, пока мы не&nbsp;начнём перебирать результат.</p><p>За&nbsp;этим стоит конкретный механизм&nbsp;— отложенные вычисления, а&nbsp;в&nbsp;его основе лежит обычная фича языка: <code>yield</code>. Разбираем, как&nbsp;устроены ленивые методы LINQ изнутри&nbsp;— от&nbsp;ручной реализации <code>Where</code> без <code>yield</code> до&nbsp;того, во&nbsp;что&nbsp;этот <code>yield</code> разворачивается компилятором.</p><p>А&nbsp;вы точно знаете, что&nbsp;происходит под&nbsp;капотом каждый раз, когда пишете <code>.Where(...).Select(...)</code>?</p><p>К&nbsp;статье приложен репозиторий с&nbsp;полной реализацией.</p> <a href="https://habr.com/ru/articles/1061386/?utm_campaign=1061386&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:09:44 GMT</pubDate>
      <dc:creator><![CDATA[Deda_Sher]]></dc:creator>
      
      <category><![CDATA[C#]]></category><category><![CDATA[LINQ]]></category><category><![CDATA[yield]]></category><category><![CDATA[.NET]]></category><category><![CDATA[отложенные вычисления]]></category><category><![CDATA[deffered execution]]></category><category><![CDATA[итераторы]]></category><category><![CDATA[IEnumerable]]></category><category><![CDATA[ленивые вычисления]]></category><category><![CDATA[компилятор]]></category>
    </item>
  

  

  

	
  

  

  

    

  

  

	
  

  
    <item>
      <title><![CDATA[[Перевод] Что нового в WebStorm 2026.2]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/haulmont/articles/1061378/</guid>
      <link>https://habr.com/ru/companies/haulmont/articles/1061378/?utm_campaign=1061378&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/4ee/fd3/b74/4eefd3b7422650371e85ab6df37cf80c.png" /><p>Несмотря на то, что WebStorm уже несколько лет официально недоступен в России, он по-прежнему остаётся одним из главных инструментов для веб-разработчиков. Недавно вышла новая версия WebStorm 2026.2.</p><p>В релиз вошли поддержка TypeScript 7, нативная интеграция с GitHub Copilot, менеджер скиллов для ИИ-агентов и обновления для React, Vue, Svelte, Angular и других популярных технологий. Разработчики также улучшили отладку, работу с Node.js и Git, производительность и стабильность IDE.</p><p>В статье разберём основные изменения WebStorm 2026.2, а также расскажем, какие возможности для веб-разработки уже доступны в <a href="https://openide.ru/download?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=webstorm-2026-2">OpenIDE</a> и чего ожидать от её предстоящего перехода на платформу 2026.2.</p> <a href="https://habr.com/ru/articles/1061378/?utm_campaign=1061378&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:01:15 GMT</pubDate>
      <dc:creator><![CDATA[befayer (Haulmont)]]></dc:creator>
      
      <category>ide</category><category>webstorm</category><category>jetbrains</category><category>typescript</category><category>vue</category><category>react</category><category>react.js</category><category>angular</category><category>angularjs</category><category>javascript</category>
    </item>
  

  

    
    <item>
      <title><![CDATA[Краткая история футбольных симуляторов]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/selectel/articles/1059318/</guid>
      <link>https://habr.com/ru/companies/selectel/articles/1059318/?utm_campaign=1059318&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/203/b41/d13/203b41d1320e2316225778f3727ff49d.jpg" /><p>Игры про футбол, как и вообще все компьютерные игры, прошли долгий путь. Сегодня многие по привычке называют любую игру о спорте «симулятором», хотя это не всегда корректно. Ведь история игр началась с простых аркадных развлечений и только потом превратилась в гиперреалистичные симуляции.</p><p>Собственно, на эту историю мы сегодня и посмотрим. Заодно поговорим о том, как благодаря технологическим достижениям и инновациям игры о спорте заняли свое место в мировой культуре, как Electronic Arts стала компанией, выпускающей лучшие игры про футбол, и почему, несмотря на это, сегодня у Чемпионата мира нет официальной компьютерной игры.</p> <a href="https://habr.com/ru/articles/1059318/?utm_campaign=1059318&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 12:00:17 GMT</pubDate>
      <dc:creator><![CDATA[El_Gato_Grande (Selectel)]]></dc:creator>
      
      <category><![CDATA[selectel]]></category><category><![CDATA[ea]]></category><category><![CDATA[fifa]]></category><category><![CDATA[футбол]]></category><category><![CDATA[игры]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Автотестирование кастомного K8s CNI: как правильно входить в ха… то есть поду]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/cloud_ru/articles/1060958/</guid>
      <link>https://habr.com/ru/companies/cloud_ru/articles/1060958/?utm_campaign=1060958&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/dd2/ef7/3b3/dd2ef73b387157b923bb93058614b775.jpg" /><p>Представьте, однажды вы приходите в новую компанию на позицию Automation QA и перед вами возникает задача: на пустом поле проекта посеять зерна автотестов, которые прорастут в регулярный процесс тестирования и будут отлавливать различные баги. Такая задача возникла и передо мной, поэтому я хочу поделиться своим опытом, как строил тестирование кастомного K8s CNI-плагина в новой для себя области. Статья будет полезна QA-инженерам, которые на «ты» с Python, но на «вы» с тестированием Kubernetes с помощью автотестов. При решении задачи я столкнулся с вопросами, на которые нигде не нашел ответа. Возможно, раз мне помог описанный путь, поможет и вам.</p> <a href="https://habr.com/ru/articles/1060958/?utm_campaign=1060958&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Войти в поду</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 11:50:52 GMT</pubDate>
      <dc:creator><![CDATA[time2test (Cloud.ru)]]></dc:creator>
      
      <category><![CDATA[тестирование]]></category><category><![CDATA[automation qa]]></category><category><![CDATA[cni-плагин]]></category><category><![CDATA[k8s]]></category><category><![CDATA[kubernetes]]></category><category><![CDATA[multus]]></category><category><![CDATA[сетевая связность]]></category><category><![CDATA[netcat]]></category><category><![CDATA[python]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Браузер вместо API: как я объединил DeepSeek, Qwen и ChatGPT в одного локального агента]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061372/</guid>
      <link>https://habr.com/ru/articles/1061372/?utm_campaign=1061372&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/155/6a9/590/1556a95905a8a68b7ce1a722c4154852.png" /><p>Я хотел получить локального AI-агента без отдельного API для каждой модели — и превратил браузерные сессии DeepSeek, Qwen и ChatGPT в единый транспорт. В статье разбираю архитектуру AI Free: WASM proof-of-work, подписанные запросы через авторизованную вкладку, работу через штатный UI, общий оркестратор, память, skills и восстановление после сбоев. А ещё рассказываю, почему первый успешный запрос оказался самой простой частью проекта, который я разрабатываю один.</p> <a href="https://habr.com/ru/articles/1061372/?utm_campaign=1061372&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 11:40:53 GMT</pubDate>
      <dc:creator><![CDATA[ITstaks]]></dc:creator>
      
      <category><![CDATA[AI-агенты]]></category><category><![CDATA[LLM]]></category><category><![CDATA[DeepSeek]]></category><category><![CDATA[Qwen]]></category><category><![CDATA[ChatGPT]]></category><category><![CDATA[Playwright]]></category><category><![CDATA[Chromium]]></category><category><![CDATA[Node.js]]></category><category><![CDATA[open source]]></category><category><![CDATA[VS Code]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Я сделал полностью локальный Telegram Wrapped после того, как у меня угнали фейк с тремя переписками]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061370/</guid>
      <link>https://habr.com/ru/articles/1061370/?utm_campaign=1061370&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/4db/e6e/e1b/4dbe6ee1b02b57a4b36f36e82c2fe350.png" /><p>Всем привет, начиная с&nbsp;прошлого лета я потихоньку клепал свою версию Telegram Wrapped.</p><p>Началось всё максимально тупо. Я увидел в&nbsp;TikTok рекламу очередного сервиса, который обещал красиво проанализировать мой Telegram. Проверять такое на&nbsp;основном аккаунте мне показалось сомнительной идеей, поэтому я зашёл туда с&nbsp;фейка, на&nbsp;котором&nbsp;было буквально три переписки.</p><p>В&nbsp;итоге фейк угнали.</p><p>Да, аккаунт с&nbsp;тремя чатами.</p><p>После этого я задумался: почему вообще ради красивой статистики человек должен отдавать кому‑то код входа, сессию Telegram или&nbsp;доступ ко всему аккаунту? Так появилась идея сделать свой Wrapped, который не&nbsp;заходит в&nbsp;аккаунт и не&nbsp;отправляет переписки на&nbsp;чужой сервер.</p> <a href="https://habr.com/ru/articles/1061370/?utm_campaign=1061370&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 11:37:40 GMT</pubDate>
      <dc:creator><![CDATA[widde_awake]]></dc:creator>
      
      <category><![CDATA[Telegram Wrapped]]></category><category><![CDATA[Telegram Export]]></category><category><![CDATA[анализ переписок]]></category><category><![CDATA[приватность]]></category><category><![CDATA[локальная обработка данных]]></category><category><![CDATA[Open Source]]></category><category><![CDATA[Electron]]></category><category><![CDATA[Python]]></category><category><![CDATA[SQLite]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Data Storytelling на примере нестандартного дашборда: РПЛ и знаки зодиака]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/modusbi/articles/1061364/</guid>
      <link>https://habr.com/ru/companies/modusbi/articles/1061364/?utm_campaign=1061364&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/1a9/3db/982/1a93db982f8dcbfbbc02e560a8a9e004.JPG" /><p>Что если задать BI-системе вопрос, который выходит за рамки рутинной аналитики? Будет ли она также эффективна? Эта идея родилась из корпоративного шуточного спора: шутили над качествами сотрудника «Рака», а в статистику попали также и другие «носители» знака зодиака.&nbsp;</p><p>Мы в <a href="https://modusbi.ru/?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=datastorytelling">Modus</a> решили проверить закономерности на данных, так как это наш профессиональный рабочий инструмент и сфера интереса. Взяли статистику всех игроков Российской Премьер-Лиги, добавили знаки зодиака — и посмотрели, что получится.&nbsp;</p><p>Спойлер: вышел настоящий дашборд и серьезный вывод о том, на что способен гибкий BI.</p> <a href="https://habr.com/ru/articles/1061364/?utm_campaign=1061364&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 11:35:32 GMT</pubDate>
      <dc:creator><![CDATA[Alek_Che (Modus BI)]]></dc:creator>
      
      <category><![CDATA[Data Storytelling]]></category><category><![CDATA[BI-система]]></category><category><![CDATA[гибкий BI]]></category><category><![CDATA[дашборд]]></category><category><![CDATA[визуализация данных]]></category><category><![CDATA[ETL]]></category><category><![CDATA[очистка данных]]></category><category><![CDATA[selenium]]></category><category><![CDATA[phyton]]></category><category><![CDATA[парсинг на python]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Origami Framework: автоматизация тестирования на Java]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061356/</guid>
      <link>https://habr.com/ru/articles/1061356/?utm_campaign=1061356&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/69f/1f9/998/69f1f99982e1bcb301ccbce2905cf805.png" /><p><a href="https://origamiframework.ru/" rel="noopener noreferrer nofollow">Origami Framework</a> —  фреймворк для автоматизации тестирования на Java, созданный с целью упрощения построения тестовой архитектуры и ускорения процессов приёмочного и регрессионного тестирования    </p> <a href="https://habr.com/ru/articles/1061356/?utm_campaign=1061356&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 11:12:29 GMT</pubDate>
      <dc:creator><![CDATA[MrSmile13]]></dc:creator>
      
      <category><![CDATA[origami framework]]></category><category><![CDATA[java]]></category><category><![CDATA[тестирование]]></category><category><![CDATA[qa]]></category><category><![CDATA[autotesting]]></category><category><![CDATA[автоматизация тестирования]]></category><category><![CDATA[testing]]></category><category><![CDATA[test automation]]></category><category><![CDATA[фреймворк]]></category><category><![CDATA[software testing]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Разработка — это больше не код. Как AI меняет работу инженера через управление контекстом]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/sportmaster_lab/articles/1061250/</guid>
      <link>https://habr.com/ru/companies/sportmaster_lab/articles/1061250/?utm_campaign=1061250&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/2f7/8df/86b/2f78df86b9b1f0c3c4a7eb2c3088ea11.JPG" /><p><br>Всем привет!<br>Меня зовут Шадрин Дмитрий. <br>Хочу поделиться собственными наблюдениями и практическим опытом использования AI в производственной разработке.<br>За последний год вокруг искусственного интеллекта в разработке появилось огромное количество материалов.</p><p>Кажется, что каждую неделю появляется новая модель, новый IDE-плагин или очередной инструмент, который обещает ускорить разработку в несколько раз. Вокруг этой темы накопилось огромное количество обсуждений. Кто-то сравнивает качество генерации кода у разных моделей, кто-то пытается посчитать, сколько процентов работы разработчика можно автоматизировать уже сегодня, а кто-то всерьёз задаётся вопросом, останется ли профессия разработчика через несколько лет в её нынешнем виде. Эта тема вызывает много споров, эмоций и ожиданий.<br>Но, наблюдая за тем, как подобные инструменты используются в реальной разработке, я всё чаще прихожу к мысли, что самое интересное происходит совсем не там, где принято искать. На мой взгляд, главный эффект современных AI-инструментов заключается не в генерации кода.<br>Самые серьёзные изменения происходят в работе с контекстом. Современные AI-инструменты начинают автоматизировать задачи анализа требований, навигации по кодовой базе, поиска архитектурных зависимостей и оценки влияния изменений (impact analysis). Именно это сегодня начинает менять сам подход к инженерной работе. <br>Я с большим интересом наблюдаю за всеми этими дискуссиями. Мне самому близка тема инженерных инструментов. За последние годы я успел поработать в разных компаниях, на разных ролях и с очень разными системами. <br>Сейчас я занимаюсь развитием корпоративных систем для оптовой торговли, франчайзинговых партнёров и интеграции с маркетплейсами в компании SM Lab. До этого был опыт работы в финтехе Яндекса, где приходилось проектировать и запускать сервисы, работающие под высокой нагрузкой и в условиях серьезных регуляторных ограничений.</p> <a href="https://habr.com/ru/articles/1061250/?utm_campaign=1061250&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 11:00:12 GMT</pubDate>
      <dc:creator><![CDATA[dev_flex (SM Lab)]]></dc:creator>
      
      <category><![CDATA[программирование]]></category><category><![CDATA[разработка]]></category><category><![CDATA[ai agent]]></category><category><![CDATA[архитектура]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как понять, что ваш продукт удобен, если пользователи молчат о проблемах: кейс UX-аудита личного кабинета студента]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/alfa/articles/1060872/</guid>
      <link>https://habr.com/ru/companies/alfa/articles/1060872/?utm_campaign=1060872&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/365/755/102/365755102115877884008df058ae6159.png" /><p>Привет, на связи Alfa Research Center — исследовательский центр Альфа-Банка. Обычно мы занимаемся исследованиями банковских интерфейсов, но однажды нашим заказчиком стала Президентская академия (РАНХиГС). Они хотели понять, насколько Личный кабинет студента отвечает ожиданиям и как выглядит на фоне рынка. Проверить продукт на UX никогда не бывает лишним, ведь если вам даже кажется, что у вас все хорошо, то глубокое UX-исследование покажет может показать неожиданные результаты.</p><p>В этой статье расскажем, как погрузились в личный кабинет студента Президентской академии. Для этого использовали опросы, айтрекинг Tobii Pro и технологию SenseMachine, которая считывает эмоциональный отклик по микровыражениям лица. В итоге получили более 45 выявленных инсайтов и проблем, и столько же рекомендаций на 150 слайдах в отчете. </p><p>Но сначала давайте определимся с тем, что мы считаем за «личный кабинет студента».</p> <a href="https://habr.com/ru/articles/1060872/?utm_campaign=1060872&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Смотреть результаты &rarr;</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 10:49:53 GMT</pubDate>
      <dc:creator><![CDATA[ZarinaTs (Альфа-Банк)]]></dc:creator>
      
      <category><![CDATA[UX-исследование]]></category><category><![CDATA[edtech]]></category><category><![CDATA[юзабилити-тестирование]]></category><category><![CDATA[eye-tracking]]></category><category><![CDATA[личный кабинет]]></category><category><![CDATA[пользовательский опыт]]></category><category><![CDATA[продуктовые исследования]]></category><category><![CDATA[юзабилити]]></category><category><![CDATA[UX-тестирование]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как мы делаем 2D-симулятор грузоперевозок: что уже готово и куда движемся к MVP]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061324/</guid>
      <link>https://habr.com/ru/articles/1061324/?utm_campaign=1061324&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/d0f/4e9/4e8/d0f4e94e806bc9ad6e1e72d382d956ce.png" /><p>Делаем Truck Sim 2D — 2D-симулятор грузоперевозок на Godot 4.6 для Android и ПК. Физический груз на RigidBody2D, который реально может выпасть из кузова, производственная цепочка от шахты до завода и первая сетевая версия на ENet — уже играбельная сборка 0.2.8. Рассказываем, как это устроено внутри и что планируем до MVP: превращаем LAN-конвой в настоящий кооператив</p> <a href="https://habr.com/ru/articles/1061324/?utm_campaign=1061324&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 10:28:51 GMT</pubDate>
      <dc:creator><![CDATA[sult_ann]]></dc:creator>
      
      <category><![CDATA[godot]]></category><category><![CDATA[gamedev]]></category><category><![CDATA[geodev]]></category><category><![CDATA[2d игры]]></category><category><![CDATA[физика в играх]]></category><category><![CDATA[truck simulator]]></category><category><![CDATA[симулятор]]></category><category><![CDATA[мультиплеер]]></category><category><![CDATA[gdscript]]></category><category><![CDATA[indie game]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Неопределённость под контролем. Кейс исследований в работе аналитика]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061314/</guid>
      <link>https://habr.com/ru/articles/1061314/?utm_campaign=1061314&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/31c/099/383/31c0993830e26c74a8056f7715796fc3.jpg" /><p>В традиционном представлении бизнес-аналитик — это «собиратель требований» и переводчик между бизнесом и разработкой. Сегодня этого уже явно недостаточно. Генерацию пользовательских историй можно доверить ИИ, а ценность профессионала смещается в сторону стратегического мышления и исследовательской работы. Аналитик не просто посредник, а тот, кто снижает неопределённость для команды и руководства.</p><p>Недавно говорила об этом с коллегой и услышала неожиданный вопрос: «А ты всегда любила работать с неопределённостью?» Вообще-то никто не любит неопределённость, она вызывает стресс и тревожность. В контексте задач аналитика для меня фраза «работать с неопределённостью» означает умение взять её под контроль. И в этом смысле всегда интересно встретить новую задачу, которую можно решить.</p><p>В этой статье я расскажу об одном кейсе, где для снижения неопределённости использовался каскад исследований. И, как водится, я сделала ошибку, а потом её исправила. Понять почему неправильно выбрал фреймворк даже интереснее, чем идеальный план с самого начала.</p><p>Задача звучала так: «Пользователи испытывают сложности на странице поиска, нужно что-то менять». У такой задачи нет адекватных критериев приемки и сама формулировка содержит допущения. «Пользователи испытывают сложности» — это слишком универсально. Много вы знаете приложений, где ни разу не задумались как выполнить какое-нибудь действие? Почему утверждается, что именно нашим пользователям сложнее других? Какого рода сложности искать и как понять, когда остановиться в поисках? В общем, нужно снизить уровень неопределенности.</p> <a href="https://habr.com/ru/articles/1061314/?utm_campaign=1061314&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 10:20:48 GMT</pubDate>
      <dc:creator><![CDATA[BA_Mentor]]></dc:creator>
      
      <category><![CDATA[исследования пользователей]]></category><category><![CDATA[бизнес-анализ]]></category><category><![CDATA[бэклог продукта]]></category><category><![CDATA[приоритизация]]></category><category><![CDATA[юзабилити тестирование]]></category><category><![CDATA[custdev]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Распродажа в издательстве «Питер»]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/piter/articles/1060924/</guid>
      <link>https://habr.com/ru/companies/piter/articles/1060924/?utm_campaign=1060924&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/480/e16/70d/480e1670da382ebcc8194d847959757c.jpg" /><p>Привет, Хаброжители! </p><p>Проводите лето с пользой для карьеры, а мы позаботимся о скидках на лучшие IT-книги.</p> <a href="https://habr.com/ru/articles/1060924/?utm_campaign=1060924&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 10:08:58 GMT</pubDate>
      <dc:creator><![CDATA[ph_piter (Издательский дом «Питер»)]]></dc:creator>
      
      <category><![CDATA[распродажа]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[ClickHouse: сценарии, сильные стороны, лучшие практики работы в 2026 году]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/vk/articles/1061284/</guid>
      <link>https://habr.com/ru/companies/vk/articles/1061284/?utm_campaign=1061284&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/12a/efe/c92/12aefec924fdde3d52ccb4042b2370f9.jpg" /><p><a href="https://cloud.vk.com/databases/clickhouse/">ClickHouse</a> — один из самых востребованных инструментов для хранения и анализа больших объемов данных, обеспечивающий высокую производительность и наблюдаемость сервисов и приложений. Благодаря этим параметрам многие компании внедряют его в свои ИТ-инфраструктуры для решения задач аналитики, логирования и мониторинга. Однако, несмотря на широкое распространение, практика показывает, что далеко не все команды до конца осознают все особенности и нюансы работы с этой системой, что может приводить к неэффективному использованию ресурсов, ошибкам в проектировании и снижению общей производительности.&nbsp;</p><p>Привет, Хабр. Меня зовут Александр Кривяков. Я пресейл-архитектор <a href="https://cloud.vk.com/data-platform/">VK Data Platform</a>, VK Tech. В этой статье я расскажу об основных принципах работы ClickHouse, а также покажу возможные архитектурные решения и типичные сценарии применения системы.</p> <a href="https://habr.com/ru/articles/1061284/?utm_campaign=1061284&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:55:26 GMT</pubDate>
      <dc:creator><![CDATA[akrivyakov (VK Tech, VK)]]></dc:creator>
      
      <category><![CDATA[vk cloud]]></category><category><![CDATA[clickhouse]]></category><category><![CDATA[olap]]></category><category><![CDATA[колоночное хранение]]></category><category><![CDATA[большие данные]]></category><category><![CDATA[data platform]]></category><category><![CDATA[логирование]]></category><category><![CDATA[метрики]]></category><category><![CDATA[архитектура данных]]></category><category><![CDATA[best practices]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как работать с ИИ-агентом предсказуемо: SDD, TDD, самопроверка и субагенты]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/veai/articles/1061254/</guid>
      <link>https://habr.com/ru/companies/veai/articles/1061254/?utm_campaign=1061254&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/008/590/48f/00859048f49de8d8b586bfad5bd44e7d.jpg" /><p>ИИ-агент может читать и менять файлы,&nbsp;запускать сборку,&nbsp;тесты и команды терминала.&nbsp;Сам доступ к инструментам не гарантирует,&nbsp;что агент правильно понял задачу и проверил написанный код. <strong>Эта статья подготовлена по третьему вебинару разработчиком агента Михаилом Костицыным о работе с ИИ-инструментами.&nbsp;</strong>Первые два вебинара были посвящены уровню компании и уровню проекта.&nbsp;Теперь разберем уровень пользователя:&nbsp;как построить личный процесс,&nbsp;в котором постановка задачи,&nbsp;реализация и проверка связаны в воспроизводимый процесс.</p><p>По общим тезисам каждый может проверить выводы у себя.</p><p><strong>Записи вебинаров на RuTube / YouTube:</strong>&nbsp;</p><p>Вебинар 1 — <a href="https://rutube.ru/video/e4f1dd2b59ac3abe5e9013f4c79c21df/">AI-инструменты для разработчиков 2026&nbsp;</a></p><p>Вебинар 2 — <a href="https://rutube.ru/video/e8a34e880981a3df4892b0a728d00f82/">Настройка проекта под агента</a></p><p>Вебинар 3 — <a href="https://youtu.be/MLOOqD97kEo">Как работать с ИИ-агентом: SDD, TDD, самопроверка и субагенты</a></p><p>ИИ-агент умеет читать и менять файлы,&nbsp;запускать сборку,&nbsp;тесты и команды терминала.&nbsp;Однако доступ к проекту сам по себе не гарантирует правильного результата.&nbsp;Агент может понять задачу иначе,&nbsp;смешать контекст нескольких задач,&nbsp;написать убедительно выглядящий код с ошибкой или добиться зеленых тестов,&nbsp;ослабив сами проверки.</p> <a href="https://habr.com/ru/articles/1061254/?utm_campaign=1061254&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:40:55 GMT</pubDate>
      <dc:creator><![CDATA[dirvika (Veai)]]></dc:creator>
      
      <category><![CDATA[ai-агенты]]></category><category><![CDATA[ai]]></category><category><![CDATA[ai agent]]></category><category><![CDATA[ai-agent]]></category><category><![CDATA[ide]]></category><category><![CDATA[idea]]></category><category><![CDATA[ии-агенты]]></category><category><![CDATA[программирование]]></category><category><![CDATA[тестирование]]></category><category><![CDATA[java]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Почему чистые диффузоры в кино — это тупик и куда должна развиваться генерация видео]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061292/</guid>
      <link>https://habr.com/ru/articles/1061292/?utm_campaign=1061292&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/a3b/da0/bb8/a3bda0bb8c6521dabbad1eb10d7f25a5.jpg" /><p>Сегодня хочу разобрать тему нейросетей для генерации видео. В соцсетях довольно много вижу нейрослоп-сериалов и думаю, что должен что-то сказать по этому поводу.</p><p>Я, конечно, не AI-инженер, но примерно понимаю, как это всё работает. В этой статье я разберу, как работают диффузорные ИИ-модели, чем они хороши и чем плохи, а также как можно было бы решить их проблемы.</p> <a href="https://habr.com/ru/articles/1061292/?utm_campaign=1061292&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:40:47 GMT</pubDate>
      <dc:creator><![CDATA[Vegard01Vegard]]></dc:creator>
      
      <category><![CDATA[ai]]></category><category><![CDATA[3d]]></category><category><![CDATA[generators]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как мы перестали копировать .gitlab-ci.yml и спасли пайплайны от хаоса с помощью модулей]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061280/</guid>
      <link>https://habr.com/ru/articles/1061280/?utm_campaign=1061280&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/060/d3a/5c9/060d3a5c922e8365ff155b80f2938e80.jpg" /><p>Копипаст <code>.gitlab-ci.yml</code> по десяткам сервисов привел к config drift: пайплайны расходились, а правка одной строчки требовала 10+ MR. Вынесли логику CI в отдельный репозиторий модулей, подключаемых через <code>include</code> с версионированием по SemVer — в проекте остается только короткий файл с переменными. В итоге миграция с Kaniko на BuildKit заняла 5 дней вместо 2-3 недель, а типовой багфикс на 20 сервисах — 1 час вместо 11.</p> <a href="https://habr.com/ru/articles/1061280/?utm_campaign=1061280&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Смотреть, как устроены модули -&gt;</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:27:53 GMT</pubDate>
      <dc:creator><![CDATA[dellavrite]]></dc:creator>
      
      <category><![CDATA[gitlab ci]]></category><category><![CDATA[.gitlab-ci.yml]]></category><category><![CDATA[devops]]></category><category><![CDATA[semver]]></category><category><![CDATA[yaml]]></category><category><![CDATA[gitlab ci include]]></category><category><![CDATA[gitlab ci components]]></category><category><![CDATA[cicd-catalog]]></category><category><![CDATA[cicd]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[VEGMAN R220 G3 и YADRO G4208P G3: что показали стресс-тесты серверов]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/k2tech/articles/1060922/</guid>
      <link>https://habr.com/ru/companies/k2tech/articles/1060922/?utm_campaign=1060922&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/862/607/a8e/862607a8eac80eb613c40313d7f595b9.jpg" /><p>Привет, Хабр! Меня зовут Михаил Косцов, я руководитель практики вычислительной инфраструктуры, СХД и СРК К2Тех. Для нас серверное железо – рабочий инструмент, и мы обязаны знать его возможности. Когда к нам в лабораторию попали два сервера YADRO, мы гоняли их 24 часа под полной нагрузкой, выдергивали диски на ходу и до предела грузили вычислениями.</p><p>Под катом – разбор VEGMAN R220 G3 (2U-сервер с парой Xeon Max 9480 и встроенной HBM-памятью) и YADRO G4208P G3 (4U-платформа под ИИ-нагрузки с двумя видеокартами NVIDIA H100 и парой H200). Будут бенчмарки, стресс-тесты, проверка отказоустойчивости и много графиков.</p> <a href="https://habr.com/ru/articles/1060922/?utm_campaign=1060922&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:16:52 GMT</pubDate>
      <dc:creator><![CDATA[MKostsov (К2Тех)]]></dc:creator>
      
      <category><![CDATA[yadro]]></category><category><![CDATA[vegman]]></category><category><![CDATA[YADRO G4208P G3]]></category><category><![CDATA[VEGMAN R220 G3]]></category><category><![CDATA[ит-инфраструктура]]></category><category><![CDATA[серверное железо]]></category><category><![CDATA[ии-инфраструктура]]></category><category><![CDATA[вычислительная мощность]]></category><category><![CDATA[отказоустойчивость]]></category><category><![CDATA[производительность]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Hypothesis: тесты, которые сами ищут контрпримеры к вашему коду]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/otus/articles/1058390/</guid>
      <link>https://habr.com/ru/companies/otus/articles/1058390/?utm_campaign=1058390&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/120/f5e/10f/120f5e10f7bd2d8491fdf9f46e8ea893.png" /><p>Обычные тесты находят только ожидаемые ошибки. В&nbsp;статье разберём, как&nbsp;Hypothesis сам ищет контрпримеры и сокращает их до&nbsp;минимального сбоя. </p> <a href="https://habr.com/ru/articles/1058390/?utm_campaign=1058390&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:05:51 GMT</pubDate>
      <dc:creator><![CDATA[badcasedaily1 (OTUS)]]></dc:creator>
      
      <category><![CDATA[Hypothesis]]></category><category><![CDATA[property-based testing]]></category><category><![CDATA[тестирование свойств]]></category><category><![CDATA[Python]]></category><category><![CDATA[автоматизация тестирования]]></category><category><![CDATA[генерация данных]]></category><category><![CDATA[контрпримеры]]></category><category><![CDATA[shrinking]]></category><category><![CDATA[stateful-тестирование]]></category><category><![CDATA[pytest]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[SolidJS vs React (2026)]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061268/</guid>
      <link>https://habr.com/ru/articles/1061268/?utm_campaign=1061268&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/beb/68f/b7e/beb68fb7e6fa9bf1971b9bd61e27fe91.png" /><p>React остаётся стандартом фронтенда де-факто, но за последние пару лет вокруг SolidJS сложилась устойчивая репутация "фреймворка, который сделал реактивность правильно". У Solid нет виртуального DOM, компонент выполняется один раз, а обновления идут точечно — и это не маркетинговый лозунг, а следствие конкретной архитектуры. Разберёмся, в чём именно SolidJS технически превосходит React, что по этому поводу говорят актуальные бенчмарки и опросы 2025–2026 годов, и — без прикрас — где React по-прежнему выигрывает за явным преимуществом.</p> <a href="https://habr.com/ru/articles/1061268/?utm_campaign=1061268&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:02:07 GMT</pubDate>
      <dc:creator><![CDATA[tertiumnon]]></dc:creator>
      
      <category><![CDATA[solidjs]]></category><category><![CDATA[react]]></category><category><![CDATA[signals]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Подключаем к Raspberry Pi Pico MIDI-клавиатуру и делаем музыкальный синтезатор]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/ruvds/articles/1059472/</guid>
      <link>https://habr.com/ru/companies/ruvds/articles/1059472/?utm_campaign=1059472&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/56e/636/254/56e63625439813d6722601c461ce45cf.png" /><p>Несколько лет назад я купил MIDI-клавиатуру. И как это часто бывает с вещами, о которых долго мечтал: поигрался, сбил свой интерес и положил пылиться на полку. Но вот недавно у меня возникло желание сделать из MIDI-клавиатуры синтезатор.</p><p>Многие могут спросить: а в чём проблема? Взял МIDI-клавиатуру, подключил к компьютеру или смартфону с программой и играй сколько хочешь. Но у меня другая цель — понять, как нажатие на клавишу превращается в звук.</p> <a href="https://habr.com/ru/articles/1059472/?utm_campaign=1059472&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 09:01:50 GMT</pubDate>
      <dc:creator><![CDATA[artyomsoft (RUVDS.com)]]></dc:creator>
      
      <category><![CDATA[diy]]></category><category><![CDATA[midi]]></category><category><![CDATA[dac]]></category><category><![CDATA[i2s]]></category><category><![CDATA[raspberry]]></category><category><![CDATA[raspberry pi pico]]></category><category><![CDATA[синтезатор]]></category><category><![CDATA[wavetable]]></category><category><![CDATA[usb-host]]></category><category><![CDATA[статьи_ruvds]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Почему в Linux /bin, /usr/bin, /usr/local/bin…]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061260/</guid>
      <link>https://habr.com/ru/articles/1061260/?utm_campaign=1061260&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<p>Одна из&nbsp;вещей, которые бросаются в&nbsp;глаза людям, переходящим в&nbsp;мир&nbsp;линукс‑систем из&nbsp;мира windows&nbsp;— это «странная» организация файловой системы. Почему вместо того чтобы выделить программе каталог, например <code>/myprog</code>, ее размазывают по <code>/etc</code>, <code>/usr/bin</code>, <code>/usr/lib </code>и тому подобное, «это&nbsp;же неудобно!»?</p><p>Мало того, нередко после этого человек берется <em>сделать удобнее</em>, как&nbsp;в&nbsp;Windows: эту программу мы положим в <code>/opt/prog1</code>, вон ту&nbsp;— в <code>/usr/lib/prog2</code>, третью в <code>/prog3</code>, четвертую в <code>/home/user/prog4</code>&nbsp;— а&nbsp;потом думают, как&nbsp;сделать миграцию с&nbsp;диска на&nbsp;диск и ничего при&nbsp;этом не&nbsp;потерять.</p><p>На&nbsp;самом деле, в&nbsp;именно такой структуре есть практический смысл, вернее&nbsp;— он&nbsp;был когда‑то, пока его не&nbsp;забыли за&nbsp;давностью лет, и не&nbsp;разбавили опытом DOS.</p> <a href="https://habr.com/ru/articles/1061260/?utm_campaign=1061260&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:53:15 GMT</pubDate>
      <dc:creator><![CDATA[JBFW]]></dc:creator>
      
      <category><![CDATA[linux]]></category><category><![CDATA[unix]]></category><category><![CDATA[файловые системы]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[N тел в браузере: PWA‑бенчмарк на Rust, WebAssembly и Three.js]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061258/</guid>
      <link>https://habr.com/ru/articles/1061258/?utm_campaign=1061258&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/269/db1/1ab/269db11ab12de8886433195604b68f70.png" /><p>В статье расскажу о&nbsp;PWA‑бенчмарке, который основан на&nbsp;задаче N тел. Физический движок написан на&nbsp;Rust/WebAssembly, визуализация через Three.js, и результаты запусков сохраняются в&nbsp;Supabase. Тут присутствует разбор архитектуры, сравнение алгоритмов расчета&nbsp;— прямой и Barnes‑Hut, а&nbsp;также тут расписаны проблемы, связанные с&nbsp;измерением производительности в&nbsp;браузере.</p> <a href="https://habr.com/ru/articles/1061258/?utm_campaign=1061258&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:50:31 GMT</pubDate>
      <dc:creator><![CDATA[GorkaIvan]]></dc:creator>
      
      <category><![CDATA[алгоритмы]]></category><category><![CDATA[pwa]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[От JTAG к IJTAG: зачем понадобился новый стандарт аппаратного тестирования]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/yadro/articles/1059778/</guid>
      <link>https://habr.com/ru/companies/yadro/articles/1059778/?utm_campaign=1059778&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/093/809/c6f/093809c6ff223911b1a09e7c9a96d1ef.jpg" /><p>Приветствую! На связи Антон Осетров, DFT-разработчик SoC в компании YADRO. В этой статье я хочу рассказать о вызовах в тестировании SoC, о том, как они изменялись со временем и как с этим связан переход от аппаратного интерфейса JTAG к IJTAG.</p> <a href="https://habr.com/ru/articles/1059778/?utm_campaign=1059778&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:39:39 GMT</pubDate>
      <dc:creator><![CDATA[antoshaos (YADRO)]]></dc:creator>
      
      <category><![CDATA[jtag]]></category><category><![CDATA[ijtag]]></category><category><![CDATA[design for testability]]></category><category><![CDATA[dft]]></category><category><![CDATA[ieee1500]]></category><category><![CDATA[снк]]></category><category><![CDATA[soc]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Дальняя связь на модулях LoRa: принимаем сигнал ниже уровня шума]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/first/articles/1060974/</guid>
      <link>https://habr.com/ru/companies/first/articles/1060974/?utm_campaign=1060974&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/f4b/5bb/f8e/f4b5bbf8eef7ed56ec4626dbadf7b45c.png" /><p>Это первая статья в серии про LoRa — технологию передачи данных, способную работать с сигналами ниже уровня шума. Протокол LoRa позволяют передавать данные на километры с очень небольшой мощностью передатчика — порядка 10 мВт или 10 дБм. При этом модули LoRa потребляют так мало энергии, что могут работать от одной зарядки аккумулятора год или больше.</p><p>На базе LoRa делают системы сбора данных с обширных территорий без подключения к интернету. Это могут быть, например, данные от счетчиков воды и электроэнергии, погодных станций, газовых котлов и другого оборудования. Также можно управлять устройствами на больших расстояниях.</p><p>С помощью LoRa можно сделать шлюз, который будет работать далеко от зоны покрытия интернета. Можно даже настроить передачу сообщений на большие расстояния вообще без интернета.</p><p>Из этой статьи вы узнаете, как появились устройства LoRa и почему они могут принимать сигналы ниже уровня шума. Вы узнаете, как работать с модулями LoRa, подключенными к микрокомпьютеру Raspberry Pi, научитесь конфигурировать эти модули с учетом ограничений законодательства, а также передавать с их помощью сообщения на километры. В завершение статьи я расскажу, как сделать простую погодную станцию, измеряющую температуру, давление и влажность. Данные будут передаваться через LoRa и отображаться на OLED-мониторах, подключенных к передатчику и приёмнику.</p> <a href="https://habr.com/ru/articles/1060974/?utm_campaign=1060974&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:35:48 GMT</pubDate>
      <dc:creator><![CDATA[FirstJohn (FirstVDS)]]></dc:creator>
      
      <category><![CDATA[LoRa]]></category><category><![CDATA[LoRaWAN]]></category><category><![CDATA[Chirp Spread Spectrum]]></category><category><![CDATA[радиосвязь]]></category><category><![CDATA[беспроводная связь]]></category><category><![CDATA[Raspberry Pi]]></category><category><![CDATA[IoT]]></category><category><![CDATA[интернет вещей]]></category><category><![CDATA[радиомодули]]></category><category><![CDATA[OLED]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Perseus: фреймворк для универсальной персонализации на основе гетерогенных событий]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/tbank/articles/1061236/</guid>
      <link>https://habr.com/ru/companies/tbank/articles/1061236/?utm_campaign=1061236&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/65e/661/803/65e661803a006fed7d4250c586007765.jpg" /><p>Привет! Я Олег Лашинин, руковожу направлением рекомендательных систем в Т-Банке. Когда в экосистеме десятки сервисов — от покупки продуктов в супермаркетах до оформления ипотеки, хочется, чтобы модель понимала пользователя целиком, а не по кусочкам. Но каждая команда собирает свои данные, у событий разные схемы, а в новых сервисах нет истории.&nbsp;</p><p>Большинство моделей было построено только на данных того сервиса, где они применяются. Мы решили эту проблему, объединив все действия пользователя в единую последовательность, и на ее основе построили фреймворк Perseus.&nbsp; Он позволяет масштабировать ML персонализацию на разные продукты и сервисы компании, так как является гибким инструментов для работы с экосистемными данными. В разных задачах нам удалось сразу повысить бизнес-метрики от 3% до&nbsp; 17% — даже если у пользователя не было ни одной покупки.</p> <a href="https://habr.com/ru/articles/1061236/?utm_campaign=1061236&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:31:01 GMT</pubDate>
      <dc:creator><![CDATA[fotol (Т-Банк)]]></dc:creator>
      
      <category><![CDATA[рекомендательные системы]]></category><category><![CDATA[машинное обучение]]></category><category><![CDATA[open source]]></category><category><![CDATA[трансформеры]]></category><category><![CDATA[персонализация]]></category><category><![CDATA[фреймворк]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как мы измеряем производительность NGFW]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/ideco/articles/1061244/</guid>
      <link>https://habr.com/ru/companies/ideco/articles/1061244/?utm_campaign=1061244&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/c55/012/c93/c55012c930a1ea29586f9a04ab0805eb.png" /><p>Привет, Хабр! Меня зовут Максим, я инженер команды Нагрузочного тестирования в Ideco. Вместе с командой мы развиваем Ideco NGFW Novum и регулярно гоняем его под синтетической нагрузкой - и для проверки регрессии по производительности, и чтобы честно отвечать на вопрос заказчика «а сколько он у вас держит».</p><p>У производительности NGFW есть неудобное свойство: один и тот же межсетевой экран на двух разных стендах легко показывает разные числа - и оба теста при этом честные. Причина в том, что производительность - не константа, «зашитая в железо», <strong>и сильно зависит от методики</strong>. Один тестировщик меряет «голый» форвардинг, другой - HTTP на крупных объектах; один требует ноль потерь, другой допускает процент; один снимает пиковые цифры, другой держит нагрузку несколько минут; на одном стенде стоит свежая сборка, на другом - версия постарше. Поменяйте один параметр - и результат меняется в разы. Сравнивать цифры имеет смысл только тогда, когда выложены обе методики.</p><p>Поэтому мы в этой статье говорим о том, <strong>как всё устроено у нас</strong>: как собран стенд, почему генератор - TRex в режиме ASTF, что именно мы считаем «потерей» и какой у нас критерий успешности по дропам, как бинарным поиском находим максимум и зачем удерживаем каждую точку 300 секунд. Цель - чтобы наши измерения мог воспроизвести любой и точно понять, что стоит за каждой цифрой. В конце отдельно разберём, <strong>почему два честных стенда легко получают разные числа</strong> - это не «у кого-то ошибка», а сумма методических решений.</p><p>И сразу честно: производительность это диапазон, значений зависящий от реальной нагрузки, которая зачастую уникальна у каждого - своя. Наша цель - измерение производительности в лабораторных условиях, которые приближены к реальным, а не рекорд за одну секунду. Намерить больше можно - но это будет число, которого пользователь никогда не увидит в бою.</p> <a href="https://habr.com/ru/articles/1061244/?utm_campaign=1061244&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:15:38 GMT</pubDate>
      <dc:creator><![CDATA[Ideco (Ideco)]]></dc:creator>
      
      <category><![CDATA[ideco ngfw novum]]></category><category><![CDATA[trex]]></category><category><![CDATA[astf]]></category><category><![CDATA[межсетевой экран]]></category><category><![CDATA[пропускная способность]]></category><category><![CDATA[производительность]]></category><category><![CDATA[emix]]></category><category><![CDATA[ngfw]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Старая архитектура, новые процессоры: зачем AMD продолжает выпускать Zen 2]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/ru_mts/articles/1061234/</guid>
      <link>https://habr.com/ru/companies/ru_mts/articles/1061234/?utm_campaign=1061234&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/562/4bf/e1e/5624bfe1ed89700b185ca95454a4f0d0.png" /><p>Кажется, что в процессорном мире все идет строго по плану: вышла Zen 5, готовится следующее поколение, а сокет AM5 постепенно становится основной платформой AMD. На этом фоне немного странно видеть в продаже процессоры с архитектурой 2019 года. И речь не о складских остатках, а о вполне новых моделях.</p><p>Вот наглядный пример — в марте 2026 года <a href="https://www.tomshardware.com/pc-components/cpus/amd-revives-aging-zen-2-processor-for-budget-pcs-ryzen-7-4700le-resurfaces-in-a-new-usd800-rtx-3050-prebuilt">вышел</a> Ryzen 7 4700LE. Восемь ядер, шестнадцать потоков, теплопакет 65 Вт, никакой встроенной графики и все тот же сокет AM4. В его основе лежит архитектура Zen 2 и кристалл Renoir, давно знакомый по мобильным процессорам. Теперь этот чип используют в недорогих игровых сборках с RTX 3050 с ценой примерно 800 долларов. Возникает закономерный вопрос: зачем AMD продолжает выпускать процессоры на архитектуре и платформе, которые, казалось бы, уже давно должны были уйти в прошлое?</p> <a href="https://habr.com/ru/articles/1061234/?utm_campaign=1061234&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:09:38 GMT</pubDate>
      <dc:creator><![CDATA[t3chnowolf (МТС)]]></dc:creator>
      
      <category><![CDATA[чипы]]></category><category><![CDATA[amd]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Автостратегии Директа как задача ML на малых данных: почему 10 000 ₽ в неделю кампанию не обучат]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061240/</guid>
      <link>https://habr.com/ru/articles/1061240/?utm_campaign=1061240&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/458/7ae/66b/4587ae66b8e139f4a0b04a37c50110bf.jpg" /><p>Кампания с недельным бюджетом 10 000 ₽ в нише, где заявка стоит около 5 000, не обучится никогда — и автостратегия тут ни при чём. Ей просто не на чем учиться: за неделю она не наберёт даже двух заявок, а без набранных заявок look-alike нечем строить закономерность. Это школьная арифметика, и желание заказчика на неё не влияет.</p><p>Я веду Яндекс Директ в недвижимости, и почти любой спор «автостратегии всё сливают» против «ручное управление умерло» у меня на глазах сводится к одному инженерному вопросу: наберёт ли алгоритм достаточно размеченных данных, чтобы обучиться в этих конкретных условиях. Стоит посмотреть на автостратегию как на классификатор, которому нужна минимальная обучающая выборка положительных примеров за единицу времени, — и половина мифов вокруг неё отваливается сама.</p><p>Дальше — как этот классификатор устроен под капотом (упрощённо, детали Яндекс не раскрывает), почему ему нужен объём, где вместо него честнее ручные ставки и как «удобная» цель тихо ломает всю оптимизацию. В конце — таблица по шести типовым сценариям недвижки. Если у вас поток в сотни конверсий в неделю, большая часть проблем ниже вас не касается: там автостратегии просто работают, и это нормально.</p> <a href="https://habr.com/ru/articles/1061240/?utm_campaign=1061240&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:08:05 GMT</pubDate>
      <dc:creator><![CDATA[aptern]]></dc:creator>
      
      <category><![CDATA[автостратегии]]></category><category><![CDATA[контекстная реклама]]></category><category><![CDATA[машинное обучение]]></category><category><![CDATA[веб-аналитика]]></category><category><![CDATA[недвижимость]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Ни одного ложноотрицательного: пишем Фильтр Блума на C]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/timeweb/articles/1055544/</guid>
      <link>https://habr.com/ru/companies/timeweb/articles/1055544/?utm_campaign=1055544&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/ce9/431/0f6/ce94310f6cb211fb3ae62fda91e075bc.png" /><p>Представьте: вы пишете парсер, который обходит сотни миллионов URL. Каждую новую ссылку нужно проверить — посещали ли мы её раньше? Заводить гигабайтный хеш-набор для хранения всех адресов — расточительно и медленно.</p><p>Но существует вероятностная структура данных, которая способна ответить на вопрос «видели ли мы этот URL?», занимая при этом в десятки раз меньше памяти, чем полное множество строк. Плата за такое — мизерная возможность ложноположительного срабатывания, где алгоритм заявит что URL есть, хотя на самом деле он новый. Зато на вопрос «не видели?» она не ошибётся никогда.</p><p>Это и есть Фильтр Блума, созданный Бёртоном Блумом аж в 1970 году. Более полсотни лет этому алгоритму! В принципе, никогда не помешает освежить знания и вспомнить, как писать реально оптимизированное ПО.</p> <a href="https://habr.com/ru/articles/1055544/?utm_campaign=1055544&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 08:05:46 GMT</pubDate>
      <dc:creator><![CDATA[DrArgentum (Timeweb Cloud)]]></dc:creator>
      
      <category><![CDATA[структуры данных]]></category><category><![CDATA[алгоритмы]]></category><category><![CDATA[вероятностные алгоритмы]]></category><category><![CDATA[вероятностные структуры данных]]></category><category><![CDATA[вероятностное программирование]]></category><category><![CDATA[bloom filter]]></category><category><![CDATA[фильтр блума]]></category><category><![CDATA[c]]></category><category><![CDATA[timeweb_статьи]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Скрытый control plane в k8s]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061228/</guid>
      <link>https://habr.com/ru/articles/1061228/?utm_campaign=1061228&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/b7f/58d/cc0/b7f58dcc0d6bdb24f8e186be844875a8.webp" /><p>Рассмотрим нестандартный вариант установки Kubernetes, а именно установка кластера без control-plane ноды как таковой в стандартном ее восприятии. Установим кластер Kubernetes где слой control-plane будет просто хостом без CRI, только базове systemd сервисы. "Спрячем" control-plane от лишних глаз.</p> <a href="https://habr.com/ru/articles/1061228/?utm_campaign=1061228&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 07:35:43 GMT</pubDate>
      <dc:creator><![CDATA[otopy]]></dc:creator>
      
      <category><![CDATA[kubernetes]]></category><category><![CDATA[k8s]]></category><category><![CDATA[cilium]]></category><category><![CDATA[control plane]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[«Приватное» оказалось не приватным: разбираю свежий Gitea auth-bypass на живом стенде]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061222/</guid>
      <link>https://habr.com/ru/articles/1061222/?utm_campaign=1061222&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/f99/0a7/db4/f990a7db4a5359b121fa53b7a1c9f023.png" /><p>Self-hosted git ставят ради приватности кода. А оказалось, что “приватное” в Gitea открывается одним HTTP-заголовком: без пароля утекают секреты из приватных репозиториев и открывается админка. Поднял уязвимую версию на стенде, воспроизвёл атаку целиком, показал как ловить в логах и чинить. И почему это не единичный баг, а паттерн 2026 года.</p> <a href="https://habr.com/ru/articles/1061222/?utm_campaign=1061222&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 07:33:42 GMT</pubDate>
      <dc:creator><![CDATA[CynepMyx]]></dc:creator>
      
      <category><![CDATA[gitea]]></category><category><![CDATA[CVE-2026-20896]]></category><category><![CDATA[docker]]></category><category><![CDATA[reverse proxy]]></category><category><![CDATA[auth bypass]]></category><category><![CDATA[self-hosted]]></category><category><![CDATA[forgejo]]></category><category><![CDATA[безопасность данных]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как VPS с 1 ГБ RAM пережил 1,2 млн запросов за сутки: разбираю «Шакализатор» по слоям]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1061220/</guid>
      <link>https://habr.com/ru/articles/1061220/?utm_campaign=1061220&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/e8c/0ff/fa5/e8c0fffa5611cbc439885908a648f87c.png" /><p>Мой мемный сервис <a href="https://habr.com/ru/articles/1027376/" rel="noopener noreferrer nofollow">«Шакализатор»</a> победил в <a href="https://habr.com/ru/news/1060170/" rel="noopener noreferrer nofollow">премии Яндекс Практикума</a>, но меня больше интересовал другой вопрос: как VPS с одним ядром и 1 ГБ RAM пережил 1,2 млн запросов за сутки?</p><p>Серверную часть в основном писал Codex, а я во время наплыва обновлял статистику и ждал падения. Теперь разбираю код, логи и серверные срезы: что именно спасло систему, где нам просто повезло и почему миллион запросов оказался не тем, чем кажется.</p> <a href="https://habr.com/ru/articles/1061220/?utm_campaign=1061220&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Почему он не упал</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 07:27:13 GMT</pubDate>
      <dc:creator><![CDATA[JuxaDan]]></dc:creator>
      
      <category><![CDATA[Node.js]]></category><category><![CDATA[Next.js]]></category><category><![CDATA[Nginx]]></category><category><![CDATA[VPS]]></category><category><![CDATA[highload]]></category><category><![CDATA[кэширование]]></category><category><![CDATA[ограничение конкурентности]]></category><category><![CDATA[graceful degradation]]></category><category><![CDATA[Codex]]></category><category><![CDATA[swap]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Oversampling]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1060988/</guid>
      <link>https://habr.com/ru/articles/1060988/?utm_campaign=1060988&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/0de/605/1eb/0de6051eb13a09805b3a7d2d9c449690.png" /><p>В <a href="https://habr.com/ru/articles/1028062/" rel="noopener noreferrer nofollow">предыдущей статье</a> мы рассмотрели применение платы Arduino Due для измерения сигналов вибрации при балансировке роторов.<br>Поскольку процесс измерения в этом случае должен быть синхронизирован с частотой вращения ротора, мы использовали "адаптивную" частоту дискретизации, то есть частота дискретизации рассчитывается таким образом, чтобы на периоде выборки укладывалось заданное число оборотов ротора. Исходя из объема памяти данных платы Arduino Due объем выборки составил 8192 отсчета 2 байта*4 (исторически сложилось) канала. <br>При этом период дискретизации (требуемое время между отсчетами АЦП) может быть гораздо больше, чем время преобразования АЦП, то есть АЦП может брать отсчеты гораздо чаще, чем нам требуется, исходя из нашей задачи. Поэтому становится возможным применить&nbsp; oversampling (оверсэмплинг) для повышения разрешения и улучшения соотношения сигнал/шум</p> <a href="https://habr.com/ru/articles/1060988/?utm_campaign=1060988&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 21 Jul 2026 07:15:40 GMT</pubDate>
      <dc:creator><![CDATA[diakin]]></dc:creator>
      
      <category><![CDATA[oversampling]]></category><category><![CDATA[оверсэмплинг]]></category><category><![CDATA[вибрация]]></category><category><![CDATA[балансировка роторов]]></category>
    </item>
  

  

  

	
  

  

  

      

      

      

    
  </channel>
</rss>
