Одним из партнёров в нашей аутсорс шлюпке был крутой фуллстек парень. Кодил он на js, был большим любителем ноды и к тому же отлично знал PHP. К нам тогда по наследству приехал среднего размера проект как раз написанный на PHP, к счастью, на Laravel (это такой аналог Rails в мире PHP, в целом довольно годный), и он ним занимался. Сам проект (который кстати живет и здравствует до сих пор, только поддерживаю его уже я) состоит из бекенда для мобил и SPA и админки для управления контентом и прочим.

Короче, там была админка, которой постоянно пользовались люди. И она выглядела круто! Там был сайдбар, хидер, всякие кнопочки-формочки и так далее, и чтобы писать все это, нужно было совсем немного кода. Я решил разузнать поподробнее как это так получается, так как всегда думал, что кто-то разрабатывал все это с нуля, а реальность оказалась намного прозаичнее — существует полно HTML-шаблонов для админок и прочих штук, и нужно всего лишь добавить себе в ассеты css-ину, js-ину ну и дальше верстать формочки так, чтобы там были нужные стили. В нашем случае таким шаблоном был AdminLTE — это один из самых популярных, но их есть много разных. Для Laravel даже есть библиотека, которая позволяет интегрировать эти шаблоны в приложение без необходимости верстать всякие сайдбары самому.

Тут до меня потихоньку начало доходить — для того, чтобы делать сносные приложения, совсем необязательно хорошо шарить верстку — достаточно где-то найти подходящий шаблон, а дальше через копипаст переносить себе компоненты и собирать из этого, как из конструктора, рабочее решение. Конечно, для уникальных сайтов это не подойдет, но всякий околоадминский инструментарий, дашборды, аналитика и тд пишутся на ура. Нет, я конечно знал про всякие бутстрапы и прочие “фреймворки”, но мне они казались чем-то типа молотка и отвертки которые еще нужно применить, а не экскаватора, которым ты после непродолжительного обучения сможешь рыть ямы со скоростью 300кк/cек. А сайты типа TemplateMonster (кстати один из людей, который стоял у истоков этой компании когда-то был моим боссом в NC) я почему-то всегда воспринимал как наблон шаблонов для екоммерса и джумлы с вротпрессом.

В таких шаблонах практически всегда есть все, что нужно — сайдбар/хидер/футер, колонки, кнопки, формы, таблицы, алерты, модалки, и даже респонсивнесс, все! Там даже есть шаблон чата! Я все думал, зачем это нужно, но (забегая вперед) настал день когда и эта функциональность мне понадобилась (я разрабатывал чатбота и нужно было дать возможность саппорту общаться с людьми без необходимости переключаться между мессенджерами).

Как раз в то время у нас стояла задача сделать админку для нового проекта. Сам проект вначале был запилен на PHP силами одного джуна, потом под моим присмотром перепилен силами другого джуна на Java но в процессе перепиливания мы потеряли админку. Я некоторое время колебался, но, после успешного небольшого проекта решил сделать ставку на Rails, кроме того, у java-джуна был кореш который как раз искал работу на rails. Я решил нанять парня и не прогадал.