Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

StructPadding

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.4K

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

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

Читать далее

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

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7.6K

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

Читать далее

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

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели4.9K

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

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

Что внутри:

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

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

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

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

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

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

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

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

Читать далее

Чтение на выходные: «Как построить машину. Автобиография величайшего конструктора “Формулы-1”» Эдриана Ньюи

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели8.1K

Книга для фанатов автоспорта — с чертежами, историями и признаниями. Автобиография легендарного конструктора гоночных автомобилей, на которых становились чемпионами.

Эдриан Ньюи сейчас — управляющий технический партнер Aston Martin и акционер гоночного коллектива. Однако его путь — это уникальная хроника триумфов с командами, приведших к множеству чемпионских титулов. На протяжении своей инженерной карьеры он работал в Fittipaldi Automotive, March Engineering, Leyton House, Williams, McLaren и Red Bull Racing. О том, что сопровождало его на пути к славе, пожалуй, никто не расскажет лучше, чем он сам.

Читать далее

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

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели9.1K

Коллектив ученых из МФТИ и НИИ системных исследований РАН разработал и успешно протестировал новый гибридный вычислительный метод для моделирования распространения сейсмических волн в геологических структурах со сложной, произвольно искривленной формой.

Читать далее

Меня позвали в крутой проект, спасибо, Хабр

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели13K

Но я облажался...

Блин я даже в школе столько правил по русскому не читал, какой же наш язык сложный, а что бы реализовать все проверки, что бы правила корректно отрабатывали, проще застрелиться... Пришлось гуглить информацию по ЕГЭ 2025 года и ковыряться на НКРЯ. Много нового узнал =)

В общей сложности потратили неделю, на реализацию концепта, функционал, перенос правил русского языка.

Читать далее

Как я собрал и подготовил датасет дефектов печатных плат для обучения моделей YOLO

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели9.7K

Когда пришло время выбирать тему диплома, я, как и многие студенты, понятия не имел, о чём писать. После мозгового штурма с одногруппниками родилась идея, которая из простого «варианта для защиты» превратилась в полноценный инженерный проект: «исследование и разработка системы автоматического распознавания дефектов печатных плат».

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

Эта статья краткая выжимка моего опыта: как собрал собственный датасет дефектов печатных плат для обучения моделей, какие инструменты использовал и на что стоит обратить внимание.

Статья будет полезна:

Читать далее

Как тревожность пациентов ломает UX медицинских сервисов — и что с этим делать дизайнеру

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели10K

Сегодня медицинские сервисы соревнуются за удобство: онлайн-запись, чат с врачом, результаты анализов в один клик.

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

Читать далее

Зоопарк строк в вашем C++ коде?

Время на прочтение26 мин
Охват и читатели25K

CryEngine2 использовал класс собственный CString для реализации работы со строками и немного использовал строки из стандартной строковой библиотеки Windows. Насколько я помню, последняя версия CryEngine всё ещё использует те же самые CString, она кардинально поменялась внутри, но как дань истории название класса менять не стали, зато сильно расширили функционал. Я не на 100% уверен, применялся ли CString только в редакторе или в рантайме игры тоже, вы можете сами это посмотреть в исходниках, которые все еще доступны на гитхабе. Это один подход к работе со строками, довольно распространенный в мире игростроя - когда мы все нужное пишем сами, не оглядываясь... хотя, тут больше уместно слово поглядывая, на существующие реализации и утаскивая в проект все самое лучшее.

Есть и другой подход... Я работал в команде над некоторым проектом, который должен был выйти на консолях, и в какой‑то момент на проект пришел эффективный тимлид, который хорошо умел в красивые презентации, и продавил использование std::string из sdk. Все очень опытные программисты, синьоры и руководство важно кивали на совещании и согласились всё перевести на std::string… не такие уж они оказались опытные, как выяснилось. В итоге мы заменили большую часть CString на std::string. Не сказал бы, что это сильно повлияло на время компиляции — плюс‑минус минута к проекту, который собирается двадцать минут, особой погоды не делают, но это также превратило наш довольно понятный базовый код в запутанный кошмар. Возможно, для переносимости это было лучше, но ни наш проект, ни CryEngine2 Editor так и не были портированы ни на Linux, ни на какую‑либо другую платформу.

Прошло десять лет, я вижу ровно туже ситуацию на текущем проекте — новый тимлид решил перевести местный MySuperPupeString на std::string, уже предчувствуя «нижней чуйкой» последствия — запасаюсь попкорном и беру отпуск на следующий месяц после принятия решения. Но не это интересно, а то — какие вообще строки могут быть в вашем с++ коде.

Строка, на строке и строкой погоняет

Как мы постепенно идём к «умному» центру администрирования СУБД

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели11K

Что общего у массового применения конфигураций, встроенной поддержки OpenTelemetry и управления HA-кластерами в пару кликов? Всё это — части пазла, который мы собираем, чтобы сделать администрирование PostgreSQL по-настоящему удобным и безопасным. Выход версии Postgres Pro Enterprise Manager (PPEM) 2.3 стал важной вехой в развитии нашего графического интерфейса. Мы добавили поддержку пользовательских пресетов, переработали систему алертинга и усилили RBAC-модель управления доступом. Разбираем ключевые нововведения релиза, которые помогут навести порядок в зоопарке конфигураций и спать спокойно, зная, что система сама предупредит о проблемах.

Читать далее

Docker для начинающих: что это такое и как пользоваться

Уровень сложностиПростой
Время на прочтение20 мин
Охват и читатели26K

Статей про Docker много не бывает.

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

Освоить рабочую базу Docker →

БД без боли: моя шпаргалка для собесов в Java. Часть 4

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели12K

Всем привет!


Я Senior Java Developer в банке, и за эти годы мне довелось пройти немало собеседований. Где-то было спокойно, где-то — как в допросной, с каверзными вопросами, странными задачами и вечным «а почему так, а не иначе?». В процессе я собрал целую коллекцию тем, которые всплывают снова и снова, особенно когда дело касается баз данных.

Сегодня хочу поделиться этим опытом и разобрать вопросы, которые чаще всего задают именно по SQL-базам.

Читать далее

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

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели10K

Привет, Хабр! Мы — Дмитрий Дудов, руководитель разработки платформы T-Messenger, и Алексей Стрельников, Product Owner этой платформы. Мы считаем, что доступность — это история на пересечении бизнеса и техники.

В статье расскажем: 

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

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

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

Читать далее

Ближайшие события

Go: логирование

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели7.8K

Что может проще логирования??? Хочется сказать: автотесты! :-) Но автотесты регулярно запускаются. Некачественный подход в автотестировании проявляет себя в виде нестабильных тестов. А логирование - настоящая "серая лошадка". Проблемы в логе можно заметить, только при поддержке более-менее нагруженного проекта. В этой статье сравниваются разные подходы логирования, обращается внимание на тонкости, которые делают лог удобным для анализа работы системы.

Читать далее

.NET 10 и C# 14: что поменяется в вашем коде

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели12K

11 ноября 2025 вышел .NET 10 - очередной LTS-релиз, который будет жить до ноября 2028 года.
За это время многие проекты успеют мигрировать с .NET 6/8/9, а значит, нас ждут не только новые плюшки, но и немного боли от breaking changes.

В этой статье постарался собрать всё самое важное на русском языке чтобы за раз всё поднять.

Читать далее

Экономичный NLP анализ на примерах популярных фэнтези

Время на прочтение20 мин
Охват и читатели7.8K

『Совесть — не ослик: и не такое вывезет.』
_(с) Р. Суржиков, Полари_

『Халдер, проверь, что умеет сир Поросёнок.』
_(с) Д. Мартин, ПЛИО_

Статья будет особенно интересна филологам, которые знают, что научных материалов в Интернете по измерению лексического разнообразия текста не так много, а в Рунете единицы и часто поверхностные.

Преамбула

Видел некоторые баталии в комментариях от читателей на профильных ресурсах: частое сравнение между собой двух высокооценённых циклов в жанре эпическое фэнтези/средневековье — "ПЛИО" VS "Полари". Сходства и различия сводились к тематике, эпохе, локациям, чертам действующих лиц, слогу и другим очевидным и/или нетривиальным литературным приёмам и ходам. В этой статье добавлю контраста на художку и с математической точки зрения.

Открыть исследование

Мой личный топ книг для тех, кто хочет стать серьезным разработчиком

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели24K

Так получилось, что свою карьеру я начинал сразу в ИТ, но был скорее теоретиком. По образованию я - математик, а это значит, что в университете меня учили доводить задачи ровно до той стадии, когда "далее все понятно, и реализация представляет чисто инженерную сложность".

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

За последние несколько месяцев ко мне в разное время обратились три или четыре человека с просьбой порекомендовать им что-нибудь, чтобы "научиться прогать". Особенность всех из них - наличие неплохого базового образование, общее понимание многих концепций, но лишь на теоретическом уровне. Короче, все так, как было у меня в свое время. Ответив им несколько раз примерно одно и то же в телеграме, я понял, что все это можно написать один раз, выложить в публичный доступ и расшаривать. Так и родилась идея этой статьи.

Читать далее

OpenAI Guardrails: защита ИИ-приложений от атак

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели6.6K

Всем привет!

В этой статье разберёмся с OpenAI Guardrails — одним из самых эффективных инструментов для обеспечения безопасности ИИ-систем. Это продолжение цикла о защите и контроле ИИ-агентов, в первой части мы рассмотрели инструмент модерации запросов.

Guardrails предоставляет намного более мощные возможности для защиты, позволяя создавать многоуровневую систему валидации входных и выходных данных.

Читать далее

Конвейеры формирования изображений. Часть 1: Регистрация света и дебайеринг

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели6.5K

Приветствую! Я, Егор Ершов, руководитель группы «Цветовая вычислительная фотография» в AIRI и заведующий сектором репродукции и синтеза цвета ИППИ РАН, продолжаю выкладывать статьи по мотивам своих лекций по вычислительной фотографии. Наша глобальная задача, напомню, разобраться, как сделать так, чтобы камера сотового телефона достаточно хорошо смогла уловить цвета, а монитор или принтер — их передать. 

Прошлые три текста были посвящены общей теории цвета, описанию зрительной системы, а также стандартам и цветовым пространствам (их можно прочесть тут, тут и тут). Теперь же я расскажу непосредственно о конвейерах (или пайплайнах) формирования изображения — какая именно магия происходит внутри сенсоров, начиная с момента нажатия на кнопку затвора и заканчивая сохранением изображения в галерее. 

Приятного чтения!

Читать далее

Что изучить из BGP, VXLAN, K8s, DevSecOps, SOC и SIEM, если вы отвечаете за сети и ИБ

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели11K

Привет, Хабр. Это дайджест по сетям и кибербезопасности: от DevSecOps и защиты Kubernetes до пентеста, SOC, SIEM и дизайна сетей ЦОД. Мы собрали открытые уроки и курсы, которые помогают не просто «держать инфраструктуру в зелёном», а проектировать её с учётом современных угроз, требований регуляторов и реальных атак. Если вы отвечаете за устойчивость сервисов, безопасность данных или развитие корпоративной инфраструктуры — здесь можно точечно закрыть пробелы в навыках или выстроить для себя системный маршрут обучения.

Перейти к дайджесту