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

В Киеве почти каждый год проводится благотворительный оффлайн ивент под названием “Кубок Барбоса” — выставка беспородных собак, а моя жена состоит в оргкомитете этого самого кубка. Long story short, в предыдущие года люди (и собаки) регались через гуглоформу, это было неудобно и куча времени тратилась в оффлайне на то чтобы заматчить конкретного человека со строкой в гуглотаблице. Никому это не нравилось, и было решено силами нашей конторы сделать сайт с контентом, регой, оплатой, и каким-то образом еще и привязать это к оффлайну (людям после реги выдавался QR код, с которым они приходили на мероприятие, наши волонтеры сканили код на телефонах и им отображалась вся инфа об участнике, в общем там куча всего было). Архитектурно все решение состояло из сайта для людей, админки для оргов, мобильных приложений для android/ios и API для них. “Вот он, шанс выучить rails!”, подумал я и решил сделать всю не-мобильную часть в виде монолита на Rails.

В этот раз расклады были чуть лучше и у нас были и дизайнерка и фронтендщица, так что процесс пошел более плавно. Я смог сосредоточиться на разработке апишечки не задумываясь, как это все будет выглядеть. Чтобы еще сильнее упростить себе жизнь, я поставил фронтендщице на компьютер ruby/rails, научил запускать приложение чтобы она сразу верстала/фронтендила куда надо, без необходимости мне переносить шаблоны вручную. Сам дизайн был тоже сделан по-науке в Zeplin, так что ни у кого не возникало вообще никаких вопросов. Проект был благотворительным, поэтому разработку мы оплачивали из своего кармана. Всю эту деятельность я совмещал с фулл-тайм работой java-обезьяной в стартапе.

После некоторого периода тупинга (примерно пары недель) кривая обучения резко пошла вверх и в итоге мы почти в срок выдали вполне рабочее решение, которым даже пользовались настоящие люди. От “кастомера” пришел положительный фидбек, все счастливы, все довольны. CSS я так и не выучил, но уже сделал серьезный шаг к тому, чтобы самостоятельно фигачить полноценные сайты, а не только рест апишечки. Особенно хорошо получилось с админкой/дашбордами — для этих дел есть множество гемов (ruby пакетов) которые автоматом генерят сносный UI на основании ваших таблиц/деклараций. То есть у меня получился относительно красивый интерфейс без применения фронтенд-скиллов вообще. До работы дата саенс парней, которой я вдохновлялся в прошлой части, было еще далеко, но уже намного понятнее, как туда попасть.

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