Автоматизация без боли: как лоукод-платформа «Нодуль» облегчает разработку

Всем привет! Это Саша Данилов, СЕО платформы «Нодуль». И если мы соприкасаемся впервые, то после прочтения этой статьи вы будете знать гораздо больше о том, почему автоматизация бизнеса на лоукод-платформах — это неоспоримый тренд, и как знание о нашем инструменте сэкономит вам уйму ресурсов на создание и поддержание важнейших сценариев в вашем деле.

Вашему вниманию: тернистая история основания платформы, ее уникальный функционал и сравнение с ближайшими решениями на рынке.

Интерфейс платформы Нодуль 

История основания

Нодуль – это третий большой проект нашей команды после успешной реализации двух предыдущих: с 2014 функционирует carprice, с 2019 – debex. Причём тут эти двое? Дело в том, что именно с них и начался наш путь в автоматизации, когда мы поняли, что для построения большого количества процессов внутри продукта удобнее использовать лоукод инструменты, где:

  • сценарии реализованы в облаке, и мы не следим за инфраструктурой
  • сценарии отображены наглядно в виде визуального конструктора “кубиков”
  • сценарии поддерживаются одним архитектором, а не группой программистов на фулл-тайме

Так 150 процессов для нашего debex были в конечном счете развернуты на платформе Integromat, которая, однако, в феврале 2022 года сообщила о ребрендинге в Make и переходе на новую архитектуру. А далее обозначив и дату полной остановки предшественника – сентябрь 2023.

Нам обещали плавную миграцию на Make, но спустя год она так и не случилась. Здесь и начала свой путь платформа Нодуль, создание которой было скорее вынужденной мерой, нежели любопытной идеей.

Ключевой функционал

Благодаря 9-ти лет перебора различных платформ (Huggin, Zapier, n8n…) мы сформировали детализированную карту местности и точно знаем, чего нам не хватило в каждом инструменте. Ближе всего к абсолютной победе оказался Integromat, но вот загвоздка – на платформе отсутствует возможность вставить свой кусочек кода в сценарий для предельной гибкости архитектуры. Поэтому взявшись за Нодуль, мы в первую очередь устранили этот пробел. Но сначала про азы.

Архитектура на основе событий

Основа платформы Нодуль – это событийно-ориентированная архитектура, которая запускает настроенные вами воркфлоу по принципу Trigger → Action

Trigger

В качестве триггера может выступать действие пользователя на сайте, новое письмо в почтовом ящике или уведомление в CRM.

Существует два вида триггера:

  • Триггеры приложений из постоянно пополюящейся библиотеки.
  • Триггеры универсальные, не относящиеся к приложениям.

К универсальным триггерам относятся:

  • Webhook: позволяет получать данные напрямую из других приложений. Когда происходит событие в другом приложении, оно отправляет данные на webhook URL, предоставляемый платформой Нодуль. Это инициирует процесс.
  • Schedule - автоматически запускает процесс на основе установленного расписания. Например, вы можете настроить сценарий, который выполняется каждый день в определенное время.
Настройки универсальных триггеров
Настройки универсальных триггеров

Action

После триггера идёт Action. Здесь мы отвечаем себе на вопрос: что должно произойти после срабатывания триггера? И мы начинаем перетаскивать кубики приложений и создавать между ними связи так, как их рисует наше воображение.

Пример сценария на платформе
Пример сценария на платформе

Нодуль – это про простоту и доступность ноукода со всеми возможностями кода.

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

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

HTTP запрос

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

Окно настройки кубика HTTP запрос
Окно настройки кубика HTTP запрос

Наш HTTP кубик упрощает процесс настройки и отправки таких запросов. И благодаря функционалу "Create from example {CURL}", вы можете быстро и легко преобразовать CURL-команды из документации сторонних приложений в ваши HTTP-запросы, оптимизируя вашу работу с API различных платформ и сервисов.

JavaScript

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

Окно настройки модуля JavaScript
Окно настройки модуля JavaScript

Здесь возможности ограничиваются только вашим опытом и знанием JavaScript, но когда вы это читаете, скорее всего даже не опытом и знанием, а лишь фантазией. Ведь внутри JavaScript модуля уже функционирует ассистент на базе GPT-4 (наподобии Github CoPilot), который совершает любые операции с кодом после того, как вы вызвали его синтаксисом: // ваш текстовый запрос ассистенту

Как работает ассистент модуля JavaScript

Помимо этого, наш JavaScript кубик позволяет подключать NPM пакеты, которых существует по меньшей мере 1,3 миллиона. Зачем самостоятельно решать задачи, которые уже кто-то решил?

Headless browser

Слышали про headless браузер? Это такой браузер без пользовательского интерфейса, где вы даете команды роботам, а они идут и выполняют любые действия также, как это делает человек.

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

Иконка модуля Headless browser
Иконка модуля Headless browser

Более подробно о возможностях headless браузера мы писали в нашем блог посте “Автоматизация без API”.

Прочие инструменты

Также мы постоянно пополняем библиотеку инструментов, что сильно упрощают нашу и вашу жизнь на платформе. Вот некоторые из них:

Список модулей полезных инструментов
Список модулей полезных инструментов
  1. Convert HTML to Text: Конвертация HTML в текст. Упрощает анализ веб-страниц.
  2. Convert Website to Text: Преобразует сайт в текст для SEO и анализа контента.
  3. JSON Parse: Преобразует строки JSON в структурированные данные. Идеально для работы с API.
  4. AI Text Parser: ИИ-анализатор текста для извлечения сущностей: имен, дат и пользовательских элементов.

Чем читать, лучше зайдите на app.nodul.ru и посмотрите всё своими глазами! Мы еженедельно пополняем платформу новыми инструментами, новыми интеграциями, и новым функционалом в рамках уже существующих интеграций.

Сравнение с конкурентами

Integromat & Make

Как мы уже обозначили, ребята из Integromat сделали продукт, который был ближе всех к идеалу. Но в их сообществе мы наблюдали и разделяли запросы пользователей, которые по каким-то причинам игнорировались командой годами. Некоторые из запросов висят в статусе запланированных не первый год, остальные же – игнорируются. Более подробно о том, почему этот функционал так важен, мы писали здесь.

А вот коротких список из тех, которые мы приоритезировали в самом начале разработки:

  • слияние веток одного сценария, чтобы иметь возможность объединять несколько веток сценария в один модуль. В некоторых случаях это упрощение и ускорение, а в некоторых – критерий реализуемости в принципе.
Пример сценария со слиянием на платформе Make
Пример сценария со слиянием на платформе Make
  • возможность перезапускать сценарии с историческими данными становится особенно удобным при разработке и отладке сценариев, когда необходимо исключить рутину ручного ввода данных после каждой неудачной попытки, или же при ошибке отработки существующего сценария на реальных данных (например, подвело сторонее API)
История запусков и кнопка перезапуска с историческими данными
История запусков и кнопка перезапуска с историческими данными
  • возможность создавать подсценарии в виде кастомных модулей. Это как собрать набор инструментов, который потом будет задействован в любых сценариях. Это значительно упрощает процесс создания сложной архитектуры и экономит вам много времени.
Что скрывает под собой кастомный кубик ChatGPT Send message
Что скрывает под собой кастомный кубик ChatGPT Send message

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

Zapier

Одной из ключевых претензий к платформе Zapier является отсутствие гибкости в проектировании процессов. Пользователи ограничены линейным подходом. И пускай не так давно они добавили некоторые возможности ветвления, но по сравнению с подходами визуальных drag-&-drop платформ – очень примитивно.Такой механизм не позволяет гибко конструировать сложную архитектуру. К тому же отсутствует возможность внедрения своего кода, что сильно ограничивает возможности для опытных разработчиков и тех, кто хочет углубиться в детали своих сценариев.

Облачные функции от Amazon AWS & Yandex cloud

Облачные функции, такие как Amazon AWS Lambda и Yandex Cloud Functions, предлагают мощные инструменты для профессионалов и больших компаний. Но они имеют высокий порог входа. Начать работу с ними может быть непросто: необходимо загружать архивы с кодом, разбираться с настройками, и так далее. Отсутствие дружелюбного интерфейса и невозможность легко интегрировать no-code элементы делают их менее привлекательными для многих бизнесов.

n8n

Представляет собой весьма современное и функциональное решение в мире автоматизации. Платформа написана на NodeJS, что делает её знакомой многим разработчикам. Однако Нодуль базируется на быстром и надежном GoLang, обладая большими производительностью и потенциалом для масштабируемости.

Честная монетизация

Многие платформы, такие как Integromat, базируют свою стоимость на количестве операций внутри сценариев. Это может быстро стать дорогостоящим, особенно при работе с большими объемами данных. Представьте, что вы используете модуль "Итератор", который циклично отправляет 3000 емейлов следующим образом:

  1. Итератор получает адрес емейла из базы данных.
  2. Затем формируется уникальный текст письма для каждого получателя.
  3. И в конце, письмо отправляется через, например, Mailgun.

В сумме это будет 9000 операций. Если каждая операция имеет фиксированную стоимость, итоговая сумма может быть довольно внушительной. Такой подход заставляет создателя сценария экономить кубики, что часто приводит к неоптимальным реализациям для экономии. Это похоже на оплату за каждый символ в телеграмме, отправленной через телеграф (нет, не Telegram 🙂)

Телеграмма: "СРЧН. ОТПР. ЗАП. УГЛ. ЖД. ОТВ. ПРДК"

Что означало: Срочно отправляйте запасы угля. Жду ответа. Председатель.

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

В данный момент платформа находится в бета и предоставляет бесплатный доступ для всех желающих. В будущем стоимость будет ниже, чем у Make и Zapier.

Вывод

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

Ждем вас в нашем Телеграмм сообществе лоукод энтузиастов (t.me/nodul), где мы обязательно ответим на все ваши вопросы!

88
9 комментариев

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

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

А когда это облако: написал в поддержку – ребята ушли разбираться.

Тем не менее интересно узнать, изнутри какой индустрии у вас родился запрос на селф-хост?

1

Не хватает сравнения с отечественными сервисами и ощущение, что УТП немного мимо реальных потребностей.

про n8n вообще забавно, те он не масштабируется типа получается )и "забыли" упомянуть - он опенсорсный

1

Спасибо за коммент! До сравнения с отечественными скоро доберемся, а про УТП: перечисленные фичи висят в топе запросов сообщества Make с тысячами апвоутов, и некоторые из них отмечены как "not immediately planned". И мы как пользователи сами натыкались на эти ограничения, поэтому для себя в первую очередь их и устраняли.

А можете уточнить, что из перечисленного показалось совсем уж мимо?

Увесистый проект, а что с дата прайваси? Есть возможность развернуть у себя на серверах?

Привет! Был единичный опыт развертывания Huggin на нашей стороне, благодаря которому отпала необходимость даже думать в эту сторону)) Неизбежные баги + тот факт, что продукт не твой = куча ресурсов на вечные фиксы. Что касаемо райваси – как у Yandex Cloud, мы там развернуты, можно на их сайте почитать 🙌