- BrainTools - https://www.braintools.ru -

Дайджест апреля: 30 лучших статей месяца

В этом дайджесте — самые популярные статьи в нашем блоге за уходящий месяц. Это материалы, которые заинтересовали хабровчан больше всего: от эффективного управления техническим долгом и безопасности контейнеров до DIY-проектов и полезных советов для разработчиков. Читайте, внедряйте лучшие практики и совершенствуйте свои навыки с актуальными и востребованными темами!


Wazuh и Docker: следим за безопасностью контейнеров

В этой статье поговорим о Docker в качестве среды контейнеризации и о Wazuh в качестве средства мониторинга событий ИБ. Перейти к статье [1]

GitLab CI для Docker-образов

Узнаем, как настроить CI/CD пайплайн для Docker‑образов: от сборки (с docker buildx и buildah) до пуша с версионированием и автоматической очистки через GitLab API. Читать далее [2]

Микросервисы без контейнеров

Можно ли управлять микросервисами на Windows без Docker и Kubernetes? Можно — с Nomad и кастомным IIS-драйвером. Взглянуть на оркестрацию под другим углом. [3]

slots в Python

В этой статье рассмотрим замечательный механизм в Python — slots. Они помогают бороться с утечками памяти [4] и тормозами в системах, где создается миллион объектов. Читать далее [5]

3 вопроса на собеседовании о многопоточности в Java

Разберём несколько вопросов, которые могут возникнуть на собеседованиях для разработчиков, связанных с многозадачностью [6] и потокобезопасностью в Java. Продолжение [7]

DWH: История поиска альтернативы PostgreSQL и Snowflake. Часть 1

Как выбрать облачное DWH, если PostgreSQL и Snowflake больше не справляются? Agritask провели масштабное исследование и делятся выводами. Заглянуть в реальный кейс выбора DWH под триллионы строк. [8]

Портируем графическую библиотеку U8G2 на STM32

Как подружить STM32 с U8G2 и заставить работать OLED-дисплеи через SPI, I2C и даже программный 9-битный интерфейс? Полный гайд с примерами. [9]

Как работает ptrace в Linux и зачем он тебе

ptrace в Linux — мощный, но недооценённый инструмент: подключайся к процессам, перехватывай syscalls и меняй регистры. Разбор с примерами и подводными камнями. [10]

Как бросить исключение без throws в Java: технический разбор с примерами

Можно ли бросить checked-исключение в Java без throws? Да — через Unsafe. throwException () или generics-хак. Подробности, примеры и риски для JDK 17+. [11]

Как livenessProbe может убить ваш Pod

Неправильно настроенный livenessProbe может зациклить перезапуски живого пода. Разбираем причины, примеры фейлов и как защититься через startupProbe. Не дай Kubernetes убить свой сервис зря. [12]

Эффективная передача данных: используем Protocol Buffers для коммуникации между ESP32 и QT/QML

Как объединить ESP32 и Qt/QML в одном проекте? В статье рассматривается использование Protocol Buffers для эффективной коммуникации между микроконтроллером и приложением, включая настройку Nanopb и интеграцию в Qt.​ Как реализовать двустороннюю связь между устройствами с помощью Protobuf. [13]

defineExpose() в Vue 3

Как передать методы наружу из <script setup> в Vue 3? Разбираем defineExpose() — мощный способ раскрыть публичный API компонента и работать с ним через refОткрой компонент — но только там, где нужно. [14]

SQL-пайплайны для A/B тестов: коротко

Как собирать чистую и достоверную статистику по A/B тестам в SQL? Разбираем дедупликацию, фильтрацию фрода и агрегацию событий. Постройте свой SQL-пайплайн правильно. [15]

Популярные API для работы с искусственным интеллектом

Изучите обзор популярных API для работы с ИИ: от OpenAI и Anthropic до Google Vertex AI и AWS Bedrock. Оцените функциональность, стоимость и возможности интеграции для ваших проектов. Выбрать лучший API для своего проекта [16]

Почему == и .Equals() — не одно и то же (и как это вас подставит)

Сравнение объектов в C# с помощью оператора == и метода .Equals() может привести к неожиданным результатам, особенно при перегрузке оператора или в работе с внешними библиотеками. Обсудим, как избежать ошибок. [17]

JDBC: Как Java научилась дружить с Базами Данных

JDBC — это универсальный мост между Java и базами данных. Узнайте, как с помощью драйверов, запросов и транзакций можно эффективно работать с любыми СУБД, от PostgreSQL до MySQL. [18]

Аутентификация на основе cookies с помощью Laravel Sanctum

Настройка аутентификации с помощью Laravel Sanctum и cookies: подробное руководство, как избежать ошибок с CORS, CSRF и правильно настроить взаимодействие между фронтендом и бэкендом. Начать безопасно работать с cookies в Laravel. [19]

Практическое руководство по выбору брокера сообщений

Руководство по выбору брокера сообщений: подробное сравнение Apache Kafka и Amazon SQS, их характеристик и соответствия различным шаблонам обмена сообщениями. Узнать, как выбрать лучший брокер для вашего приложения. [20]

ref, out, in: как понять, кто из них тебе нужен

Ref, out и in в C# — это три метода передачи параметров по ссылке, каждый из которых имеет свои особенности. Out используется для инициализации переменной внутри метода, ref — для изменения уже инициализированного значения, а in — для передачи больших структур по ссылке без возможности изменения их значений. Разберитесь, когда и какой механизм лучше выбрать для вашего кода. [21]

Когортный анализ, LTV и RFM в SQL: коротко для новичков

В этом руководстве по SQL разбираются основы когортного анализа, вычисление LTV и RFM-сегментации с использованием данных о заказах. На примере рассмотрим, как группировать пользователей по когортам, отслеживать удержание и строить аналитические отчёты. Начать строить аналитику на SQL сегодня. [22]

Как снять трафик, когда нельзя, но очень хочется

Мониторинг сетевого трафика — ключевая задача для специалистов по безопасности и пентестеров. В статье рассматриваются методы снятия копий трафика, от стандартных SPAN до хакерских способов с использованием TAP и крокодилов. [23]

Рекомендательная система для вашего каталога научных работ (и не только!)

Создание рекомендательной системы для научных работ с использованием обработки естественного языка и теории графов. Узнаем, как сравнивать файлы разных типов и вычислять сходства между ними для предоставления точных рекомендаций. [24]

«Бермудский треугольник» в микросервисной архитектуре

Микросервисы — это гибкость и масштабируемость, но управлять ими можно только с правильной архитектурой. Рассмотрим баланс между изоляцией сервисов, согласованностью данных и организационным порядком. [25]

F(), Func() и никаких циклов: как Django думает в SQL

Использование F() и Func() в Django позволяет переносить логику [26] обработки данных на сторону базы, улучшая производительность и обеспечивая атомарность операций. Узнайте, как эффективно обновлять данные без циклов и гонок. [27]

Обработка паник в горутинах

Паники в горутинах Go могут привести к сбою всего приложения. Используйте обёртку SafeGo для безопасного запуска, логирования с контекстом и интеграции с Sentry. Все ошибки — под контролем. [28]

Golang: когда make, когда new

Разбираем, когда и зачем использовать make и new в Go. Узнай, как правильно инициализировать объекты и структуры для эффективного кода. Разобраться в нюансах. [29]

Делаем адресные 7-сегментные дисплеи своими руками

DIY-проект по созданию адресных 7-сегментных дисплеев с Arduino. Используем чип WS2811 для управления несколькими дисплеями через одну линию данных, упрощая подключение и расширение проекта. Подробная инструкция с пайкой SMD-компонентов. [30]


Руководство по принципам SOLID для технических лидеров

Принципы SOLID — основа устойчивого и масштабируемого кода. Рассмотрим, как они помогают формировать архитектуру, которая поддерживает изменения, улучшает тестируемость и снижает технический долг. [31]

«Как я работаю с техническим долгом»: опыт сеньор-разработчика

Технический долг — не враг, а инструмент для ускорения разработки. В статье опыт [32] сеньор-разработчика о том, как правильно управлять долгом: признание, приоритеты и лучшие практики для эффективной работы. Читайте, чтобы узнать, как использовать долг на пользу проекту. [33]

QA Lead и что он делает

Рассмотрим ключевые обязанности и навыки, необходимые для эффективного управления командой тестировщиков, такие как нестандартное мышление [34], взаимодействие с клиентами и разработчиками, умение работать с проектными менеджерами, принятие ответственности и многозадачность. Читать полностью [35]

37 навыков, свойственных выдающимся продакт-менеджерам

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

BPMN на практике: примеры и ошибки

Ошибки [38] моделирования в BPMN стоят времени и понимания. Разбор живых кейсов: от сигналов и циклов до разделения бизнес-правил и процессов. Перейти к статье [39]

Актуальное расписание открытых уроков уже в календаре мероприятий. Выбирайте темы [40], которые вам интересны, и подключайтесь онлайн.

Автор: MaxRokatansky

Источник [41]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/14812

URLs in this post:

[1] Перейти к статье: https://habr.com/ru/companies/otus/articles/895796/

[2] Читать далее: https://habr.com/ru/companies/otus/articles/896010/

[3] Взглянуть на оркестрацию под другим углом.: https://habr.com/ru/companies/otus/articles/897168/

[4] памяти: http://www.braintools.ru/article/4140

[5] Читать далее: https://habr.com/ru/companies/otus/articles/896190/

[6] многозадачностью: http://www.braintools.ru/article/3673

[7] Продолжение: https://habr.com/ru/companies/otus/articles/896178/

[8] Заглянуть в реальный кейс выбора DWH под триллионы строк.: https://habr.com/ru/companies/otus/articles/900080/

[9] Полный гайд с примерами.: https://habr.com/ru/companies/otus/articles/899908/

[10] Разбор с примерами и подводными камнями.: https://habr.com/ru/companies/otus/articles/898448/

[11] Подробности, примеры и риски для JDK 17+.: https://habr.com/ru/companies/otus/articles/897384/

[12] Не дай Kubernetes убить свой сервис зря.: https://habr.com/ru/companies/otus/articles/897550/

[13] Как реализовать двустороннюю связь между устройствами с помощью Protobuf.: https://habr.com/ru/companies/otus/articles/899122/

[14] Открой компонент — но только там, где нужно.: https://habr.com/ru/companies/otus/articles/899344/

[15] Постройте свой SQL-пайплайн правильно.: https://habr.com/ru/companies/otus/articles/898114/

[16] Выбрать лучший API для своего проекта: https://habr.com/ru/companies/otus/articles/901452/

[17] Обсудим, как избежать ошибок.: https://habr.com/ru/companies/otus/articles/901150/

[18] как с помощью драйверов, запросов и транзакций можно эффективно работать с любыми СУБД, от PostgreSQL до MySQL.: https://habr.com/ru/companies/otus/articles/902240/

[19] Начать безопасно работать с cookies в Laravel.: https://habr.com/ru/companies/otus/articles/902080/

[20] Узнать, как выбрать лучший брокер для вашего приложения.: https://habr.com/ru/companies/otus/articles/901708/

[21] Разберитесь, когда и какой механизм лучше выбрать для вашего кода.: https://habr.com/ru/companies/otus/articles/901456/

[22] Начать строить аналитику на SQL сегодня.: https://habr.com/ru/companies/otus/articles/901114/

[23] методы снятия копий трафика, от стандартных SPAN до хакерских способов с использованием TAP и крокодилов.: https://habr.com/ru/companies/otus/articles/901054/

[24] как сравнивать файлы разных типов и вычислять сходства между ними для предоставления точных рекомендаций.: https://habr.com/ru/companies/otus/articles/900962/

[25] баланс между изоляцией сервисов, согласованностью данных и организационным порядком.: https://habr.com/ru/companies/otus/articles/900846/

[26] логику: http://www.braintools.ru/article/7640

[27] как эффективно обновлять данные без циклов и гонок.: https://habr.com/ru/companies/otus/articles/900796/

[28] Все ошибки — под контролем.: https://habr.com/ru/companies/otus/articles/900452/

[29] Разобраться в нюансах.: https://habr.com/ru/companies/otus/articles/903144/

[30] Подробная инструкция с пайкой SMD-компонентов.: https://habr.com/ru/companies/otus/articles/905556/

[31] которая поддерживает изменения, улучшает тестируемость и снижает технический долг.: https://habr.com/ru/companies/otus/articles/902144/

[32] опыт: http://www.braintools.ru/article/6952

[33] Читайте, чтобы узнать, как использовать долг на пользу проекту.: https://habr.com/ru/companies/otus/articles/904050/

[34] мышление: http://www.braintools.ru/thinking

[35] Читать полностью: https://habr.com/ru/companies/otus/articles/896886/

[36] лидерства: http://www.braintools.ru/article/1165

[37] Перейти к статье: https://habr.com/ru/companies/otus/articles/896818/

[38] Ошибки: http://www.braintools.ru/article/4192

[39] Перейти к статье: https://habr.com/ru/companies/otus/articles/897578/

[40] Выбирайте темы: https://otus.pw/2ApF/

[41] Источник: https://habr.com/ru/companies/otus/articles/906032/?utm_source=habrahabr&utm_medium=rss&utm_campaign=906032

www.BrainTools.ru

Rambler's Top100