На дворе лето, середина года уже позади. Самое время оглянуться назад и критически взглянуть на прогнозы, которые делались в декабре-январе. Итак, давайте посмотрим, что обещали нам по части BPM в 2025 году и что из этого сбылось, а что осталось лишь в фантазиях авторов этих прогнозов. В принципе все писали более-менее одно и то же, поэтому для разбора взял один рандомный прогноз «BPM Solution for 2025: Trends and Updates».
Циклические зависимости в Spring: проблема и способы её решения

Если вы хоть раз разрабатывали проект на Spring, наверняка сталкивались с циклическими зависимостями. Эта проблема настолько распространена и одновременно болезненна, что о ней можно услышать как от спикеров, так и от участников крупнейших технических конференций.
На недавнем JPoint один из разработчиков рассказал мне, как вручную избавлялся от циклических зависимостей на огромном боевом проекте, изучая гигантскую диаграмму зависимостей.
К счастью, современные инструменты разработчика позволяют решать эту задачу намного быстрее и эффективнее.
В этой статье я рассмотрю причины возникновения циклических зависимостей, продемонстрирую наиболее типичные случаи и расскажу о нескольких способах их решения, используя профессиональные инструменты разработчика.
День рождения Kotlin и релиз нового HTTP-клиента для IntelliJ IDEA в Open Source

День рождения Kotlin уже на следующей неделе! Мы не могли обойти это замечательное событие стороной и решили провести прямую трансляцию, посвященную ему.
Мероприятие пройдет онлайн 22 июля, в 17:00 (МСК), на YouTube, VK и RUTUBE каналах Amplicode. Участие абсолютно бесплатное.
Главное – зарегистрироваться, чтобы получить на почту ссылки на трансляцию и файл .ics для добавления события в календарь.
BSSN: Лучшая простая система на сегодня

Автор оригинальной статьи: Daniel Terhorst-North
Вы можете накормить волков и сохранить овец, если сделаете все правильно.
Многие организации живут в постоянном напряжении между двумя путями разработки: быстрым, но «грязным», и надежным, но медленным. Одни торопятся, оправдывая технический долг «прагматизмом», другие осторожничают, опасаясь ошибок и занимаясь оверинженерингом. Я предлагаю третий путь — «лучшую простую систему на сегодня» (Best Simple System for Now, BSSN), которая сочетает преимущества обоих подходов и не заставляет идти на компромиссы.
Storybook в IDE: конец эпохи копипаста

Если вы занимаетесь фронтенд-разработкой, то наверняка работали со Storybook — удобной витриной компонентов, на которой красиво лежат компоненты и примеры их использования. Его любят за интерактивную документацию, возможность визуального контроля и изолированной разработки. Но замечали ли вы, сколько действий приходится делать, чтобы взять компонент из Storybook и вставить его в реальный проект?
Наверняка вы сталкивались с ситуацией: нашли компонент в Storybook, затем переключились обратно в IDE, скопировали код, вставили, адаптировали, проверили, и повторили снова. Кажется, многовато действий для простой вставки компонента, правда? Постоянные переключения между браузером и IDE, ручной копипаст и отсутствие связи с уже написанным кодом делают этот процесс неудобным и медленным.
Storybook Studio: всё в одном месте...
Cборка Java-проектов в GitFlic Kubernetes-агентом

В последнее время, многие общепризнанные в мире сервисы оказались недоступны для разработчиков из России и им приходится искать аналоги. Одной из таких альтернатив для GitHub является сервис GitFlic. Это такой же хостинг исходных кодов, который, кроме того, предоставляет возможность использовать в работе реестры артефактов и пакетов для различных технологий. В нашем случае это можно засчитать за УТП (Уникальное торговое предложение), ведь не многие разработчики знают о сторонних registry-сервисах продолжая пользоваться DockerHub, который работает “по умолчанию”. Кроме того, развертывание собственного такого сервиса, соответствующего всем требованиям корпоративной безопасности, может потребовать немалых ресурсов.
Чтобы исходный код стал артефактом, т. е. ресурсом, готовым к развертыванию в тестовых или продуктивных средах без лишней ручной работы желательно иметь некоторый пайплайн, т. е. сборочный конвейер, который выполнит все преобразования. GitFlic не предоставляет агентов пригодных для сборки контейнерных образов, но позволяет подключать собственные. В данной статье мы настроим сборочный пайплайн для Java разработки на фреймворке Jmix с использованием агента, работающего в кластере Kubernetes.
Семь иллюзий Low code

Low code стремительно ворвался в корпоративный ландшафт, чего от него никто не ожидал. Мы думали — ну, да, занятная вещица, пусть пользователи поиграют в программистов, лишь бы работать не мешали. А сегодня куда ни глянь, все хотят, чтоб даже у серьезных энтерпрайз-решений обязательно были какие-то хотя бы элементы лоукода. Но зачем?
Интеграционное тестирование в Spring Boot: SourceCraft + Amplicode + Docker Compose Starter в деле

Когда одних юнит-тестов уже недостаточно, на сцену выходят интеграционные. В этой статье от команды Amplicode мы покажем, как протестировать REST API в Spring Boot с использованием современного стека: генерация тестов через Amplicode, автоматический запуск окружения с помощью Docker Compose Starter и поддержки со стороны LLM-инструментов от Яндекса.
Что нового в Amplicode 2025.1

С радостью сообщаем, что успешно состоялся первый мажорный релиз Amplicode в 2025 году. Этот релиз включает множество улучшений, исправлений и новых фич. Вот основные из них:
* Поиск по эндпоинтам
* Улучшенный HTTP Client
* Editor Inlay
* Улучшенная генерация Docker-файлов
* Интеграция с DBeaver
* Spring Boot Initializer
Что нового в IntelliJ IDEA 2025.1

Недавно вышла новая версия IntelliJ IDEA 2025.1, в которой появилось довольно много новых фич. Команда Amplicode подготовила обзор основных возможностей IDE.
Всё о процессных переменных, что должен знать BPM-разработчик. Часть 2

Эта статья продолжает цикл BPMN: Beyond the Basics – о скрытых нюансах и подводных камнях BPMN для разработчиков. Сегодня поговорим о процессных переменных — для чего они используются в процессе, чем отличаются от переменных в языках программирования и как работают области видимости. Казалось бы, что тут обсуждать? — Однако, если погрузиться на уровень поглубже аналитического, то обнаруживается много интересного. Поэтому в одну статью даже не поместилось, пришлось делить на две части.
Это вторая часть. Первую часть читайте здесь.
Jmix/Spring-приложение в IFrame

Предположим, у нас появилась задача встроить какой-то функционал, реализуемый системой на Jmix/Vaadin/Spring на другой сайт или в веб-приложение. Сейчас существует большое количество статических генераторов и других систем управления содержимым, где у разработчика есть доступ только к фронтенд-части. Если это не портальная система, обычным решением в таких случаях будет использовать встраивание через IFrame.
Для того чтобы приложение с интерфейсом на Vaadin открывалось в айфрейме за пределами локалхоста, ему требуется включенная поддержка cookie, что по современным стандартам безопасности возможно только если и сайт и приложение, находящиеся на разных доменах, работают по протоколу HTTPS доверенного уровня и для сессионных кук включен параметр Secure и выключен SameSite. Поэтому нам придется немного заморочиться, что бы это все заработало в Spring Boot-приложении даже если речь идет о тестовых средах.
Всё о процессных переменных, что должен знать BPM-разработчик. Часть 1

Эта статья продолжает цикл BPMN: Beyond the Basics – о скрытых нюансах и подводных камнях BPMN для разработчиков. Сегодня поговорим о процессных переменных — для чего они используются в процессе, чем отличаются от переменных в языках программирования и как работают области видимости. Казалось бы, что тут обсуждать? — Однако, если погрузиться на уровень поглубже аналитического, то обнаруживается много интересного. Поэтому в одну статью даже не поместилось, пришлось делить на две части.
Альтернативы IDEA CE для Jmix и Spring Boot разработчиков

Недавно состоялся долгожданный релиз OpenIDE — открытой среды для профессиональной разработки (Spring Boot/Java/Kotlin и многое другое) от консорциума «Haulmont – Axiom – Astra», построенной на принципах открытости, свободы и отсутствия какой-либо дискриминации. В отличие от конкурентов, эта IDE не позиционирует себя как очередное решение для «импортозамещения», а является самостоятельным продуктом, нацеленным на решение широкого спектра задач современной разработки.
К написанию данной статьи дополнительным стимулом стал «повышенный интерес» сообщества Jmix-разработчиков к GigaIDE от Сбера, релиз которой состоялся почти год назад (27 июня 2024 года). За прошедшее время те, кто хотел, уже успели ознакомиться с возможностями GigaIDE. Теперь же разработчики получили возможность попробовать OpenIDE и сравнить её с предыдущей альтернативой.
Цель сегодняшней статьи — подробно сравнить эти два продукта и ответить на важные вопросы.
Ближайшие события
OpenIDE ищет партнера в сфере ИИ

ИИ-ассистенты прочно вошли в арсенал разработчиков, особенно в составе современных IDE. Они обещают ускорить написание кода и упростить решение задач. Мы в OpenIDE считаем это стратегическим направлением и обсуждаем партнерство с ведущими компаниями в области ИИ для внедрения более эффективных подходов к разработке. Напомним: OpenIDE это открытая российская среда разработки, создаваемая Haulmont совместно с Группой Астра и Axiom JDK.
Но действительно ли ИИ-ассистенты выполняют эти обещания? Похоже, не всегда. В статье разберемся, почему ожидания от ИИ-ассистентов часто не оправдываются — и что может сделать их действительно полезными.
Разбавим серые будни

Однажды зимним вечером тусили в хорошей дружеской компании и между делом затронули тему про «серые будни ИТ-шника». Про то, что многие концептуальные вещи (а не чисто ремесленные) плохо гуглятся и вызывают ступор у большинства начинающих процессных аналитиков и разработчиков. Ну и как-то так, слово за слово, пришли к идее о том, чтобы было бы здорово разбавить яркими красками и эмоциональными переживаниями сухой язык и весьма условные пиктограммы промышленных спецификаций. Так появился наш новый уникальный мерч, ну и прикольная динамичная настолка.
Такой простой Exclusive Gateway

Это первая статья из серии BPMN: Beyond the Basics – о скрытых нюансах и подводных камнях BPMN для разработчиков. В отличие от аналитиков, разработчикам надо не просто знать нотацию, но понимать, как реализован тот или иной ее элемент. А тут, как говорится, не все так однозначно.
Для начала возьмем самый простой – шлюз ИЛИ (Exclusive Gateway). На первый взгляд, всё очевидно: ставишь ромбик, рисуешь стрелочки – и вуаля! Но что происходит внутри движка? Как он выбирает путь выполнения? Что делать, если несколько условий срабатывают одновременно? А если ни одно не выполняется? В этой статье мы разберем эти вопросы и рассмотрим особенности реализации и использования этого элемента.
Разбираться будем на примерах в Jmix BPM с движком Flowable, но принципы универсальны – нотация BPMN 2.0 едина, и основные механизмы работы элементов схожи во всех движках, частности в Camunda 7. Об отличиях, если они встретятся, будем говорить особо.
В поисках идеального Database-клиента для IDE: Amplicode выбирает DBeaver

Один из частых вопросов, которые мы слышим от наших пользователей, связан с заменой встроенного инструмента для работы с БД, доступного ранее в IntelliJ IDEA Ultimate. В связи с тем, что DataGrip больше не доступен (а именно так называлась эта функциональность), многим разработчикам приходится искать альтернативу инструменту.
Нас эта проблема волнует не только как разработчиков Amplicode, но и как участников проекта OpenIDE. Мы считаем очень важным предоставить российским разработчикам максимально удобное и мощное решение.
Неблокирующий вызов внешнего сервиса в процессе

Довольно часто из процесса приходится обращаться по API к различным внешним сервисам. По сути, это стандартный сценарий оркестрации систем или даже микросервисов (пардон за модное слово). На BPMN диаграмме это выглядит просто и логично – постучались куда-то по API, получили ответ и перешли к следующей задаче. Для моделей аналитического уровня это нормально.
Однако, переходя к исполняемой модели, надо учитывать, что внешний сервис может быть недоступен или просто отвечает очень небыстро. Что происходит с процессом в это время?
Выпущена версия Jmix 2.5

Команда Jmix рада сообщить о релизе Jmix 2.5, который предлагает множество новых функций, улучшений и обновлений, направленных на повышение эффективности разработки. Этот релиз сосредоточен на повышении эффективности разработки, расширении возможностей интеграции и предоставлении новых функций приложений.
Вот краткий обзор ключевых функций и улучшений в Jmix 2.5.
Информация
- Сайт
- www.haulmont.ru
- Дата регистрации
- Дата основания
- Численность
- 501–1 000 человек
- Местоположение
- Россия
- Представитель
- Haulmont