Мы получили 1022 заявки, приняли из них 918, в шорт‑листы попало более 300 статей. Точной цифры по шорт‑листам нет неслучайно: поскольку наш естественный интеллект это вам не ChatGPT склонен уставать и ошибаться, несколько статей могут попасть в шорты, но, скорее всего, выпадут из них — так, во время подготовки этой статьи выяснилось, что из финала выбыли двое участников, скрывшие свои публикации в черновики.

Вообще, такого «Технотекста», как в этот раз, ещё не было: обычно мы сравнительно легко отсеивали участников и выбирали финалистов, разница в уровне материалов была очевидной. В этот раз номинанты сильные — и многие статьи не вышли в финал не потому, что они какие-то не такие, а потому что они объективно слабее лучших из лучших — но очевидно, что сильнее большей части статей на Хабре. Хотя участники «Технотекста» из года в год находят отличные способы добить нервную систему модераторов конкурса ?

Что необычного было в этом году:

  • Некоторые авторы переноминировались по 2–3 раза.

  • Кто‑то успел изменить статью к финалу, и за прежним заголовком уже совсем другой контент (а заодно путёвка в черновики).

  • Часть авторов скрыли статьи в черновики уже в ходе конкурса — но мы уже тёртые калачи, поэтому перепроверили все 1022 статьи руками в праздничные дни (а заодно откорректировали шорт‑листы).

  • Главный ужас номер 2: некоторые авторы исхитрились подать по 2–3 завяки с разных почт, которые удалось заметить только по никам и добавило нам дополнительную рутину в проверку (которую мы в новом конкурсе автоматизируем).

  • Главный ужас номер 1, от которого иногда опускались руки и в прямом смысле наворачивались слёзы (нет, не счастья): отдельные компании подали на конкурс все или почти все статьи блога за год. Хочется спросить: ребят, а вы правда не можете ранжировать публикации и разобраться, какие более достойные (и вот этот топ-3 или топ-5 отправить на конкурс)? От того, что пришло 15–20 заявок среднего уровня, шансы выиграть не растут — этому мешает как раз этап ручного отбора листа финалистов. Вы просто отняли огромное количество времени и сделали так, что конкурс едва не сдвинулся по срокам ещё на эту рабочую неделю — просьба потом не писать, как так вышло, что при отправленном количестве статей победителя так и не нашлось. Ну да ладно, победы никто и не обещал, выдыхаем.

Что дальше?

Большинство протоколов уже уехали к членам жюри. Они оценивают статьи и присылают протоколы.

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

Скорее всего, 28 мая часов в 15–16 мы проведём большой онлайн по итогам «Технотекста», где проанализируем ход конкурса и расскажем что‑нибудь интересное о работе авторов на Хабре.

А затем начнётся медленный (традиционно!), но приятный процесс сбора адресов и рассылки призов победителям. Все желающие могут зайти в гости в офис Хабра и забрать призы из рук @Boomburum

Благодарность ❤️

Отдельным пунктом перед публикацией шорт-листов хочется поблагодарить компании, которые придумали (или выбрали) и поддержали некоторые номинации:

Отдельная благодарность — авторам идеи первой в истории «Технотекста» номинации от сообщества («Разработка технической документации») — девчонки пришли и просто продавили необходимость этого раздела конкурса.


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

Важно: если вы не попали в число финалистов, пожалуйста, не громите саппорт Хабра, а лучше сперва просмотрите опередившие вас статьи, подумайте, что вы можете доработать и реализовать в новом году, чему научиться. Если вам совсем грустно, о причинах непопадания в шорт-листы можно пообщаться через почту neo@habr.com (мы не сразу, но ответим). 

Тестирование

Kaspresso для самых маленьких

Junior

Разработка через тестирование. Совместное использование JUnit 5 и Mockito

Junior

Чит-лист функционального тестирования, памятка тестировщику

Junior

Как мы за год в 5 раз снизили количество приемочных багов через shift left testing

Junior

Путь к надёжности: как QA инженеру действовать в нестандартных ситуациях 

Junior

Как моя 9-месячная дочь заработала больше 1000 долларов в программе bug bounty

Junior

Экзотические баги и их устранение 

Junior

Маленькая история импортозамещения о разработке системы автоматического мониторинга моделей Alfa-MRM

Junior

Разбираемся в REST assured как новичок и не только

Junior

Как впилить Allure TestOps в свой проект, если ты простой тестировщик

Junior

Как написать идеальный автотест: 25 джедайских принципов

Middle

Изучаю мок-сервера и пишу свой

Middle

Сквозь время – ускоряем автотесты

Middle

А у вас в окнах дырки! Пентесты Windows-приложений: кейсы, инструменты и рекомендации

Middle

Самодельные инструменты для тестирования продукта, или DIY в разработке 

Middle

Один на 150 миллионов операций. Расследуем причины выброса времени отклика в операциях ввода-вывода

Middle

TMS на замену TestRail: писали для себя, а выложили в open source

Middle

Измеряй и властвуй: как мы покрытие автоматическими тестами измеряли 

Middle

Как сделать единый заглушечный контур и освободить себя от рутины

Middle

Как мы автоматизировали тестирование OpenStack с помощью Rally и Tempest

Middle

От проверки шрифтов до HAR-файлов: оцениваем инструменты для ускорения работы тестировщиков 

Middle

Как сделать автотесты гибкими и лаконичными

Middle

Настройка Selenoid для запуска UI-тестов на Android

Middle

Как мы играли в тесты на Groovy и проиграли

Middle

Уравнение с тремя неизвестными: как отлавливать баги в системах хранения данных

Middle

Как протестировать Android-приложение, которому требуются разрешения

Middle

Встроенные фикстуры Pytest

Senior

Эмулятор QUIK: как наладить тестирование вендорного продукта 

Senior

Как приручить автотестового монстра, или Dependency Injection в автотестах

Senior

Как тестировщики с помощью пользовательского десктопа и видеокарты инфраструктуру строили 

Senior

Администрирование

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal

Студент

Знакомство с IPv6 на практике

Junior

Подойдет ли PostgreSQL вообще всем проектам или нужны альтернативы

Junior

Кто победит: средненагруженный Kubernetes или простой list-запрос?

Junior

Работа с хранилищами в Kubernetes: руководство для инженеров

Junior

Организация стенда локальной разработки для самых маленьких с автоматической пересборкой приложения (фронтенд + бэкенд)

Junior

Зеркалирование GitHub-проектов в 2023 году

Junior

Не все логи одинаковы полезны: 3 истории из жизни

Junior

Тонкости настройки Grafana Loki

Middle

Gitlab-ci модульные pipelines для вашего enterprise

Middle

Dedup Windows vs Linux, MS снова “удивит”?

Middle

Оптимизация DevOps: Как персональные стенды и Grafana улучшают разработку и мониторинг 

Middle

KeyDB и Redis: в поисках серебряной пули — in-memory replicated DB (Replicated IMDB)

Middle

Гибридный Kubernetes-кластер из bare metal и динамически подключаемых облачных виртуальных машин

Middle

Kubernetes API и FlowControl: как контролировать количество и очередность запросов 

Middle

Что ты такое, dhclient?

Middle

Настраиваем управление секретами с Yandex Lockbox, AWS Secret Manager, Vault Secrets и shell-operator

Middle

7 петабайт логов в Elastic

Middle

Как ограничить количество выполняющихся задач в Jenkins при вызове parallel: сравниваем решения

Middle

Пишем свой драйвер Molecule без костылей и боли

Middle

Бесшовный апгрейд ПО для системы хранения данных: как организовать и улучшить 

Middle

Что такое GitOps и почему он (почти) бесполезен

Middle

Зачем рассказывать про контейнеризацию в 2023 году

Middle

Раскрываем секреты загрузочных ISO-образов

Middle

GitOps-платформа на базе Argo CD

Middle

Что будет, если переименовать суперпользователя? Экспериментируем, удивляемся и расстраиваемся… 

Middle

Это вам не x86_64. Проблемы сборки Arch Linux под ARM-архитектуру и как мы их решали

Middle

Нужна ли вам Kafka? Разбираемся в технологии и собираем простое приложение на базе managed-решения

Middle

Как работают объектные хранилища: OpenStack Swift

Middle

Press F, чтобы рассчитать использование облачных ресурсов

Middle

Квоты в Kubernetes: очевидные, менее очевидные и совсем не очевидные

Middle

Первый взгляд на Termit 2.0 — российскую систему терминального доступа

Middle

Незаменимых нет. Сервис на базе Nextcloud вместо привычных корпоративных облаков 

Middle

Запуск проекта в Kubernetes за 60 минут: инструменты, GitLab, Terraform

Middle

Приручаем GitLab: прикольные фишки и инциденты, которые упростят вашу жизнь 

Middle

Собираем и запускаем Linux-0.01 в Minix 1.5, (почти) как это делал Линус Торвальдс

Senior

Atlas — инструмент управления схемами миграций БД с открытым исходным кодом: наш опыт и ошибки создателей

Senior

Как настроить миграцию etcd между облачными кластерами Kubernetes и избежать простоев

Senior

Наши 5 лет с инфраструктурой «ВсеИнструменты.ру»: от нескольких ВМ до отказоустойчивого решения в трёх дата-центрах

Senior

Через реки, через лес прямо к PowerDNS

Senior

Как мы силами команды РСХБ построили свое облако

Senior

Стеклянная луковица dns внутри k8s

Senior

Захватывающая ловля багов, которые портили работу Unbound

Senior

Секреты в kubernetes используя Hashicorp Vault + External Secrets Operator

Senior

Совершенствуем UX. Разговоры о серьёзном с администраторами

Senior

История о жрущем память API-сервере Kubernetes

Senior

Как мы производительность блочного pNFS измеряли

Senior

Как мы боролись с овербукингом Kubernetes-кластеров

Senior

Карьера и образование

Ликбез по вхождению в Data Science: что для этого нужно и стоит ли пытаться?

Студент

Это база. Как прокачиваются сервисные инженеры КРОК

Студент

Чего боятся стажеры? {Спойлер: всех отвлекать, все поломать, чего-то не знать, на код-ревью завалиться…}

Студент

Почему я больше не буду работать наставником на IT-курсах

Junior

Как жизнь сортирует нас пузырьком, или Почему в ИТ войдут не все

Junior

Учебное проектирование для джунов: как учить и зачем

Junior

Как вырастить ИТшника или принстонский Computer Science для школьников

Junior

IT-Екатеринбург: как из заводской культуры выросли IT-слоны и поколение айтишников 

Junior

Как стать iOS-разработчиком? 

Junior

AI Talent Hub: как мы создаем лучшую онлайн-магистратуру по искусственному интеллекту

Junior

Найти работу после курсов: дорога слёз тестировщика-новичка

Junior

Заповеди начинающего DS

Junior

Отстаньте от разработчиков: не надо делать их руководителями просто ради грейда

Junior

Остаться в живых. Токсичность в ИТ глазами девушки-лида

Junior

Откровения хэдхантеров. Как изменился рынок труда в IT за три года

Junior

Обещания — настоящие и не очень

Junior

Почему много записей в трудовой – это не приговор

Junior

Из PM-ов в разрабы. Шаг назад для продвижения вперёд

Junior

Эйчары такие противные девочки, которые отказывают из-за цвета глаз: найм глазами IT-рекрутера

Junior

Из тестирования в техподдержку и обратно

Junior

Как я устроился в Амазон и перестал переживать за свой английский

Junior

Как решать конфликты с уважением к себе и оппонентам? Гайд по ненасильственному общению 

Junior

Зачем компании Skills Set и можно ли разложить по полочкам навыки разработчиков

Junior

Что я делал, когда развивал свою карьеру бэкенд разработчика

Junior

Как стать руководителем и не помереть

Junior

Как поддерживать себя в кибербезопасной форме: инструкция по самообразованию в IT на примере ИБ

Junior

Быть или не быть тимлидом – вот в чём вопрос

Junior

Как распаковать айтишника и настроить цикл управления знаниями

Junior

Системная ошибка рынка труда или почему не хватает технических писателей со знанием языков разработки и API

Junior

«Пофиксил две своих проблемы, а вылезло еще шесть». Честные кейсы наших IT-стажеров 

Junior

Как учиться учиться и для чего интровертам телеграм-канал

Junior

GSM NetMonitor для гика и преподавателя

Middle

Я — айтишник, я не хочу много знать

Middle

Как создать внутреннюю базу знаний для большой IT-компании. Из хаоса в гиперспейсы

Middle

Две культуры программирования: почему обе из них важны?

Middle

Курс на Linux — как сделать обучающий курс с нуля, и при чём тут опоссумы?

Middle

Математическое моделирование технологических объектов и систем глазами и руками студента 

Middle

Из сетевых администраторов в CloudOps: особенности перехода и трудности онбординга 

Middle

Почему я возмущен хабрапостом на 75 минут, или Вы неправильно нанимаете DevOps

Middle

От многофункциональной платформы до кнопки на сайте: как и почему изменились функции продакт-менеджера

Middle

Шпаргалка для алгособеса — алгоритмическая сложность, структуры данных, методы сортировки и Дейкстра 

Middle

Как подготовиться к собеседованию: несколько советов, чтобы повысить ваши шансы на трудоустройство 

Senior

Как составить резюме, чтобы его точно открыл HR. Метод бутерброда

Senior

Что бесит рекрутеров и соискателей на интервью. Собрала топ-5 триггеров 

Senior

Как работать в кайф. How to от тестировщицы, которая вынесла уроки после выгорания

Senior

Старикам тут не место: есть ли эйджизм в ИТ

Senior

Информационная безопасность

Анализирую прошивки контроллеров Schneider Electric

Junior

«Барби»: какие проблемы инфобеза может показать нам Барбиленд 

Junior

Законно ли хранить код на GitHub?

Junior

Как выращивать SOC на корпоративной ферме

Junior

Капитан ФСБ, шпионы и подставной гендиректор: разбираем атаку на нашего топ-менеджера

Junior

Все еще работаете с access token на клиенте? Тогда мы идем к вам

Junior

LAN-party для пентестеров: прорываемся к домен контроллеру через розетку 

Junior

Начальная дипфейкология: как сделать, как распознать (испытано на себе) 

Junior

Что делать, если вы не согласны на обработку ваших персональных данных?

Junior

Ваших соседей пошифровали! Прямой репортаж с места событий

Junior

Фишинг «фичи» Телеграма

Junior

Почему пароли безнадежно устарели и зачем ими до сих пор пользуются?

Junior

Как Apple на самом деле следит за вами

Junior

Анонимная сеть в 200 строк кода на Go

Middle

Исследуем саундбар Yamaha YAS-109

Middle

Уязвимость XXE в .NET 6 SDK: с чем боролись…

Middle

Добавили бота в свой Telegram канал? Будьте готовы с ним попрощаться

Middle

Сканер установленных перехватчиков в памяти процесса

Middle

Перехват трафика как вектор атаки на пользователей блокчейн-проектов 

Middle

ИБ и ИТ, давайте жить дружно. Вот как это возможно

Middle

Действительно ли C++ — лучший язык, чтобы выстрелить себе в ногу?

Middle

ПЛК Mitsubishi: как разобрать сетевой протокол и найти уязвимости в устройстве без использования прошивки

Middle

Адаптивная СЗИ и другие биологические аналогии в информационной безопасности 

Senior

Как превратить DevOps-пайплайн в DevSecOps-пайплайн. Обзор концепции Shift Left

Senior

Keycloak в Enterprise: сквозной проход по внешним и внутренним сервисам

Senior

Standoff 365. Самое красивое недопустимое событие в деталях

Senior

Как обнаружить хакера на этапе дампа учетных данных в Windows?

Senior

Эксперименты с Golden Ticket

Senior

На GitHub больше 1 000 уязвимых репозиториев: в чём суть угрозы и что с этим делать 

Senior

Security Champions: безопасность через мотивацию и бенефиты

Senior

Через тернии к звёздам: строим SSDLC на OpenSource-компонентах

Senior

Фулстэк

Как я пытался облегчить работу в поликлинике

Студент

Создание красивого Desktop-приложения на Python (customtkinter)

Junior

Выбираем формат хранения данных в экосистеме Hadoop

Junior

Упрощаем себе жизнь при разработке интерфейса взаимодействия приложения и БД 

Junior

Github Actions. Простой пример для уверенного знакомства

Junior

Как опубликовать свое первое приложение на Django и не упасть духом. Гайд для выпускников курсов

Junior

GET запросы на практике: правила, принципы и примеры

Junior

Как быстро написать API на FastAPI с валидацией и базой данных

Junior

Новый взгляд на Maven-plugin для IDEA — GMaven

Middle

Как я сделал проект для себя и получил приз от Telegram

Middle

Python и Excel. Прочитать и не потерять

Middle

«Разгоняем» HashSet, HashMap и циклы на примере Dart 

Middle

Пуш-уведомления RuStore

Middle

Создание шаблонов сайта в Joomla 4+ 

Middle

Как поиск жилья заставил менеджера вспомнить программирование и уйти из Яндекса

Middle

Как потратить дни, чтобы сэкономить секунды: продвинутые коммиты в GitLab 

Middle

«Хватит программировать в YAML и JSON!»: неочевидные проблемы шаблонизирования 

Middle

Принципы непрерывного рефакторинга

Senior

Обзор подходов к проблеме шероховатости фольги при проектировании высокоскоростных плат 

Senior

Как избежать проблем при запуске MVP

Senior

Как адаптировать Android-приложение под Huawei

Senior

Фронтенд

Роадмэп по современному фронтенду от KTS

Студент

WebAssembly: короткий обзор ассемблера для фронтенда

Junior

Кастомизируем VS Code для веб-разработки

Junior

Библиотека Scout — быстрый и безопасный DI на Kotlin

Junior

CSR, SSG, SSR — про рендеринг приложений на примерах

Junior

Интегрируем Яндекс Музыку в Visual Studio Code

Junior

Трудности маскирования текстового поля

Junior

Создание плагина для Фигмы: дизайнеры захотели — разработчик подсуетился 

Junior

Ручная отладка мобильного фронтенда с нуля до PRO за 30 минут

Junior

Сокровища HTML: 7 тегов, которые упростят вам жизнь

Junior

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи

Junior

Если ваш фронтендер перестал бояться IE6, покажите ему SmartTV

Junior

Полное понимание асинхронности в браузере

Junior

Изнутри: Swift макрос — #Preview

Junior

Flutter и фриланс в школе

Junior

Дебаггинг приложения без Xcode. Зачем?

Junior

Хитрый виджет: разбор тестового Flutter-задания. Детективная нуар-история 

Middle

Open-source блокнот Wolfram Language или как воссоздать минимальное ядро Mathematica на Javascript и не только

Middle

Как использовать html-элемент <dialog>?

Middle

Осознанная оптимизация Compose 

Middle

Как Google победила фрагментацию и возвращает контроль над Android

Middle

Внедрение pet-проекта в реальный бизнес или как в одиночку написать ERP-систему для общепита

Middle

Микрофронтенды — универсальное решение всех проблем или просто удобный подход? 

Middle

Что будет если команда, не видавшая Compose, решила делать новую сложную фичу на нём?

Middle

iOS-разработка со SnapKit: спасаем консоль от простыни ошибок и ускоряем отрисовку UI

Middle

SimpleUI — фреймворк для быстрого создания бизнес приложений на Android

Middle

SwiftUI ScrollView и параллакс без тормозов

Middle

Зачем и как в Альфе была написана библиотека для скриншот тестов под Android

Middle

KMP глазами iOS-разработчика 

Middle

Как мы приложение Додо Пиццы на арабский переводили

Middle

5 новинок CSS в адаптивной верстке, которые можно использовать уже сейчас 

Middle

Как мы запускали демоприложения 

Middle

Особенности SRE и Observability в мобильных приложениях

Middle

Битва CLIs: почему мы отказались от Angular CLI в пользу Nx

Middle

Пишем Kotlin DSL для графов навигации в домашних условиях

Middle

Как уменьшить размер бандла раз и навсегда: приемы, метрики, мониторинг 

Middle

Трансплантация реактивности

Middle

Оптимальный архитектурный шаблон iOS-приложения

Middle

Работа с часовыми поясами без библиотек

Middle

Рисуем эффект «Таноса» на Android (и не только)

Middle

Как сверстать письмо, чтобы оно дошло до получателя таким, как задумано 

Middle

Векторизация изображений. Как создать алгоритм поиска похожих изображений на Python 

Middle

Кот в мешке: мастерство обработки ошибок внешних ключей SQLite 

Middle

Эволюция подходов к работе с таблицами во фронтенде

Middle

Гайд по микрофронтендам на single-spa, или Как уже наконец-то уйти от монолита во фронтенде

Middle

Удобства и боли рендеринга с React-pdf: опыт использования

Middle

Пристальный взгляд на отладку JavaScript приложений

Middle

Путешествие в царство легаси. Как маленькая задача привела к большому рефакторингу

Middle

ChatGPT-4 в помощь: используем AI в доработке простого iOS-приложения

Middle

Продуктовый подход к pet-проекту или как я разработал музыкальное веб-приложение

Middle

DOM, DI и View: деревья в Angular

Senior

Оптимизируя sequences — или как мой код попал в kotlin

Senior

Как мы сделали аудиозвонки в приложении для сотрудников

Senior

Как приручить чат GPT. Я проверил, кто пишет код быстрее — я или он

Senior

Внутреннее представление и оптимизации строк в JavaScript-движке V8: «отмываем» строки, «обгоняем» C++

Senior

Вдали от Webpack, или Как мы в Dodo микрофронтенды на Vite переводили

Senior

Сделай сам (DIY)

Сам себе сотовый оператор 

Студент

Простая трубка Гейслера своими руками

Студент

Ожерелье OwlEye — помощь слабовидящим

Junior

Делаем гидрофон и записываем звук трескающегося льда

Junior

Cyberpunk 2023: Мой первый кибернетический имплант

Junior

Самодельный электросерф (DIY) | Анти инструкция

Junior

Грамотная утилизация старого Hi-Fi или Примитив Технолоджиз собирают псевдо-портативную колонку класса БомжФай

Junior

Делаем радиолампы дома 

Junior

Что делать с детьми летом, если ты айтишник. Часть 2

Junior

Фоторамка-лабиринт. DIY-подарок — головоломка с секретом

Junior

Методика D.I.Y. проекта. Стратегия выживания 

Junior

Ультрабюджетный домашний сервер и что он может

Junior

Сканер отпечатков кошачьих носиков

Junior

Радикальная защита селфхостинга. Уровень: хардвар и хардкор

Junior

Сам себе Linux смартфон: Как я выкинул Android и написал свою прошивку с нуля

Middle

Как я учил Алису отправлять почту

Middle

Пол — это лава: разработка прототипа интерактивной светодиодной игровой платформы 

Middle

Конструктор для embedded-разработчика

Middle

“Ну и долго мне ещё до магазина?” Или пара слов о геоинформационном анализе с помощью Python

Middle

Превращаем старый iPad в умную фоторамку

Middle

Фоторезистор = Навигатор 

Middle

BASHUI

Middle

А давно ли вы измеряли радиацию у себя дома? Делаем дозиметр из Flipper

Middle

Конструктор для взрослых… 

Middle

Интернет коров

Middle

Учим три телевизора делать солнышко

Middle

Четыре года с умным домом: личный опыт и интересные сценарии

Middle

Звуковой усилитель на драйвере шагового двигателя L298 и таймере 555. Да, 555-й может и спеть

Middle

Разработка универсального сетевого стабилизированного источника питания 

Middle

Как воспитать в своей семье юного инженера и не разориться?

Middle

Релейный компьютер, телетайп и интересный алгоритм игры в крестики-нолики 

Middle

Видеокарта VGA для микроконтроллера

Middle

Как за один pet-проект получить два диплома

Middle

Электронный конструктор, не бьющий током

Middle

Самая дешевая заводская панель управления умным домом, которая отлично работает 

Senior

Георадар-тюбинг – новый георадар скрытого пользования (GPR Izh-Terra-1) 

Senior

Научпоп 

Наследие Windows XP: загадка title.wma

Студент

Он улетел и не вернётся: что случилось с «Вояджер-1» и что будет дальше

Студент

Полное и безупречное​ доказательство того, что π = 4, составленное потомственнымъ изобрѣтателемъ Ѳомой Пустобрехомъ

Junior

Obsidian: Мой опыт с LYT/Ideaverse и его русификация

Junior

Математика для взрослых. Дорожная карта от выпускника Хармфульского клуба математики 

Junior

Проблематика Open Source: профиль риска, лицензирование, как выбирать продукт и подход к разработке решений

Junior

Как Data Science помогает разрабатывать лекарства

Junior

От астролябии до MIMO: как необходимость определять местоположение привела к развитию систем спутниковой и сотовой связи

Junior

Почему рукописную подпись считают надёжным способом аутентификации (и так ли это на самом деле)

Junior

«Мышеловка». Как менялись компьютерные мыши и зачем я собрал 170 из них в коллекцию 

Junior

Kontron Electronic IP Lite: что внутри у промышленного переносного компьютера из 90-х

Junior

Нужны ли людям микросхемы?

Junior

«Замкнутый, как колобок, Тонет»: как в Томске заработал собственный интернет

Junior

Как советский физик научил мир делать искусственные алмазы и зачем они нужны

Junior

«Ветхий завет» речевых технологий. Говорящая голова, металлические языки и безумные синтезаторы 

Junior

Почему при умножении «минус на минус» дает «плюс»?

Junior

«Потерянный» арифмометр: Считающие часы Вильгельма Шиккарда

Junior

Китайский язык очень сложный. Мы сделали для него перевод видео

Junior

Калибровка магнитометра: через вращения к компасу

Junior

Удивительные клеточные автоматы: альтернативные окрестности и HROT

Junior

Аэропоника — это сложно

Middle

Ортокрыльчатый анемометр

Middle

Машина свободы: как чилийские социалисты придумали компьютер для управления экономикой 

Middle

Почему внедрение ветрогенераторов в советское время не увенчалось успехом? 

Middle

Super Heavy Starship. Первый пуск. Успешный старт и разрушение в полете. Первые мысли

Middle

О чем нам намекают естественные системы физических единиц

Middle

Что вы знаете о символьном программировании?

Middle

Как собрать рентген-аппарат из мотка скотча

Middle

Почему вы не тренируетесь? 

Middle

Город, которого нет: как и почему с карты России исчезали поселения

Middle

Откуда Карты знают, когда приедет автобус

Middle

Название имеет значение: как получить оптимизацию, переименовав браузер 

Middle

Южно-Сахалинск: самый ̶я̶п̶о̶н̶с̶к̶и̶й̶ корейский город страны 

Middle

Самое понятное объяснение Специальной теории относительности

Middle

Неразрешимые проблемы программирования

Middle

Медичи: семья, которая изобрела современные банки

Senior

Как использовать науку, чтобы меньше стрессовать в IT

Senior

Маркетинг

Менеджмент

Три важных качества CTO, о которых я не догадывался, пока был разработчиком

Junior

«А вы точно продакт?» 

Junior

Рассчитываем бэклог спринта не на глаз

Junior

Как не развалить команду, когда тебе фигово

Junior

Наш опыт интеграции внешних DevOps-команд в команды клиента: этапы, процессы, трудности, неочевидные нюансы

Junior

9 реальных причин дефицита персонала в России

Junior

Как не давать пустых обещаний себе, команде и заказчику

Junior

Иногда лучше делать, а не планировать

Junior

Деловая репутация? Не, в этом году не

Junior

«Моя твоя хотеть понимать», или Как говорить со всеми в IT 

Junior

Ценности как инструмент принятия сложных решений: как мы упрощаем взаимодействие команд и приходим к единому мнению

Junior

Знакомство с DevSecOps Guideline: правила организации безопасной разработки на уровне процессов

Junior

Наняли 30 джунов за год: рассказываем, зачем и как

Junior

У нас были курьеры, десятки посылок и час на доставку: кейс со своевременностью доставки 92% в Москве

Junior

«Коллеги, пришлите сроки!» — повторял джун-аналитик в течение месяца… 

Junior

Лидерство руководителя: как привести коллектив к работе не за страх, а за совесть

Middle

D&D как инструмент тимлида: решаем проблемы команды с помощью разговорных ролевых игр 

Middle

Как спектральный анализ улучшает оценку задач и снижает стресс в команде разработки

Middle

Как работать в удовольствие: 6 практик, которые поднимают настроение команде 

Middle

Наш путь в управлении потоком продуктовых задач. От стикеров в Miro до системных изменений на основе данных

Middle

Микроменеджер — горе в команде

Middle

Слепые капитаны ищут дно: почему российский бизнес – это болото, в котором барахтаются идиоты-«менеджеры

Middle

Discovery-процесс в продукте: из подземелья незнания — к лучшим решениям

Middle

Горы ЗИП. Почему наш склад ломится от оборудования и причем здесь ушедшие вендоры

Middle

Рафинад без сахара

Senior

Большая перемена: как за 3 года мы пересмотрели управление проектами во «Фланте» 

Senior

Никогда не забывай об этом, когда делаешь open-source проект

Senior

Как мы не забили на внутренних заказчиков, или Внутренняя автоматизация как продукт 

Senior

Как прогнозировать время выполнения задач

Senior

Мы придумали удобную систему управления разработкой. Объясняем, как она работает 

Senior

Респонс по да Винчи: как мы перевернули систему работы security-аналитика и что из этого вышло

Senior

Дизайн

Как работать с нейросетью Midjourney, чтобы получать желаемый результат

Студент

Я знаю, что вы сделали с этим файлом. Проектируем функцию «история событий» в офисном продукте

Junior

Дорогая, что-то пошло не так. Гид по пустым состояниям и ошибкам + шаблоны на все случаи

Junior

Рисуем с нейросетями: тонкие корректировки в Midjourney и Lumenor.ai

Junior

Как презентовать дизайн-концепцию, чтобы не облажаться перед заказчиком. Готовый скрипт + чек-лист

Junior

Экзоскелет «Норникеля»: как он таким стал

Junior

Сам себе заказчик: как мы провели редизайн сервиса и вернули доверие пользователей

Junior

Дизайн-система Gravity UI: как легко построить свой интерфейс

Junior

Как сделать макеты удобнее для команды

Middle

Как дизайнеру спасти ситуацию с помощью исследования. За пару часов, $4 и без разработки

Middle

Как спроектировать базу данных регулярного UX-исследования. Полный гайд на примере одного продукта

Middle

Как рисовать мозаики типа «эйнштейн» 

Middle

33 оттенка зелёного. Как мы проектировали темизированные палитры для внутренних интерфейсов Х5

Middle

Как использовать Midjourney: подробный гайд, лайфхаки, промты

Middle

Руководство по проектированию интерфейсов с Drag and Drop

Middle

Немодерируемые UX-тесты: 6 советов, как избежать факапов

Middle

Что вы могли не знать о продуктовом дизайне в B2B

Middle

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

Middle

Как сделать доступный UI, несмотря на хорошее ТЗ

Middle

Визуализация общественного транспорта

Senior

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

Senior

Figma to Frontend: как мы автоматически синхронизируем дизайн и код

Senior

Интерфейсы для производств — это не сайты штамповать

Senior

Геймдев

Ностальгические игры: Serious Sam

Студент

История создания Ведьмака: от литературной саги до игровой франшизы 

Студент

ArtMoney — живее всех живых

Студент

Алгоритм MiniMax. Использование минимакса в Unity на примере игры Поймай Овечку 

Junior

Доступность игр для людей с ограниченными возможностями: проблемы и их решения

Junior

Фэнтези и бизнес-показатели, Или хорошие игроки работают лучше, а увольняются реже

Junior

Релиз Oculus Quest 3: тоньше, мощнее, с новыми джойстиками. Смотрим, что получилось и сравниваем с Pico 4

Junior

PyZelda своими руками или как геймдевить без Unreal, Unity и кредитов

Middle

Вы точно хотите пойти программистом в gamedev?

Middle

Архитектура unity проектов 

Middle

Игровая экономика Premium игр на примере PC 4х стратегии

Middle

Физика вращения 3д тел

Middle

Герои известных игр на стороне сельского хозяйства: как это видит Midjourney 

Middle

Unity: сквозь тернии к importing assets

Middle

Процедурные складки на одежде для мультфильма на основе Geometry Nodes

Middle

Игра, которую невозможно не полюбить

Middle

Unity: 8 ошибок при использовании Async

Senior

Рендеринг трёхмерных развязок, мостов и тоннелей для реалистичных карт 

Senior

Миссия выполнима: как мы создали приложение для Apple Vision Pro за 8 дней

Senior

Система рендеринга для космического симулятора в Unity

Senior

Аналитика 

Как стать системным аналитиком, если ты гуманитарий

Студент

Анализировать данные — это как варить пиво. Почему дата-анализ и пивоварение — одно и то же с техноизнанки

Junior

Я вижу как ты мусоришь со своего балкона

Junior

Покупка гаража как инвестиция

Junior

Социальный проект: визуализация данных медицинской статистики 

Junior

Какого цвета интернет: история смены окраски веб-страницами

Junior

Опыт работы с данными или с чем может столкнуться аналитик

Junior

BI-инструмент от Яндекса DataLens — теперь в опенсорсе

Junior

Аналитик vs. презентация задачи. Изучаем профессионально-деформационные диалекты коллег 

Junior

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов

Middle

Как перестать теряться среди идей развития продукта и начать выбирать лучшие

Middle

Инструменты продуктового аналитика VK, или Как мы работаем с большими данными 

Middle

Семантическая сегментация на основе архитектуры U-Net и определение расстояния между объектами

Middle

Диаграммы без боли и страданий: PlantUML

Middle

Подход к системному анализу

Middle

А/Б тестирование с CUPED: детальный разбор

Middle

Определяем оптимальный размер групп при множественном А/Б тестировании 

Middle

Разработчики — налево, методологи — направо: четыре шага к оптимизации работы BI-аналитиков 

Middle

Как мы с помощью ML вылечили проблему, не дававшую перейти на автомаршрутизацию курьеров

Middle

Как мы не выбрали Airbyte, или почему собирать данные лучше по старинке

Middle

Визуализация статистики о том, что и так все знают

Middle

Проектирование интеграции. Чек-лист — как подготовить архитектурное решение 

Middle

Методы балансировки в А/Б тестировании 

Middle

Шесть причин, почему ваши A/B-тесты не работают

Senior

Как сэкономить время на старте этапа макетирования отчетности или прочь «чистый лист

Senior

Звёзды-родственники: зачем и как мы их ищем, данные + код (Python) 

Senior

Делать Data Vault руками? НЕТ! Подходы к автоматической генерации при построении Data Vault

Senior

От A/B-тестирования к Causal Inference в оффлайн ритейле

Senior

AI&ML

Kornia — библиотека компьютерного зрения

Студент

Что такое «паралич» сети, и как его избежать?

Студент

Mimesis: идеальное решение для генерации данных

Студент

Поможем Ходору найти новых друзей с помощью графов

Junior

LLM'ы в преобразовании запроса на естественном языке в SQL (text2sql)

Junior

Замена Paint в задачах разметки графических данных

Junior

Как ChatGPT за меня тестовое задание для собеседования писал

Junior

Как работают text2image модели? 

Junior

Распознавание русского жестового языка: распознаём до 3+ жестов в секунду на обычном ПК без видеокарты

Junior

Физически информированное машинное обучение, или Как я перестал бояться и полюбил искусственный интеллект

Junior

Выявление схожести между произведением искусства из коллекции музея и работами автора методами ML

Junior

Дообучение saiga2_7b_lora 

Junior

LLMClone: как клонировать себя в Telegram

Junior

Covenantus detectus или ещё одна DS-задача

Junior

Кто знает, что значит GPT в названии ChatGPT, могут дальше не читать

Junior

Как работает ChatGPT: объясняем на простом русском эволюцию языковых моделей с T9 до чуда

Junior

Джейлбрейки ChatGPT: как Волдеморт помогает взламывать нейросети

Junior

YandexGPT в Алисе: как мы создаём языковую модель нового поколения

Junior

В поисках аномалии: одноклассовая классификация текстов с помощью расхождения Кульбака—Лейблера 

Junior

Помощь с текстом, перевод видео с японского и корейского, распознавание QR-кодов — что умеет обновлённый Яндекс Браузер

Junior

Как я занял 13 место из 3500+ участников и стал Kaggle Competition Master

Junior

ChatGPT и отзывы на приложение: Анализ тональности для улучшения пользовательского опыта

Junior

Введение в нейросети: что, зачем и как? 

Junior

ruSciBench — бенчмарк для оценки эмбеддингов научных текстов

Middle

Как быстро выбирать языковые модели (LLM) под свои задачи

Middle

Kandinsky 2.1, или Когда +0,1 значит очень много 

Middle

YandexGPT в Браузере: как мы учили модель суммаризировать статьи

Middle

2 года, 7 попыток, 0 распознанных бордюров: как мы учились детектить ДТП в реалтайм без датасета

Middle

Как маленькая нейроязыковая модель в Клавиатуре победила серверные подсказки 

Middle

Два сапога — пара, а три — уже community: как алгоритмы на графах помогают собирать группы товаров 

Middle

Как Яндекс научился распознавать, что написано в рукописных архивах 

Middle

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

Middle

Нейронные сети для планирования движения беспилотных автомобилей

Middle

Совместимость (или нет?) MLOps-инструментов

Middle

Как мы научили YandexGPT пересказывать видео

Middle

Кажется, вы больше не должны давать тестовые задания кандидатам на дом 

Middle

ML в животноводстве. Как ГК «Русагро» училось считать поголовье свиней 

Middle

Единая нейросетевая модель кредитного скоринга 

Middle

Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++

Middle

Собираем русскоязычный лонгформер шаг за шагом 

Senior

О «раздутом пузыре» нейросетей 

Senior

Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR

Senior

После GPT-4 

Senior

О методах позиционного кодирования в Transformer

Senior

Кластеризация в ML: от теоретических основ популярных алгоритмов к их реализации с нуля на Python

Senior

Делим неделимое в Kubernetes: шеринг GPU с помощью MIG и TimeSlicing

Senior

Частотный vs байесовский подходы: оцениваем True Positive Rate при неполной разметке данных

Senior

Как мы оцифровали футбольные матчи с помощью CV

Senior

Quantization Deep Dive, или Введение в современную квантизацию

Senior

Варим кашу из нечеткой логики и вариационных автоэнкодеров

Senior

Бэкенд

Рекомендации по ведению SQL-кода

Junior

Худшие практики разработки и архитектуры

Junior

Эластичный DAG или «гнём, где не гнулось» 

Junior

Глубина кроличьей норы: бинарная граница и ABI C++

Junior

userver — что мы узнали за полгода в open-source

Junior

Юнит-тесты: чек-лист методик проектирования

Junior

MyBatis «на минималках»

Junior

Покрытие архитектуры as Code тестами

Junior

Год ожиданий — и мы получили Python 3.12. Изменения, новшества и дополнения 

Junior

Радиотелефончик на смартфоне

Junior

Как департамент утилизации CPU превратился в департамент экономии железа, выдерживающий нагрузку в 1 млн RPS

Middle

Clean Git History, или Тёмная сторона VCS

Middle

Как IndVarSimplification применяет математику в вашем коде

Middle

Как мы планировали повысить версию PHP за месяц, а потратили на это год

Middle

Долгоиграющие приложения на PHP

Middle

Тебе не нужно классическое ООП в твоём бэкенд микросервисе

Middle

Многопоточный Python на примерах: токены отмены

Middle

.NET 7 против российской криптографии 

Middle

Пишем gRPC сервис на Go — сервис авторизации

Middle

Tarantella — распределённое key-value хранилище в рекламных технологиях VK

Middle

Symfony под капотом: Symfony Messenger и механизм повторной обработки сообщений при ошибках

Middle

Пишем файловую систему для работы с изображениями на TypeScript

Middle

Почему C++ не устаревает 

Middle

Сага о консистентности данных

Middle

Организация кода в Laravel. Личный опыт

Middle

Как оптимизировать код на С для x86-процессоров: подсистема кэша и памяти, инструкции AVX-512

Middle

Решаем задачу асинхронного ввода-вывода с библиотекой Asio

Middle

Разносим по полочкам этапы тестирования http запросов в Spring

Middle

Тонкости работы short-circuit routing в ASP.NET Core 8.0

Middle

Разворачиваем веб-приложение в Kubernetes с нуля

Middle

YTsaurus: основная система для хранения и обработки данных Яндекса теперь open source

Middle

Alias DNS-записи: что это и когда использовать

Middle

Решаем задачу по взаимодействию микросервисов на Python тремя способами 

Middle

Kiosk (Lock task mode) для Android: польза, кейсы применения и кастомизация

Middle

Подводные камни компараторов в С++

Middle

Assembler для Windows в Visual Studio

Middle

Мониторинг на Python: как сохранить метрики в мультипроцессном режиме

Middle

Зачем нам Reactive и как его готовить

Middle

Монолог про отказоустойчивость микросервисных приложений, или Что может пойти не так?

Middle

Как использовать ресурсы Kubernetes по максимуму для работы с Go-приложениями 

Middle

Отказоустойчивая архитектура: почему Tarantool не падает?

Middle

Укрощение примитивов синхронизации: сравниваем решения задачи с построением пула потоков на С и Go

Middle

А в чем проблема работать с файлами? 

Middle

Жук, нумерология, хеш или ничо? Оптимизация работы с путями

Middle

Сравнительный анализ методов аппроксимации на основе SQL-запросов

Middle

4 часа недоступности: постмортем падения Dodo IS

Middle

Симбиоз «Chromium» и «InternetTools»

Senior

Делай нейминг как сеньор 

Senior

Assembler в Go: техники ускорения и оптимизации

Senior

Как мы Kafka с NestJS microservices подружить пытались

Senior

Calypso: Схема данных MongoDB на Scala

Senior

Профилирование, ассемблер и все-все-все

Senior

Seastar как платформа для опорной сети 5G и краткое сравнение с Boost.Asio, userver и другими

Senior

По локоть в легаси: пошагово перезапускаем устаревший портал на PHP

Senior

Своё кастомное межсервисное взаимодействие с блекджеком и gRPC

Senior

Хороший ретрай, плохой ретрай, или История одного падения

Senior

Разобраться раз и навсегда: Task.WhenAll или Parallel.ForEachAsync в C# 

Senior

Как ошибки проектирования при разработке на Symfony могут привести к перерасходу ресурсов и замедлению работы системы

Senior

Улучшаем динамические таблицы YTsaurus с помощью алгоритмов

Senior

Бекенд на AWS Lambda за 60 минут

Senior

Бардак в main, стандартизация и uber.fx. Как сделать структуру кода понятнее для всех

Senior

Трудности перевода. Как научить микросервисы общаться и не ссориться 

Senior

Блеск и нищета паттерна «Спецификация» в С#. Оцениваем планы запросов 

Senior

Производительность базового поиска в Ozon как культурный феномен

Senior

Потрошим golang: как устроена память

Senior

Шардирование: с нуля до Яндекс Диска

Senior

Разработка и проектирование железа

Инженерный подход

Человек-подделка: какие бывают дипфейки лиц и как их детектировать

Junior

Американец построил огромного боевого робота в лесу

Junior

Rust, Telegram и GTFS против Петербургского транспорта

Junior

Обратный инжиниринг дешевой мини видеокамеры из семейства А9

Junior

МРЭМ – 200. Электронный микроскоп родом из СССР. Цифровизация захвата изображения 

Junior

Метеостанция на ионисторе

Junior

Математика наклона в картах, или как мы сделали небо

Middle

Как я рефакторила Ansible-плейбуки с помощью нейросети. Плюсы и минусы ChatGPT

Middle

Утечки памяти, которые не утечки

Middle

Как построить систему, способную выдерживать нагрузку в 5 млн rps

Middle

Как много языков может влезть в одного программиста?

Middle

Переизобретаем файловую систему: (Open)ZFS

Middle

Восемь признаков недо-yield вашего проекта на Python

Middle

Как несвязанные коммиты в пакетах Linux привели к неожиданным проблемам. Практические истории из SRE-будней. Часть 7

Middle

Спутниковая связь от 3GPP: как смартфоны будут звонить через спутник

Senior

Старый софт: как мы обошли запрос пароля в Shadow Defender и зачем пользоваться приложением, которое не обновляется

Senior

Смогут ли разработчики конкурировать с нейросетями: оцениваем возможности AI и человека 

Senior

eSIM и протоколы спецификации GSMA SGP.02: кейс МТС

Senior

Как мы научили ML-модель выбирать товары для акций в СберМаркете и увеличили ROI скидок в 8 раз

Senior

Решение внутренних конфликтов: инженерный подход

Senior

Подготовка технической документации

Почему мы ошибаемся при первоначальной оценке фич?

Junior

Как создать хороший FAQ

Junior

Как выжать максимум из Confluence. Глава первая

Junior

Съемка видеоинструкции: от идеи к реализации

Junior

Как улучшить английский в документации. Часть 2: ловушки двусмысленности 

Middle

Упорядочиваем архитектуру Банка

Middle

Как нефункциональные требования влияют на архитектуру

Middle

Quick & worldwide: как мы ускорили DocLoc-релизы и апдейты для 34 локализаций

Middle

Как жить-то, когда нет целевой архитектуры?

Middle

Docs as Code: как вести фронтовую документацию рядом с кодом, чтобы репозиторий не раздуло

Middle

Создание системы документирования, или как в Cloud.ru от «ворда» к docs as code за месяц переходили. Часть 2

Middle

Синкерим, хешайдим, терминируем: 6 утилит, чтобы ускорить ваши локализации 

Middle

Как создать шаблон документации к микросервису

Senior

Как автоматизировать построение архитектурных схем в большой микросервисной системе 

Senior

«Кто на ком стоял?» Про страдательный залог в технической документации 

Senior

Спасибо участникам за участие! Спасибо читателям за внимание!

Комментарии (36)


  1. Efimov_pr
    15.05.2024 08:22
    +14

    Ура, я попал в табличку)


    1. MaFrance351
      15.05.2024 08:22
      +20

      Я тоже!

      Поздравляю всех попавших.


  1. dlinyj
    15.05.2024 08:22
    +14

    Как мы долго ждали этого, спасибо! Ждём окончательного подведения итогов. Всё жюри - вы титаны, так и знайте!

    Но конечно смешно видеть ранжирование Senior и Junior. Выглядит странно, например в рубрике Сделай сам (DIY):
    1.
    Делаем гидрофон и записываем звук трескающегося льда - невероятно сложная, технически грамотная и полная статья попадает в категорию Junior
    2.
    Самая дешевая заводская панель управления умным домом, которая отлично работает - банальный обзор, где автор ничего не сделал (где DIY вообще?) попадает в категорию Senior.

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


    1. Exosphere Автор
      15.05.2024 08:22
      +4

      Привет! Да вообще беда - у нас один CTO написал в джуны. А потом выяснили мотивацию некоторых авторов: не я «джун», а написано «для джунов». Идею дальше берем, а реализацию будем менять :-)


      1. dlinyj
        15.05.2024 08:22
        +4

        Ну я тоже когда категорию выбирал, то выбирал "для кого", а не "от кого". Поэтому необычное ранжирование выходит. Но даже вот так, всё равно мой пример выглядит странным.