| Date | Title | Description |
| Sign up to see | Sign up to see | Sign up to see |
| Mar 3, 2026 | Бойтесь буквы «M». Самый странный баг в моей жизни | Вечером в пятницу коллега, назовем его Мститель, спросил, не сталкивался ли я с проблемой, что route возвращает 400... но «если сменить название на сильно другое», то всё ок. Я сперва не обратил внимание на слово «сильно». Может быть, где-т... |
| Feb 23, 2026 | FOSDEM 2026: У реестров опенсорсных проектов недостаточно денег для внедрения базовой безопасности | Реестры открытого исходного кода находятся в финансовом кризисе, предупредил соучредитель фонда безопасности открытого исходного кода Alpha-Omega Майкл Уинсер после проверки их финансовой отчётности. Он отметил, что дело не только в расхода... |
| Feb 21, 2026 | Парсинг, боль и AI-напарник: Как я в 16 лет строил Open Source API и оптимизировал Postgres | TL;DR: Я хотел просто сделать JSON с хадисами. В итоге написал свой парсер для PDF, боролся с Gradle и доменами в Maven Central, ломал генерацию картинок в Satori и оптимизировал Fuzzy Search с 5 секунд до 2.7 секунд с помощью AI. Это истор... |
| Jan 23, 2026 | После Camunda 7 CE: что на самом деле нужно корпоративной BPM-платформе в 2026 году | В завершение 2025 года хотелось бы взглянуть на проект российского BPM-движка “с высоты птичьего полета” и оценить, насколько нам удалось продвинуться по глобальной функциональной карте. Особенно в свете недавно вышедшего обзора ТБанк, где ... |
| Dec 26, 2025 | Новый open source Java коннектор для Tarantool: практика с примерами кода | VK Tech открывает исходный код коннектора Tarantool Java EE и переименовывает его в Tarantool Java SDK. Дистрибутив уже доступен в Maven Central, что упростит интеграцию с Java-приложениями в корпоративных средах.
Меня зовут Артём Дубинин, ... |
| Dec 16, 2025 | Roborazzi для Jetpack Compose: как я автоматизировал проверку UI | Всем привет! В этой статье я расскажу, как подключал скриншот-тестирование с помощью Roborazzi в проекте, с какими проблемами столкнулся в процессе и как их решал, а также поделюсь кодом.Введение
Для начала — немного контекста. UiKit — это ... |
| Dec 14, 2025 | Как Европа развивает свою open source-экосистему — и какие новые возможности по кооперации появляются у стран БРИКС | В этом году Европа запустила межнациональный листинг репозиториев с открытым исходным кодом — EU OSS Catalogue. Рассказываю, почему она пришла к этой идее, как развивается реестр и есть ли аналогичные инициативы в других регионах.
О том, ну... |
| Jan 19, 2025 | Отправляем пуш уведомления в телеграм через Spring Boot | Допустим, вы хотите аутентифицировать пользователей через телеграм и после этого отправлять им уведомления. В Spring Boot приложении это сделать довольно просто ✨Аутентификация
Подробно про аутентификацию писал в этой статье. Здесь кратко п... |
| Dec 9, 2024 | Защита своего приложения с помощью JWT и Spring Security | В прошлой статье мы познакомились с такой технологией как Keycloak. Кто не видел и хотел бы ознакомиться с ней - Keycloak интеграция со Spring boot. Если говорить вкратце, то Keycloak это технология, которая помогает реализовать безопасност... |
| Dec 7, 2024 | Keycloak интеграция со Spring boot | Введение
Данная статья является инструкцией для новичков, которые хотели бы использовать Keycloak в своих проектах в качестве безопасности. В статье будет рассказано:
Что такое Keycloak и для чего он нужен.
Как запустить Keycloak.
Как созда... |
| Oct 24, 2024 | Функциональные HTTP-эндпоинты с Spring MVC/WebFlux и Kotlin | Функциональные подходы к разработке в Spring становятся все более популярными благодаря своей гибкости и лаконичности. В новой статье от эксперта сообщества Spring АйО, Михаила Поливахи, рассматривается, как можно эффективно определять HTTP... |
| Oct 17, 2024 | Unraveling the Mysteries of Apache Kafka: A Deep Dive into Code and Streams | Apache Kafka stands as a titan in the realm of data streaming. It’s a powerful tool, a data pipeline that connects systems, processes, and applications. But beneath its sleek surface lies a labyrinth of code, potential pitfalls, and hidden ... |
| Oct 15, 2024 | Kafka Streams ч1: Привет мир | Привет сообщество Хабр =)
Начав изучать Kafka Streams, я заметил, что для решения различных задач приходится искать информацию по разным источникам, поэтому со временем накопилось много собственных конспектов. Хочу поделиться ими в виде сер... |
| Sep 2, 2024 | Spark Essentials: Руководство по настройке и запуску проектов Spark с помощью Scala и sbt | Введение
В этой статье представлено подробное руководство по инициализации проекта Spark с помощью Scala Build Tool (SBT). Это руководство охватывает все этапы процесса, включая создание проектов, управление зависимостями, локальное тестиро... |
| Aug 27, 2024 | Kotlin Coroutines. От А до Я | Превью статьи
Всем привет!
В этой статье я бы хотел осветить загадочный мир корутин перед своим читателем, рассказав о них от А до Я.
Я старался написать эту статью таким образом, чтобы она была полностью понятна новичкам и могла использова... |
| Jul 27, 2024 | The Power of Metrics: Safeguarding Your .NET Applications with OpenTelemetry and Prometheus | In the fast-paced world of software development, every second counts. When an application goes live, the stakes are high. Bugs can lurk in the shadows, waiting to pounce. But fear not; there are tools that can shine a light on these hidden ... |
| Jul 22, 2024 | Сохранить, нельзя потерять, или почему нужно резервировать сервисы всеми доступными способами | Теряли ли вы когда-нибудь данные в результате технической аварии? Была ли среди них критическая информация, которая восстанавливалась медленно или только частично? Именно в такие моменты в команде впервые начинают думать о резервировании. П... |
| Jun 26, 2024 | Универсальный запуск | Разработка кроссплатформенных приложений давно стала обыденностью и уже не вызывает особых восторгов, но как насчет.. универсального запуска?
Представьте себе исполняемый файл, который без изменений и пересборки самостоятельно запускается в... |
| May 14, 2024 | Генерация OpenAPI из Spring Boot MVC | Код проекта можно посмотреть здесь.
Для генерации будем использовать зависимость springdoc-openapi-starter-webmvc-ui.
Библиотека поддерживает:
OpenAPI 3
Spring Boot V3 (для V2 используется другая зависимость, более подробно в документации)
... |
| May 6, 2024 | Расширение Функциональных Интерфейсов Java | За годы прошедшие с появления в Java8 функциональных интерфейсов у меня набралась коллекция полезных решений и шаблонов, которые я переносил из проекта в проект, и которые в стандартной версии так и не были осуществлены. Недавно я решил соб... |
| Feb 22, 2024 | Пагинация. Нестандартное использование Spring’овых Page и Pageable | Привет, Хабр! На связи Николай Пискунов, ведущий разработчик в подразделении Big Data. В прошлый раз в блоге beeline cloud я рассказывал о Spring Data JPA и Hibernate — поднимал вопрос решения проблемы динамически изменяемого запроса к база... |
| Jan 26, 2024 | Apache Maven — введение в автоматизированную сборку проектов (часть 1) | Apache Maven — автоматизатор сборки Java-проектов
Добрый день, Хабр, в данной статье мы разберём один из сборщиков проектов Apache Maven. Начнём с установки, настройки и сборки нашего первого проекта.
Apache Maven - это фреймворк по автомат... |
| Jan 6, 2024 | Создание и использование BOM в Gradle | Привет Хабр!
В каждой компании (а если она крупная, то, скорее всего, в каждом подразделении) должна быть выстроена культура использования BOM (bill of materials) для управления версиями зависимостей. В этой статье я хочу поделиться своим в... |
| Jan 4, 2024 | Строим свой SSO. Часть 4: Vue.js, Регистрация, Сброс пароля | Список статей этой серии
Часть 1: Строим свой SSO сервер, используя Spring Authorization Server
Часть 2: Строим свой SSO. PostgreSQL и ролевая модель
Часть 3: Строим свой SSO. Redis, Swagger, Vue.js
Часть 4: Строим свой SSO. Vue.js, Регистр... |
| Nov 11, 2023 | Инициализация WebSocket-клиента в автотестах на Java cо Spring Boot Starter WebSocket | О чём статья?
Если вам необходимо автоматизировать тестирование веб-сокетов, то эта статья будет для вас полезна. В ней я поделюсь своим опытом "прикручивания" библиотеки Spring Boot Starter Websocket к проекту автотестов на Java.... |
| Aug 12, 2023 | Поднимаем кластер PostgreSQL в Docker и Testcontainers | Привет Хабр!
В одной их своих предыдущих статей я рассказывал о том, как запустить PostgreSQL в Docker. Тогда речь шла об использовании «ванильных» образов Postgres и поднятии одного хоста. В большинстве случаев этого достаточно как для тес... |
| Jul 7, 2023 | Автоматически ищем техдолг с помощью RefactorFirst | Недавно вышла новая версия библиотеки RefactorFirst 0.4.0, которая позволяет определять и визуализировать технический долг. С этой информацией можно пойти к своему тимлиду или продукт-оунеру и выбить время на рефакторинг, имея под руками же... |
| May 12, 2023 | Как обработать ответ form-data с файлом и json | Допустим, у нас есть приложение на Spring c клиентом, который скачивает файлы из другого сервиса. Но в ответ нам приходит не только файл, а form-data: в одной части содержится мета-информация в json, в другой - нужный файл. Это выглядит при... |
| Apr 25, 2023 | Нагрузочное тестирование конечной точки Rest с помощью Gatling | 1. Введение
В этой статье мы рассмотрим, как можно использовать Gatling для тестирования производительности любой конечной точки Rest, уделяя особое внимание нагрузочному тестированию. Мы начнем с краткого введения в различные типы тестиров... |
| Apr 14, 2023 | Как заставить Jmeter собирать скриншоты графиков после тестов | Привет, Хабр!
Меня зовут Илья Улизко, я занимаюсь нагрузочным тестированием ДБО ЮЛ в блоке Цифровой Трансформации «РСХБ-Интех». В этой статье я поделюсь с вами опытом автоматизации сбора графиков в Grafana при отсутствии установленного graf... |
| Mar 22, 2023 | Как написать первый автотест на Android-приложение | Всем привет! Меня зовут Стас, и я Senior QA в компании inDrive, наставник на курсе «Инженер по тестированию плюс» в Яндекс Практикуме. Ещё веду телеграм-канал «Тестировщики нужны».
Многие начинающие автоматизаторы задаются вопросом: «Как же... |
| Jan 19, 2023 | Использование SEDA со Spring Integration и Apache Camel | 1. Введение
SEDA, или Staged Event-Driven Architecture, представляет собой архитектурный стиль, предложенный Мэттом Уэлшем в его докторской диссертации. диссертация. Его основными преимуществами являются масштабируемость, поддержка высококо... |
| Jan 16, 2023 | Управление зависимостями в IntelliJ IDEA | В этом руководстве, в продолжение темы просмотра зависимостей, мы рассмотрим управление зависимостями в IntelliJ IDEA.
Мы рассмотрим различные способы добавления зависимостей в ваш проект, а также способы добавления, обновления и удаления з... |
| Dec 26, 2022 | Как написать UI-автотесты, если не умеешь программировать? | Всем привет! В этой статье пойдет речь о том, как написать простые UI-тесты на языке Java. Это будет интересно тем, кто давно хотел попробовать себя в автоматизации или добавить новенького в свой текущий проект.
В этой статье не будет больш... |
| Dec 2, 2022 | Совместный доступ к Spark-датасетам из разных приложений — Redis нам в помощь | Apache Spark, универсальная платформа для крупномасштабной обработки данных, в сочетании с Redis способна обеспечить ускоренные расчеты в реальном времени для таких задач, как анализ временных рядов, прогнозы и рекомендации на основе машинн... |
| Nov 24, 2022 | Зачем писать на C++ в 2022 году? | C++ — это язык программирования, основы которого были заложены более 40 лет назад, но который по-прежнему повсеместен. В этой статье мы с вами разберемся, где и почему он используется, и порассуждаем, есть ли у него будущее.Где сегодня испо... |
| Nov 23, 2022 | JUnit: тестирование методов, вызывающих System.exit() | 1. Обзор
В определенных ситуациях нам может потребоваться, чтобы метод вызывал System.exit() и завершал работу приложения. Например, в случае если приложение должно быть запущено только один раз, а затем завершено, или в случае фатальных ош... |
| Nov 18, 2022 | Как сделать удобное взаимодействие с Kotlin из Swift: решение с помощью плагина MOKO KSwift | Привет! На связи Алексей Михайлов, технический директор компании IceRock Development. В прошлой статье я рассказывал о том, какие проблемы есть в работе с Kotlin со стороны Swift, и рассматривал способы их решения. В этой статье подробно ос... |
| Nov 16, 2022 | Попробуй пройди за 4 часа тестовое задание в канадскую компанию | Поделюсь своим свежим опытом непрохождения интервью, может кому поможет пройти отбор и получить работу. Называть компанию я не буду из-за возможного риска преследования с их стороны, но если вы пообщаетесь с ними, то легко узнаете по деталя... |
| Oct 21, 2022 | Из-за чего весь сыр-бор: про уязвимость Text4Shell | За последнюю неделю в информационном поле инфобеза стали появляться новости о втором пришествии уязвимости Log4Shell, окрестившим себя Text4Shell. Первым об уязвимости сообщил Alvaro Muñoz, который рассказал о возможности удаленного выполне... |
| Sep 16, 2022 | Компилирование и исполнение Java-кода в Runtime | Привет Хабр! Сегодня я хотел бы поговорить про динамическое компилирование и исполнение Java-кода, подобно скриптовым языкам программирования. В этой статье вы найдете пошаговое руководство как скомпилировать Java в Bytecode и загрузить нов... |
| Sep 12, 2022 | Что вам поможет стать программистом | Попытаюсь дать несколько советов начинающим изучать программирование и освоить профессию разработчика программного обеспечения. Возможно, некоторые из них вам покажутся спорными, у вас другой план на обучение или опыт когда удалось "во... |
| Sep 9, 2022 | Готовим приватные репозитории с помощью Artipie | Многочисленные санкционные ограничения могут стать преградой для использования существующих систем управления бинарными репозиториями, например, при приобретении необходимых лицензий. Таким образом, альтернатива существующим инструментам мо... |
| Sep 9, 2022 | Документация в Kotlin-коде и CI/CD | Всем, кто создавал библиотеки или сервисы с публичным API, хорошо знакома боль, когда документация отстает от изменений в коде и рутинный процесс обновления документации на сайте становится настолько неинтересным, что про него просто забыва... |
| Jul 7, 2022 | AssertJ как способ значительно улучшить код ваших тестов | Привет, Хабр!
В 2019-2020 годах на одном из проектов я был идейным вдохновителем перехода на JUnit 5. Для проверок мы использовали стандартные ассерты и Hamcrest. Тогда мне казалось, что этого более чем достаточно. Один из наших lead-инжене... |
| Feb 28, 2022 | Удобные инструменты для разработчика при непрерывном тестировании производительности | Сколько раз мы видели инфраструктуру и методологию тестирования, когда команда не может получить своевременную обратную связь о производительности разрабатываемой системы? Как правило, к тестированию производительности принято относиться ка... |
| Feb 1, 2022 | «Kiss the cook» или еще пара рецептов для XWiki | Свободного времени становится всё меньше и меньше, поэтому перейду сразу к делу.
В прошлых статьях я обещал поделиться еще парой приёмов по настройке XWiki, которую я использую как портал для технической документации.
Лучше поздно чем никог... |
| Jan 21, 2022 | NetApp : Improve Apache Spark performance with the S3 magic committer - The Spot by NetApp Blog | Most Apache Spark users overlook the choice of an S3 committer (a protocol used by Spark when writing output results to S3), because it is quite complex and documentation about it is scarce. This choice has a major impact on performance whe... |
| Jan 6, 2022 | JFrog : The JNDI Strikes Back – Unauthenticated RCE in H2 Database Console | A short preamble
Very recently, the JFrog security research team has disclosed an issue in the H2 database console which was issued a critical CVE - CVE-2021-42392. This issue has the same root cause as the infamous Log4Shell vulnerability ... |
| Dec 28, 2021 | Log4j Log4Shell 0-Day Vulnerability: All You Need To Know | Update 12/27/2021 - Expanded:Exploiting Log4j2 2.15.0 for remote code execution (added new bypass method)Update 12/27/2021 - Expanded:LOG4J_FORMAT_MSG_NO_LOOKUPS mitigation bypass by using CVE-2021-45046 (more vulnerable configurations)
Upd... |
| Dec 19, 2021 | Log4j Log4Shell 0-Day Vulnerability: All You Need To Know | Update 12/14/2021 - Added explanation about serialized Java objects bypass in Appendix B
Update 12/15/2021 - Added LOG4J_FORMAT_MSG_NO_LOOKUPS mitigation bypass technique by using CVE-2021-45046 in Appendix C
Update 12/17/2021 - Added infor... |
| Dec 16, 2021 | Log4j Log4Shell 0-Day Vulnerability: All You Need To Know | Update 12/14/2021 - Added explanation about serialized Java objects bypass in Appendix B
Update 12/15/2021 - Added LOG4J_FORMAT_MSG_NO_LOOKUPS mitigation bypass technique by using CVE-2021-45046 in Appendix C
Last Thursday, a researcher fro... |
| Dec 15, 2021 | Log4Shell 0-Day Vulnerability: All You Need To Know | Update 12/14/2021 - Added explanation about serialized Java objects bypass in Appendix B
Last Thursday, a researcher from the Alibaba Cloud Security Team dropped a zero-day remote code execution exploit on Twitter, targeting the extremely p... |
| Dec 13, 2021 | Log4Shell 0-Day Vulnerability: All You Need To Know | Last Thursday, a researcher from the Alibaba Cloud Security Team dropped a zero-day remote code execution exploit on Twitter, targeting the extremely popular log4jlogging framework for Java (specifically, the 2.x branch called Log4j2). The ... |
| Nov 24, 2021 | Туториал по JUnit 5 - Аннотация @ParameterizedTest | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
Оглавление
Настройка
Аннотация @ParameterizedTest
Источники тестовых аргументов
Параметризованные тесты с несколькими аргументами.
Вывод1. Настройка
Включите зависимость jun... |
| Nov 24, 2021 | Подробное руководство по инверсии зависимостей. Часть 2. Application модуль | Я, aa0ndrey, приветствую вас и приглашаю продолжить обсуждение темы инверсии зависимостей. В рамках данной финальной части будет рассмотрен application модуль. Будут определена его ответственность и будет рассмотрено то, как он взаимодейств... |
| Nov 19, 2021 | JUnit — создание отчетов в формате HTML | Рассмотрим как создавать HTML-отчет для результатов выполнения тестов JUnit. В этом примере я создаю HTML-отчет для проекта JUnit-Examples, представленного на Github.1. Подключаемый модуль Maven Surefire Report1.1. Добавить зависимость плаг... |
| Sep 25, 2021 | Подключение SignalR для Android на Kotlin | Если ты читаешь эту статью, наверно тебе, как и мне понадобилось подключить SignalR в своем мобильном приложении. К сожалению в русскоязычном сегменте не так уж много информации о том, как это сделать, а то что есть уже устарело.
В рамках э... |
| По колено в JVM куче, или на пороге потери данных | Пути назад нетСпойлер: здесь мы будем программно вытаскивать данные из JVM дампа кучи.Контекст и предыстория
Смоделируем ситуацию: у вас есть приложение на JVM (без разница, будь то Kotlin, Java или Scala), а еще у вас есть уверенность в се... |
| Незаслуженно забытый ZooKeeper | Несмотря на наличие работающего решения немалой части распределенных проблем о нем мало пишут и создается впечатление, что это что-то устаревшее и не заслуживающее внимания.
Это не так. Начинать новый проект с Зукипером или встраивать его в... |
| Veslo — расширение Retrofit для тестирования (Java) | Статья расскажет о расширении для декларативного HTTP клиента retrofit предназначенного в большей степени для функционального тестирования API. Создан в первую очередь для упрощения и ускорения разработки API тестов. Расширение позволяет ис... |
| Использование Gatling. Тестирование gRPC | Всем привет! Команда тестирования производительности Тинькофф продолжает цикл статей о нагрузочном тестировании различных протоколов с помощью Gatling.
В прошлой статье мы показали, как протестировать JDBC-протокол с помощью Gatling. В этой... |