Как No-code ускоряет разработку продукта

Привет! Я программист. Я люблю писать код и хочу рассказать, как подход No-code позволяет мне делать это более качественно и эффективно.

Что такое No-code

Это решение задач, которые обычно решают программисты, без самого программирования. В узком смысле это просто набор сервисов, в широком — это подход к разработке, позволяющий экономить время и деньги, получая при этом результат.

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

Какая у меня была проблема

Я разрабатываю конструктор сайтов Creatium, и у нас есть бесплатный тестовый период, который, к сожалению, привлекает мошенников.

Плохие люди регистрируются, создают сайты и размещают на них вредоносные скрипты, либо выдают себя за других и обманным путем получают данные клиента.

Далее, плохие люди используют ссылку на наш тестовый поддомен (*.creatium.site) с хорошей репутацией и таким образом подставляют нас.

Несколько раз нас блокировали VK и Google, показывая посетителям тестовых сайтов такое сообщение:

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

Как мы решали проблему раньше

Подход к решению проблемы простой — нужно обнаруживать и блокировать зловредные сайты до того, как их обнаружит Google.

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

Примеры фраз: розыгрыш, viagra, location.href, пароль и т.д.

Первая версия системы проверки сайтов разрабатывалась две недели, и у нее были существенные недостатки:

  1. Отсутствие аналитики. За несколько лет мы собрали около 6 тысяч подозрительных фраз, многие из которых в последствии ни разу не приводили к обнаружению новых зловредных сайтов. У нас не было понимания, какие фразы эффективны, а какие просто тратили наше время впустую.
  2. Повторные срабатывания. Если спустя сутки повторно опубликовать страницу, в Slack-канал придет еще одно уведомление, хотя эту страницу мы уже проверяли.
  3. Слабая проверка. Мы отслеживали только фразы, часто пропускали перенаправления на другие сайты и подключение подозрительных скриптов.

В один момент стало понятно, что нужно делать новую систему, исправляющую эти недостатки.

Новый подход к решению задач

Список подозритльных фраз из админки перенесли в «Google Таблицы», добавили колонки для отслеживания эффективности. Сразу стало удобнее работать.

Так было
А так стало

Переделали способ проверки страниц. Теперь они открываются в виртуальном браузере, в котором отслеживаются все внешние скрипты, перенаправления, фреймы и ссылки. Эта часть сделана кодом, поскольку No-code такого еще не умеет. Все, что кажется подозрительным, — отправляется в канал Slack.

Обратите внимание на кнопки снизу

Все, что происходит дальше — чистый No-code.

Обе кнопки запускают сценарий в Integromat через обычный вебхук.

Сценарий в Integromat

Если в Slack нажата кнопка «Ложная тревога», сценарий добавляет в базу данных пометку о том, что этой странице мы доверяем, и не стоит о ней больше сообщать при повторных публикациях.

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

Помимо этого обе кнопки удаляют уведомление в Slack, чтобы с каналом можно было работать по методу Inbox Zero.

Экономия времени и денег

Если бы мы все это программировали, ушло бы недели 2. А так я в одиночку потратил 3 дня.

Мы сэкономили время на создании интерфейсов — для этого используем Slack-канал и «Google Таблицы». Сэкономили время на написании интеграций между отдельными частями системы — для этого используем Integromat. Правда, теперь мы платим за него 30 долларов в месяц.

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

Будущее за No-code?

Разработать что-то силами программистов — долго и дорого, иногда непредсказуемо. Зато можно сделать практически все, что угодно, если позволяет бюджет.

No-code-разработка дешевле, занимает меньше времени, но имеет множество ограничений.

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

0
89 комментариев
Написать комментарий...
Николай

Что помешало добавить в Слак кнопку "Заблокировать страницу", чтобы получить фунционал ChatOps?

Ответить
Развернуть ветку
Вячеслав Гримальский
Автор

Блокировка делается в админке, эту часть не стали менять, но на будущее думаем об этом, да. Тогда совсем хорошо будет)

Ответить
Развернуть ветку
86 комментариев
Раскрывать всегда