Комментарии 113
Я видел одну такую компанию, по факту покупатель low-code платформы просто аутсорсит свой ит-штат на поставщика такой платформы (постоянные консультации и кастомные фичи по заказу). Так что даже в самом худшем случае кодеры никуда не денутся, посто они будут работать на эту платформу.
Упомянутое ПО на Mendix должно было решать проблемы управления проектами для субподрядчиков. Как только появлялась необходимость выйти за рамки тривиального CRUDа, начинались танцы, так как сама парадигма LCP говорит нам «ешь-что-дали». А выход за рамки был нужен, т.к. бизнес-процессы от региона к региону отличались весьма радикально. Юнит-тесты есть, но свои. Голый код на Java писать можно в action'ах, но Mendix Studio это не поощряет, намекая, что LCP это много кликать мышкой, а если ты хочешь писать код, то ты делаешь что-то не так. UI приложения выглядел крайне топорно, в результате чего UX субподрядчиков выражался, в основном, нецензурными лексическими конструкциями.
Умножим всё это на проблемы доставки фиксов из-за отсутствия привычного git flow, проблемы тестирования в CI/CD, а также реально новую среду, в которую разработчиков засовывали насильно. Субъективно человеко-ресурсов было потрачено ничуть не меньше, чем если бы приложение писалось традиционными методами в команде, которая натаскана на выбранный стэк технологий.
Наличие BPMS( а иначе зачем вообще BPMN ) как части системы упрощает понимание как же у вас в реальности работает бизнес логика «высокого уровня».
Объем кода при этом меньше не становиться( если конечно не писать свой движок выполнения бизнес процессов ), но система становиться более прозрачной и ее легче модифицировать.
Во-первых, это долго. Очевидно, быстрее написать 10 строк кода в хорошей IDE, чем перетаскивать, настраивать и соединять десятки блоков.
Не поверите, но многие 1Совцы считают, что мышкой у них получается быстрее программировать, чем в нормальной IDE. На вопрос, как они потом мышкой делают merge (даже без привязки gitflow), к сожалению, пока никто внятного ответа не дал.
И интерфейс у них уже давно с относительным позиционированием (а не олдскульный WYSIWYG), и задается как иерархия контейнеров. Но его тоже мышкой пишут.
Логику они все же пишут в коде, а не блок схемами.
Чем по вашему логика группировки данных (регистры) или логика запросов (запросы) — меньшая логика, чем логика проверки ограничений (например что остаток меньше 0), которая в 1С задается в коде?
Я имел в виду сравнение с алгоритмами. Код с ветвлениями, условиями, вызовами функций и т.п. Что-то вроде (фантазирую) «проверить остатки, если недостаточно проверить дату следующего поступления или отменить другой заказ, если этот клиент имеет приоритет».
больше 0 если по складу нужно проверять положительный остаток). Вот тут чуть подробнее.
Хотя впрочем учитывая что в SQL с этим не справились, ожидать того же от 1С было бы достаточно глупо.
В любом случае ограничения это тоже декларативная логика по сути, но ничего — задается кодом. А регистры мышкой.
«проверить остатки, если недостаточно проверить дату следующего поступления или отменить другой заказ, если этот клиент имеет приоритет»
Собственно именно поэтому в 1С ограничения и задаются в коде. Т.к. простые случаи все-таки встречаются довольно редко.
В Java полно вариантов задавать их декларативно, вот тут неплохой обзор.
Именно в платформе 1С есть некоторый аналог описанных например в Transaction listeners валидаторов, в виде подписок на события (т.е. некоторая процедура, которая срабатывает перед/при записи объекта в БД, в том числе, на нее можно навесить проверку и транзакцию отменять). Активно используется в типовой «Библиотеке подсистем».
В визуальном программировании как таковом нет ничего плохого
Как вы правильно заметили, когда его не начинают использовать везде где только можно без альтернативы. То есть как дополнительный механизм — почему нет. Но как у основного механизма у ВП проблем очень много. Вот тут я немного касался этой темы.
А те редкие бухи, которые умудряются до сих пор работать на 1С 6, так сами и настраивают печатные формочки и проводки.

И это называется Fast configuring new data structure!
даже простые пользователи смогут самостоятельно создавать бизнес-приложения
Напоминает SQL. А в итоге получим ещё один тип вакансий на рынке для разработчиков.
Другое дело, что правильнее выбрать что то из open source BPMN. Хоть и похоже во многом, но BPMN — это стандарт.
То есть запилили по сути прототип (сильно неоптимальный), но так как задача хоть и регулярная, но нагрузки не создает — переписывать просто не целесообразно.
Я, например, точно знаю, что большая часть моих отчетов на SQL не оптимизирована. Но я и не собираюсь тратить время на их оптимизацию. Сейчас, например, делаю отчет. Его будут запускать несколько раз в год. И ВСЕМ вообще без разницы, отработает он за 5 секунд или за 50 секунд.
самый лучший вариант я так понял это собирать на этих схемах часто меняющуюся бизнес логику. интересно, есть такой инструмент для .net который можно было бы использовать в проектах на c#?
Из примеров которые встречал недавно в больших компаниях:
1 — покупка нового обычного двух-процессорного сервера(около 20к-30k на сайте Dell) — оценка бюджета 0.5млн$. На вопрос — откуда такая цифра — нужны резервы, спец по по управлению, места в стойке, услуги по настройке, лицензии на управляющий софт и т.д
2 — развертывание новой версии системы с 1 новой фукнцией — несколько месяцев работы
3 — Разработка нового сайта для управления партнерами(их несколько тысяч, до этого управление велось в Excel — по сути одна таблица) — около 1 млн$, почему так много — нужно привлекать несколько комманд — железо, безопастность, юристов и т.д. для каждой будет менеджер проектов, наверху координатор все координировать
4 — добавление поля в таблицу на SQL — около недели работы(несколько уровней согласования, оформление заявки для внешней фирмы и т.д.)
Т.е. в этих то случаях используя Low code платформы пользовать сам может сделать то что нужно за гораздо меньший бюджет(это называется citizen developer), сейчас этот рынок растет довольно сильно
Т.е. в этих то случаях используя Low code платформы пользовать сам может сделать то что нужно за гораздо меньший бюджет(это называется citizen developer)
Это каким образом он это сделает, если у него доступа нет? Ново купленный сервер сам собой настроится, если кнопочку в системе нажать? Я вообще не уловил связь ваших примеров и Low code.
Но факт что сейчас это топ. К примеру с последних конференций Microsoft показывают истории про механика который сделал PowerApp(это low code от Microsoft) который позволяет с телефона отправлять сканы повреждений машины, данные о клиенте и их оценивать
На мой взгляд, low-code это просто следующий шаг развития макросов для электронных таблиц/правил сортировки писем в ящике/CMS-систем/разнообразных конструкторов опросов в интернете (я даже не буду пытаться перечислить все разнообразные сервисы вроде IFTTT). Еще одна зверушка в зоопарке костылей и велосипедов, уже доступных и привычных пользователям.
И да, на долгой дистанции и хотя бы среднем бизнесе (при наличии команды разработки или денег на ее найм) использовать такое решение будет крайне глупо. Но из этих инструментов пользователи реально могут собирать несложные решения для своих процессов не привлекая к этому разработчиков.
P.S. если уж на то пошло, то иногда покупая «сложное готовое решение, на профессиональном фреймворке», компания оказывается владельцем вот такого же набора костылей, но уже «собранного командой профессионалов» и за совершенно другие деньги =)
И да, продают их практически исключительно крупному бизнесу. Для остальных стоимость запредельная. Если память не изменяет мне, бОльшая часть клиентов Mendix платит более $1M в год.
А ценность для крупного бизнеса именно в обходе того бардака, который описал DenisTrunin выше. Поэтому и продают их не ИТшникам, а бизнесу.
Посмотрите маркетинговые материалы low code платформ. Их как раз противопоставляют фреймворкам
Сужу по тем материалам, что я видел, но тот же MS Power Apps описывается как «пользователь сможет легко сделать то, что раньше мог сделать только разработчик» и «разработчик может сэкономить свое время и расширить возможности платформы». Не сказать что наглая ложь, хотя понятно что с оговорками.
Но вообще, противопоставление не совсем фреймворкам. А «low-code самостоятельно VS. spring + разработчик» или «low-code сегодня VS. изучать JAVA и более крутое решение завтра». Т.е. упор на «просто», «быстро» (без «дешево» и «качественно»).
Для остальных стоимость запредельная
Глянул стоимость Mendix — 2000 у.е. на пользователя в месяц, это конечно мощно. Но не у всех такие ценники, есть и вполне демократические.
Про то, что разработчики не нужны так вообще годами рассказывают. С другой стороны — модная тема была пару-тройку лет назад, про «программирование — вторая грамотность». Вот такие платформы как раз на эту идею хорошо ложатся.
Дело в том, что бардак — он зачастую возникает не просто так. Люблю я очень одну историю, как я был разработчиком интеграционной шины.
В проекте были задействованы примерно пять или чуть больше систем банка, расположенные в разных физических сетях, построенные на разных технологиях, и связанные аж двумя шинами минимум (наша — одна из двух).
Так вот — работы по изменению кода там было на пять строк кода. Но при этом аналитики двух систем — источника и приемника, собирались вместе решать, как же нам все это сделать. И занимались они этим пару месяцев. И полчаса на правки кода. И с первого раза не получилось.
Вот вспоминаю это — и каждый раз представляю, как бы пользователь сам бы это реализовал бы, в графической форме, в виде стрелочек… тяп-ляп за пять минут бы.
Мораль — иногда реализация это полная фигня, 5 строк кода, а вот понять, что именно нужно сделать, чтобы пять или шесть систем продолжали бы совместно работать — это гораздо сложнее.
И занимались они этим пару месяцев. И полчаса на правки кода. И с первого раза не получилось.
Присутствовал на совещании, где представители двух команд разработки (одна внутренняя, вторая — аутсорсеры) решали кто должен к пересылаемым между двумя системами данным применять метод String.Trim. Все были очень серьезны, фиксировали все договоренности на бумаге и т.д.
А пользователь бы это реализовал за 5 минут. Так что тут как в анекдоте — «случаи бывают разные».
Разработчик: Технологии, фреймворки?
Менеджеры: %tech_name%, модный, современный, руководство одобрило.
Разработчик: Это пойдет в прод?
Менеджеры: Ни в коем случае, только демо/черновик. Побыстрее.
* Разработчик заглядывает в контракт в поиске условий увольнения без привязанности к отзывам пользователей, находит
Разработчик: Хорошо, вот сроки.
…
Менеджеры: Демо понравилось, давай в прод.
Разработчик: Это черновик. Он медленный и неподдерживаемый. Надо переписать.
Менеджеры: Некогда. Оно работает? Работает. В прод.
* Разработчик открывает линкедын.
Разработчик: Да на здоровье.
…
Менеджеры: Пользователи жалуются на приложение. Оно тормозит и жрет ресурсы.
Разработчик: Я предупреждал. Переписать нахрен.
Менеджеры: Некогда. Уже в проде, нужен саппорт того, что есть.
* Разработчик увольняется.
два часа назад у меня было собеседование (по телефону) на должность Solutions Architect (Presale) в Mendix… а тут бах — статья :D
К моему сожалению, эти стрелочки очень нравятся уровню Си и они диктуют — смотри, готовое решение, сейчас возьмём, накликаем и готово… а тут команда будет пахать полгода… лучше 100.000 € заплатим.
Но выкатывается это к сожалению только в то, что в итоге, стрелки рисуются год, система диктует возможности продукта, а не наоборот. А тот кто принял решение, назад не пойдёт — ибо лицом в грязь…
В итоге разрабы в шоке, продакт оунер заткнулся.
Profit.
Радует что не оставляют попытки упростить процесс разработки, но к сожалению это все еще слишком слабо формализованный процесс, чтобы можно было его «втискивать» в подобные инструменты.
Стоимость лицензии на одно приложение начинается от $1875 в месяц при условии подписки на три года
Не то чтобы очередь выстроится, но желающих поработать программистов будет достаточно. Мы находим и на $1500. Это при том что неквалифицированному сотруднику за работу с системой тоже придется платить хотя бы $1000, итого $2800 в месяц, а за такой ценник уже и очередь настоящих программистов подвалит: ) За $100 в месяц конечно шикарная была бы идея.
По тем кейсам, которые мне известны, лоукоды продавались именно как панацея, а не как «узкоспециализированная и спецефичная» вещь — что в последствии повлекло завышенные ожидания и крах. Именно на это и делает акцент автор. Одна из ключевых мыслей тут, как я ее понимаю, именно вредоносность «заноса» технологий сверху, т.к. ниже по иерархии маркетниг-булшит не очень работает.

Другое дело — реализация. В современных продуктах я не встречал красивых реализаций.
В 90-е был язык Clarion (сейчас сильно сдулся).
В нем раздельная схема базы и UI, визуальная настройка массы пропертей UI, шустрый компилятор, а также развитый язык шаблонов кодогенерации.
Значительно ускорял разработку. Позволял небольшим командам вести массу продуктов.
Я лично писал на DevExpress XAF, и он прекрасно подходит для внутренних проектов. Да не очень шустрый, но там из коробки есть и авторизации/аутентификации, аудит, разграничение прав, всякие отчетики, дэшбордики. На нем можно буквально за неделю сделать приемлимую CRM.
(И таки нет, я на них не работаю смайл)
Да, Visual Studio понадобиться, да человек должен будет понимать, что такое программирование, но скорость разработки в разы выше, чем у программирования блок схемами. Благо, без кода все-равно ни там, ни там не обойдется.
Дополнительная информация о Comindware Business Application Platform доступна по запросу
Минуточку, а где же ваша документация? Или это кот в мешке?
Продираясь через маркетинговые перлы на вашем сайте, осмелюсь предположить, что ваша платформа – это классическая BPMS плюс набор готовых решений, и вы видимо сознательно пытаетесь «примазаться» к хайповой теме low code. Я понимаю, когда это делают маркетологи, но не на хабре же!
У BPMS есть своя понятная ниша. Но статья же про другой класс систем. Даже больше, статья как раз о том, что не надо вестись на маркетинговый bullshit про «в 4 раза быстрее» и «идеальный фундамент для цифровой трансформации предприятия». Надо понимать, что применимость и гибкость подобных инструментов крайне ограничена. Ни на BPMS, ни на Low Code платформе невозможно построить не то что ERP, даже простую удобную CRM типа AmoCRM.
И последнее, у вас на сайте говорится, что разработчику достаточно реализовать 10-20% системы, остальное все аналитики мышкой накликают. Это прекрасно. А вот расскажите теперь как именно это делается? Какой язык, среда, где точки входа, как организован контроль версий? А то ведь какой сюрприз – на сайте ни документации, ни примеров.
Как же меня бесят SaaS решения, на сайте которых нет ни простейших демо, ни даже цен. Всё это является всего лишь попыткой срубить бабла. Напишет Вася Пупкин — мы ему за 100 баксов продадим. Напишет человек из крупной фирмы — мы ему вломим за это же самое решение сто тысяч.
Стыдно такими быть. Увольте нафиг всех сейлзов, сделайте вменяемую ценовую политику, покажите демо — и я уверен, клиентов будет только больше.
Хотя с отсутствием демо, детальных примеров и вариантов использования согласен. Обычно это показатель маркетинг булшита максимального уровня.
Вот захожу на www.atlassian.com/ru/software/jira/pricing
и вижу сайт здоровой компании. И демо доступ без рабочего емейла и автоматом дают.
А вот это сайт раковой компании
www.comindware.com/ru/company/contact-us/?product=platform&form=getaquote
Цен нет, демо тоже нет (только после обработки сейлзов)
Все же некорректно сравнивать полусервисные компании (где сервис являются важной неотъемлемой частью продукта) с компаниями продающими коробочные решения, в стиле «ешьте что дают». Безотносительно от того какой подход из них правильный (если так вообще можно говорить).
Цены на Боинги весьма известная величина. Да, их нет на сайте, потому что у них там нет калькулятора, а цена сильно зависит от комплектации. Но даже гугл знает ответ в вакууме:
Boeing 737 Next Generation 737-600/-700/-800/-900
Unit cost (2019 US$ million) -700: $89.1; -800: $106.1; -900ER: $112.6
А что касается IBM, то тут все очень плохо. По уровню донности IBM и SAP находятся на самом дне вместе. Дорого, плохо, медлено. Зато откаты платят исправно. За что и любят.
Ну и у Боинга тоже нет цен. А среднюю температуру по больнице и для компании, в которой я работаю тоже несложно найти. Хотя конкретно то над чем я работаю вообще бесплатно. Так что тут я согласен с euroUK :)
И это не говоря уже о том, что у тех же авиакомпаний, цена за одни и те же места (!) может в несколько раз поменяться в течении пары дней. И это не говоря про бизнес-класс и всякие мили за которые его можно купить. Ну и все тоже самое также касается например отелей и тонны других рынков.
1) Чтобы снять с себя ответственность или из-за лени (еще никого не уволили за то, что он купил IBM)
2) Потому что откаты с миллиарда больше, чем откаты с 20 миллионов.
3) 20летнее легаси
Других причин покупать в 2020х годах решения типа SAP просто нет, никакой экономической выгоды чтобы окупиться они просто не принесут.
Но все же справедливости ради нужно отметить, что для сложных бизнес-приложений сильно лучших альтернатив САПу в принципе то и нет. С точки зрения платформы ничего радикально лучшего не придумали (у САП свой высокоуровневый DSL довольно неплохо подходящий для конвеерной разработки бизнес-логики, как его называют сами саперы «Foxpro на стероидах»), а за долгие годы существования накоплено много готовых решений и опыта, пусть и не всегда удачного.
То есть я не спорю что «говно мамонта», все дела. Но что по вашему сильно лучше? Сложное бизнес-решение на Node.Js или Java Spring? Я вас умоляю. Delphi + Oracle / PostgreSQL. Такое же говно мамонта. .Net или надстройки над Python (аля Odoo)? Ну да местами лучше, местами хуже (все же с DSL в многих местах тяжело соревноваться), но даже никакого x2 (не говоря уже о x10) нет. Местные игроки аля 1С? У них своих скелетов еще больше чем у SAP.
А в плане готовых решений они все уступают SAP и часто значительно (это во многих случаях признают даже те кто в конечном итоге выбирают не SAP'кие решения).
При этом, в тех компаниях где я видел SAP, он не использовался и на 10%.
Также не стоит забывать сколько стоит железо, чтобы SAP хоть как-то работал и мы посчитаем, что любое решение, включая самописное, будет дешевле и быстрее.
Что касается стэка, мне сложно что-то говорить как шарписту, но мое ИМХО .netcore3 + EFCore + PostgreSQL меня удовлетворяют на 100% по скорости разработки, развертывания и работы.
При этом, в тех компаниях где я видел SAP, он не использовался и на 10%.
Компании разные бывают и процент фейлов в крупных компаниях аля SAP у большинства его конкурентов не меньший.
Что касается стэка, мне сложно что-то говорить как шарписту, но мое ИМХО .netcore3 + EFCore + PostgreSQL меня удовлетворяют на 100% по скорости разработки, развертывания и работы.
Ну если вам нужно будет разрабатывать очень сложные по функционалу приложения (далеко уходящие от CRUD и простых ORM), то эта связка даже SAP с его ABAP не обгонит. Не говоря о том, что у SAP уже готового кода вагон и маленькая тележка.
1) Отсутствие компетенций в написании ТЗ приводит к тому, что компания заказчик заплатит два или три раза, прежде чем результат хоть как-то будет походить на требуемый.
2) Заказчик будет платить джунам по цене синьоров (у него же нет компетенций чтобы оценивать уровень владения инструментом). Я видел такое у всех крупных интеграторов.
3) Без четкого понимания, заказчик будет платить за то, как интегратору удобнее реализовывать систему (были на тот момент команды на Go без работы — будет у клиента на Go)
4) Интегратор сделает все возможное, чтобы заказчик не слез с иглы, даже на другого интегратора. Даже если у SAP готового кода вагон — то интегратор сделает свою версию
5) Программист в штате может решать и другие задачи, коих в компаниях и со 100 сотрудниками может быть тьма. Если для них нет задач, то компании пойдет любое коробочное решение, а не интегратор.
6) Не стоит забывать, что SAP не может ничего зафейлить, так как он ничего не продает лично. А его вендеры и фейлят, и сроки срывают легко и просто.
Ну и что касается сложных приложений. Любое мое приложение, на любом объеме данных будет работать в разы быстрее, чем SAP. Потому что я делаю схемы БД и бизнес логику под задачи, а не обмазываюсь 15 уровнями абстракции фреймворков разного уровня. (И да, я работал через netcore3 + EFCore + MS SQL с десятками миллиардов записей)
Вот пример:
ELMA4: новая low-code платформа для быстрого построения корпоративных приложений
С моей точки зрения, между этими терминами (BPMS and Low Code) разницы особой нет. Но, наверно, потому, что если в Low Code нет BPMN — то покупать такой «чемодан без ручки» будет разве что «эффективный менеджер». По крайней мере я так считаю. :)
Ну и, разумеется, крайне глупо на таких инструментах пытаться реализовать ERP, CRM или просто калькулятор.
Low-code как концепция – это решение для бизнеса, который как раз хочет минимизировать зависимость от вендора.— простите, но это очень смешно. У вас нет лицензионных платежей? Решение на Comindware можно мигрировать на другую платформу?
По поводу невозможно построить ERP|CRM, на сколько мне известно на нашей платформе делали и то и то, причем довольно сложное и удобное— пруфов не видно. Но даже допустим. И какое там соотношение между кликами мышками и кодом на C#? Я на 146% уверен, что в таком случае это «каша из топора».
потыкаться в триалке нашей платформы— спасибо за предложение, но тратить время на изучение малораспространенного закрытого продукта не готов. Я не так давно довольно много времени потратил на изучение известных представителей мира Low Code (Mendix) и BPMS (Bizagi), собственно часть выводов отражена в статье.
В случае заказной разработки, как мы все знаем, это та ещё «игла»— От такого поворота даже я ох… нел (с)
Впрочем, в полемику custom dev vs product vs platform dev я не буду вступать. Наша компания работает по всем трем моделям. Мы (компания Haulmont) создатели как довольно популярной RAD платформы с открытым кодом (CUBA Platform), так и продуктов (Тезис ECM), а также занимаемся заказной разработкой. Поверьте, я прекрасно знаю особенности и применимость каждого из сценариев.
Всё таки конкурируете: у клиента один бюджет и отнесёт он его либо вам, либо вендору Low-code, либо вендору «коробки».
Да, гвозди так же с конкурируют с саморезами, а мясо с овощами.
Насколько я знаю, единственный широко распространенный стандарт, описывающий набор графических символов, «программу» из которых можно запустить на исполнение — это BPMN. Более того, этот стандарт существует уже довольно много лет. Следовательно, системы, в которых нет BPMN или которые обещают, что программисты не понадобятся (на BPMN, чтобы заработало, все равно надо писать программу))) — просто очередной вариант «сравнительно честного способа отъема денег».
Остапов Бендеров во все времена хватало. :)))
То есть стандарт один, но используется он совершенно по-разному.
«Low code — это совокупность средств для разработки с использованием графических элементов. Это и деплоймент, и визуальная разработка интерфейсов, и визуальная разработка логики.»
То есть первое, что надо понимать — код мы все равно пишем. В виде стрелочек и прямоугольников или в виде слов и цифр — но в любом случае пишем. Глупо думать, что человек без специальной подготовки сможет придумать и записать даже относительно простой алгоритм. И не важно, будет записываться алгоритм буквами или прямоугольниками.
Второе — очень желателен общепризнанный стандарт. То, что Mendix сделал microflows на основе BPMN — это как раз недостаток. В первых двух буквах BPMN четко указана направленность этого стандарта (Business Process Model and Notation), это не универсальный стандарт и сомневаюсь, что его использование в других сферах будет эффективно.
Третье — описывать некоторые (довольно многие) вещи с помощью графических элементов — неудобно.
Если суммировать — попытка сделать инструмент «для разработки произвольных приложений» с помощью только графических элементов, предназначенный для пользователей вообще без знаний или с очень минимальными знаниями в области программирования…
Это к Остапу Бендеру. :)))
Тот же BPMN пользователи с минимальной подготовкой могут понимать «в целом» — как это работает и находить ошибки в логике с точки зрения бизнеса. Но самостоятельно написать относительно сложный бизнес процесс — уже не могут. Нужна более серьезная подготовка. Как минимум несколько дней. И в любом случае многие «низкоуровневые» вещи нужно будет написать на обычном языке программирования (Java, Python...), иначе будет жесть.
P.S. В использовании BPMN в microflows ничего плохого не вижу.
В принципе невозможно (по крайней мере сейчас, до изобретения сильного ИИ или чего то сопоставимого) создать программу любой сложности (даже самую простую) без того, чтобы придумать в голове и записать в каком либо понятном компьютеру виде алгоритм.
Те же макросы в Ексель — это тоже программа с кодом.
Пока алгоритм относительно простой — можно рассчитывать, что справится пользователь с минимальной подготовкой. Мы (люди) все немного программисты. :)
Но как только сложность алгоритма увеличивается — уже не важно, будут графические значки или английские слова — пользователь без подготовки его не реализует. Да, можно привести примеры, когда способный человек несколько недель (месяцев) сидел, разбирался и реализовал довольно сложную вещь. Но ведь это и есть обучение программированию! :)))
А BPMN — он в первую очередь про бизнес процессы. Разумеется, он относительно универсален, но использовать во всех задачах…
Для систем, которые не про бизнес процессы — нужно придумать свой язык и сделать стандартом. Пока этого не сделали — серьезно вкладываться в такие системы и хоть сколько нибудь серьезные задачи с их помощью решать — не целесообразно. Альтернативы есть (обычные языки программирования со своими стандартами).
А про свою область применения полностью согласен. Каждый инструмент должен использоваться в правильной (подходящей для него) области.
Я, например, специализируюсь на финансах. Любимый инструмент всех финансистов — Ексель. Кстати, считается, что его можно начинать использовать с минимальным обучением, что в целом правда. Для многих задач Ексель — прекрасный инструмент. Но как только его начинают использовать для неподходящих задач — сразу вылазит множество косяков, которые в рамках Екселя побороть невозможно. Ну не подходит он для очень многих задач.
Хотя ежики все равно продолжают плакать, колоться, но упорно есть кактус…
Итак, ориентируя продажи на топ-менеджеров, вендоры low code платформ обещают, что даже простые пользователи смогут самостоятельно создавать бизнес-приложения.
То есть разработчики больше не нужны?!
Возможно, что дело в конкретной нише и даже в конкретном вендоре, но я не вижу причин говорить о том, что Low-code это сплошной риск.
Про бизнес не знаю, но в области встраиваемых систем реального времени тот же Matlab/Simulink является low-code платформой, позволяющей создавать свои приложения для систем управления, без подключения программистов. При этом программистам, естественно, тоже отводится свое место, но уже не в качестве основных разработчиков функциональности, а в качестве системщиков. Про Дракон тут тоже упоминали.
Или вот сравнительно недавно я тоже занялся low code на Node Red по причине того, что мне захотелось сделать свою логику управления для умного дома, а вникать во всякие javascript мне просто не захотелось. Заметили, как похожа графика? Результат порадовал и сейчас серъезно задумываюсь над тем, чтобы использовать Node-Red в production в серьезном IoT-проекте. И да, я собираюсь подключить сторонних разработчиков к моему проекту, но потом большинство сопроводиловки вести своими ресурсами.
В то же время есть множество ниш где low code прекрасно работает.
Чтобы немного конкретизировать — есть много ниш, где low code прекрасно заходит прямо здесь и сейчас. Т.е. меняет подход к разработке в настоящее время и во многом благодаря тому, что подтянулись соответствующие технологии, а люди достаточно обленились.
Возможно, в корпоративном ПО происходит та же ситуация, но вы просто неправильно выбрали момент или вендора?
Судя по тому, как он плевался (мы сидели рядом) и сколько времени на это потратил, то я в свое удовольствие уже бы десяток сайтов на своем стэке бы сделал. Кода там было бы больше конечно, зато дешевле и быстрее.
Mendix сейчас активно продвигается здесь в Голландии (что не мудрено, поскольку он в Голландии и разработан) в крупных организациях — банки, министерства.
В одном голландском банке сделали консультанты проект на Mendix, внедрили и разъехались. После их ухода понадобилось что-то в приложении изменить. Попробовали банковские программисты сами это сделать, но не тут-то было, слишком сложно оказалось. Пришлось банку срочно нанимать специалистов по Mendix с оплатой 500 евро в час.
Эта идея, конечно не нова. Книга Джеймса Мартина «Applications Development Without Programmers» была издана еще в 1981 году.
Вспоминаются 90-е годы прошлого века, когда предшественники таких low-code платформ активно продвигались под лозунгами «Языки 4-го поколения», RAD (Rapid Application Development) и CASE (Computer-aided software engineering).
Например, есть такая штука как Uniface — тоже изначально голландская разработка и до сих пор используется во многих голландских компаниях и организациях. Uniface начали разрабатывать в конце 80-х годов.
Я работал в 2013 году в одной финансовой компании, в которой 25% всего программного обеспечения было сделано на Uniface.
Один коллега тогда перешел с Uniface на C#, хотя и сильно потерял при этом в зарплате. По его словам, Uniface с точки зрения программиста — совершенно бесперспективная вещь. Язык программирования так и застрял в своем развитии в начале 90-х.
В финансовой компании хотят это все перевести на Java или .NET, но денег нет. Так и приходится все это поддерживать. При этом Uniface-разработчики стоят дороже .NET-разработчиков.
Кстати, в этой же компании еще 25% программ были созданы при помощи еще одной подобной системы — Blueriq (раньше она называлась Aquima). Ее разработчики использовали «революционную» идею о том, что данные должны храниться не в базе данных, а в одном большом XML-файле. Теперь тоже хотят от всего этого избавиться и тоже денег на это нет.
Но история никого ничему не учит, и вот у нас уже повсюду активно продвигаются Mendix и Betty Blocks — последний писк моды (еще одна голландская разработка).
Low-code платформы: панацея или рискованная ставка?