Adalo мёртв. Как так вышло?

Я несколько месяцев откладывал написание этой статьи. Хотя лень и нежелание расстраивать коллег только оттягивали неминуемое. Да, мне давно хотелось высказаться об инструменте приносящем боль и страдания сопоставимые с раскалённым паяльником. Даже не знаю как я перетерпел обновление платформы с невероятно пафосным названием — Adalo 2.0. Апдейт призванный упростить работу девелопера и дать ему больше возможностей в создании приложений в итоге оказался просто плевком в лицо разработчика и лишним поводом посмеяться над всем ноукодом со стороны классических программистов. В итоге последней каплей стал поиск бага в проекте одного из моих студентов. Фирменное адаловское «просто потому-то» убило во мне всё человеческое. Чтобы лучше описать ничтожность последнего обновления и жалкий для 2023-го года вид Adalo в целом, давайте отмотаем немного назад.

Итак в 2021 году на рынке nocode-инструментов для создания кроссплатформенных мобильных приложений уже существует с десяток разных решений. Тут вам и невостребованный на нашем рынке Thunkable и ярко вспыхнувший, но быстро почивший AppGyver и конечно мастодонт в сфере nocode-разработки Bubble. Последний, кстати заточен в первую очередь под Web-проекты, но часто использовался мобильными разработчиками для создания сложной логики, непосильной более молодым конкурентам. Среди всего многообразия платформ на русскоязычном рынке особняком стояли (помимо Bubble) Glide и Adalo. Конечно их популярности поспособствовали многочисленные онлайн-курсы, отбиравшие для себя инструменты наиболее простые в освоении для учеников. Тут всё абсолютно логично. Больше всего студентов приходили в новый для них мир IT без каких-либо специальных знаний и Glide был (и остаётся) инструментом с самым низким порогом входа. Буквально за неделю человек без опыта мог освоить платформу и создать несколько собственных приложений. А уже через месяц при должном усердии оседлать полноценный боевой проект и заработать на нём. Adalo представлял из себя следующую ступень разработки. Тут и возможность сделать кастомизированный дизайн и интеграции чего угодно через API и публикация в сторах. Каждого кто переходил от Glide к Adalo на первых порах радовали новые возможности. Больше нет шаблонного построения экранов с расположением компонентов строго сверху-вниз и никто уже не упрекнёт в том что плод твоей работы это банальная закладка сайта на экране смартфона. Казалось бы логичная ступень для разработчика, на которой он может остаться на годы или сразу с неё перекочевать в классическую разработку. Но у разработчиков платформы на вас другие планы…

«Доить и заставлять страдать» — лозунг создателей Adalo прямо сейчас. Я не знаю чем ещё можно объяснить то что они вытворяют со своей тарифной сеткой и поддержкой платформы. Каждый кто собирал хотя бы одно приложение на этом nocode-конструкторе известны его основные проблемы.

Отсутствие чёткой пиксельно сетки

Не смотря на то, что вы можете центрировать компонент по вертикали и горизонтали, а так же выровнять несколько компонентов, это всё равно не гарантирует что некоторые компоненты на превью не отлетят на пол экрана от своего изначального положения. Просто так. Без объяснения причин. "Ищи меня на 100 пикселей выше, дружище".

С этим багом научились бороться несколькими способами и один из них настолько костыльный, что мне до сих пор не верится. Помимо банального пересоздания компонентов и экрана целиком, а так же группировки всего со всем лишь бы привязать компоненты друг к другу есть ещё вариант "замуровать" скачущего безумца. Чтобы закрепить компонент на определённом месте некоторые разработчики вынуждены обкладывать его другими компонентами со 100% прозрачностью. Стоит ли говорить что и без того медленный конструктор от этого совсем не ускоряется. Кстати о скорости.

<i>Бешеная вёрстка в своей привычной среде обитания</i>
Бешеная вёрстка в своей привычной среде обитания

Очень медленная работа.

Скорость запуска проекта и отображения данных на экране уже опубликованного приложения вызывает слёзы. Живя в Тбилиси в 2022 году я получил заказ на доработку проекта примерно из 100 экранов. Правки были символические и не должны были занять больше двух дней. Но я тупо не смог открыть проект. Домашний WiFi в 6 Мбит/с не вывозил, хотя у моего московского коллеги он ожидаемо открывался всего за какие-то 20 секунд. Смешные цифры в контексте Адало. В итоге от проекта пришлось отказаться. В том же году разработчики выкатили обновление которое «ускоряет» работу всей платформы. Справедливости ради скажу что скорость загрузки проектов на платформе ощутимо увеличилась. Но всё равно этот показатель не достиг приемлемого уровня. И уж точно никак не ускорил обработку данных в приложениях уже опубликованных в магазинах. Конечно текущая скорость открытия страниц и подгрузки данных может нивелироваться статусом MVP или использованием в странах с низким уровнем диджитализации, но мы то как разработчики и ежедневные потребители таких сервисов сами себе не можем простить подобного уровня исполнения.

<i>Когда ждёшь открытия проекта</i>
Когда ждёшь открытия проекта

Обновления

Ну тут всё просто. Их тупо нет. Вернее нет обновлений именно в тех направлениях и с той регулярностью которую ждут пользователи. Самое очевидное и наболевшее это вариативность настройки старых компонентов и добавление новых. За всё время использования мною Адало ни один компонент не был расширен по функционалу. Если у компонента File Picker в 2021 году была только настройка размера и прозрачности то и сегодня ничего не изменилось. Не появилось возможности добавить тень, поменять цвет ободки, закруглить углы, изменить текст, его шрифт и цвет. Вообще ничего. А ведь это только несколько самых очевидных опций редактирования, которые необходимы в каждом проекте где этот компонент используется. Забавный момент - рядом находится почти такой же компонент Image Picker в котором ровно на одну настройку больше. Там есть возможность задать радиус закругления углов. И такие недоработки буквально в каждом компоненте. Тут вы не можете настроить одну вещь, а там совершенно другую. Из-за этого изначальная логика сборки постоянно утыкается в невозможность кастомизации того или иного компонента, что в итоге приводит к жутким костылям. Ассортимент иконок расширяли всего один раз и сейчас он не превышает 200 штук не самых востребованных и уж точно совсем некрасивых картинок.

Кто-то может справедливо заметить что ассортимент платных компонентов в маркетплейсе значительно вырос и помимо этого всегда можно прикупить другие компоненты на сторонних сайтах. О, да! В этом то и проблема. Во-первых они платные, а во-вторых пока их не купишь не узнаешь насколько у них гибкие настройки. В общем вместо того чтобы доработать базовые вещи в уже существующих бесплатных компонентах, разрабы предпочитают продавать нам такие решения по цене от 10 до 65$ за штуку.

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

Кстати одним из важных показателей наплевательского отношения к обновлениям для меня является опечатка в одном из стартовых экранов. Когда вы создаёте проект, то Adalo автоматически собирает вам экраны регистрации, авторизации и домашний экран. Так вот на экране Log In есть кнопка forgot password выделив которую, можно увидеть что изначально текст был вписан с двумя заглавными первыми буквами. Этот косяк не влияет не на что, ведь на компоненте стоит настройка Uppercase. Но для меня очень показательно наличие такой опечатки как минимум с весны 2021. О каких обновлениях я вообще мечтаю?

<i>Опечатка, которую третий год не могут исправить ни в одном обновлении</i>
Опечатка, которую третий год не могут исправить ни в одном обновлении

База данных

Медленная, багованная и почти бесполезная. Помню как потратил несколько дней на загрузку картинок для полутора тысяч сущностей напрямую в БД. Каждый раз приходилось скроллить список или искать через поиск, ведь эти таблицы обновлялись полностью при каждой загрузке. Какой мне толк, от того что теперь нейросеть может мне создать коллекции с атрибутами, если сама база данных это хлам? На этом можно было бы и закончить, если бы у неё не было альтернативы в виде сторонних БД подключённых по API. В особенности Xano представленной в прошлом году. С Xano все вышеприведённые вопросы по БД отпадают. Но совсем недавно гении рынка nocode-услуг решили перенести интеграцию с Xano из тарифа Professional (65$/мес) на тариф Team (200$/мес) . Отсюда вытекает следующий минус.

<i>Тарифная сетка Adalo при ежемесячной оплате</i>
Тарифная сетка Adalo при ежемесячной оплате

Поборы

Деньги, деньги, деньги. Плати за всё и всегда. Один раз Adalo — всегда Adalo. Тарифы сконструированы так, что вы вынуждены их оплачивать до тех пор пока ваше приложение действует. В ином случае ваше давно опубликованное приложение будет срезано по базе данных и экшенам, что по сути сделает его бесполезным. Переезд бекенда Xano на старший тариф вынуждает платить 200$ в месяц вместо 65$, а куча мелких, но порой так необходимых платных компонентов тоже могут облегчить кошелёк заказчика не на одну сотню. В масштабах разработки среднего мобильного приложения на рынке всё это смешные цифры, но в сравнении с конкурентами это просто грабёж. Тем более если учесть весь спектр проблем описанных выше.

<i>Слышь, купи!</i>
Слышь, купи!

Итог

Что бы не говорили и как бы не защищали платформу разработчики на Adalo, но факт есть факт. Это неадекватно дорогой, бесполезный, устаревший и навечно отставший от конкурентов кусок кода. Жалкие попытки ухватиться за тренд нейросетей только вызывают смех. Каждый проект доводит до нервного тика. Возвращаясь к Адало примерно раз в полгода я надеюсь, что вот сейчас-то они точно исправили самые больные моменты и я смогу за вменяемые сроки выполнить работу. Но вместо этого теряю кучу времени на многократную пересборку одного и того же и изобретение костылей для базовых очевидных вещей.

Раньше я рекомендовал всем идти чётко по порядку Glide-Adalo-FlutterFlow. Постепенно усложнять задачи, получать больше возможностей и кайфовать от нового инструмента. Сейчас это слишком негуманно. Позиция «деды терпели и нам велели» в современном мире неприемлема. Начинающие разработчики должны изучать актуальные и работающие инструменты, а не махать ржавой качергой перед тем как им даруют Экскалибур. Поэтому сегодня мы в CyberBand Academy обучаем студентов FlutterFlow сразу после Glide. А уроки по Adalo остались доступны в бонусном модуле и их цель продемонстрировать "как раньше разрабатывали наши предки". Порядок ознакомления добровольный. Мы все отдаём себе отчёт в тотальном превосходстве FlutterFlow над Adalo. Если бы я начал описывать преимущества FF, то мне бы не хватило и десяти таких статей. Его появление два года назад изменило мобильную разработку. Больше не надо смотреть с завистью на web-разрабов с их мощным Bubble, ведь у нас теперь есть свой ультимативный инструмент, который, ко всему прочему, позволяет мягко перекочевать в классическую разработку на Dart/Flutter. Будущее ноукода теперь выглядит безоблачным. А Adalo? Земля ему бетоном.

P.S. Если у вас есть опыт работы с любым ноукод-инструментом по созданию мобилок, делитесь в комменты ;)

11
2 комментария

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

Кардинально разные вещи. Как сравнивать Paint и Photoshop