Как сделать удачный стартап за пару месяцев на Ruby и не провалиться

Привет! Я Артем Паньков, руковожу больше десяти лет агентством Secret Agents. В этой статье поговорим о Ruby, который никогда не умирал, а тихо и продуктивно строил маленькую империю в своей серверной долине. Secret Agents как заядлый полиглот знает много языков программирования, но исторически образовался на «рубиновом коде», отсыпая в проекты драгоценные фичи.

Как сделать удачный стартап за пару месяцев на Ruby и не провалиться

Ruby is dead, говорили они. И были не правы. Один из лаконичных языков программирования (настолько, что код читается, как предложения на английском языке) разработчики любят за простой синтаксис без ненужных символов.

Что на других языках делают за полгода-год, на Ruby пишется за месяц-два. Это актуально в современных геополитических реалиях – с уходом иностранных сервисов, российским специалистам нужно оперативно написать свои, посмотреть отклик клиентов на рынке и затем уже «допиливать». В быстроте и наглядности коммерческой разработки Ruby вывозит.

Так исторически сложилось

Наше агентство Secret Agents когда-то начинало работать с PHP, при помощи которого удобно конструировать новостные сайты. Но мы росли и проекты становились сложнее, и для разработки нам перестало хватать Drupal (системы управления контентом, используемой также как каркас для веб-приложений, написанный на языке PHP).

Альтернативой встал выбор между Python с фрэймворком Django или Ruby – с Ruby on Rails. 10 лет назад на Python писали многие, Ruby выглядел прикольной «стартаперской» штучкой, которой пользовалось небольшое сообщество, придавая ему элитарный образ. За редкость мы его и полюбили.

Наши ребята работают над проектом 
Наши ребята работают над проектом 
«Все отличия между языками программирования имели значение лет 10 назад. Считалось, что PHP – язык для начинающих. Python подходил для всяких вычислений и прочей истории, Ruby – для стартапов. Но языки развиваются и улучшаются. Сейчас различия сводятся к наличию на рынке разработчиков, пишущих на том или ином языке».

Для веб-разработки Ruby редко рассматривают отдельно от фрэймворка Ruby on Rails. Как говорят, «близкий и понятный человеку»; к тому же, Ruby – открытый код, и разработчики-рубисты, можно сказать, друзья без границ со всего мира откликаются и развивают язык в режиме реального времени. Хотя Ruby не особо молод: он создан японцем Юкихиро Мацумото в 1995 году (жители Страны восходящего солнца впустую ничего не делают и не усложняют), а в первые пять лет нового тысячелетия уже активно популяризировался.

Цвет настроения - Ruby

В какой-то степени Ruby сохранил налет элитарности – не так распространен, минималистичен, имеет выразительный инструментарий. Разработчик, который пишет на Ruby около двух лет, намного опытнее (по нашим наблюдениям) и быстрее справляется с пулом задач, чем пишущий на другом языке с аналогичным опытом. И его по-прежнему выбирают стартапы из-за скорости разработки.

Официальный логотип языка программирования "Ruby" 
Официальный логотип языка программирования "Ruby" 

Secret Agents пишет не только на Ruby. Но исторически сложилось, что многие проекты попадают к нам на поддержку, уже написанные на Ruby. Вот и удобный, надежный сервис для запуска и управления программ «Лекарственного страхования» PharmIQ продолжает окрашиваться в «рубиновый» цвет. Нравится, как развивается проект, который хоть и не с начала, но теперь разрабатывается и поддерживается нами, – много чего оптимизировали и сократили количество ручного труда. Грубо говоря, сейчас собрать документы и отправить в страховую компанию займет – всего два клика. А за счет чего? За счет гемов (прикол создателей языка – назвать в языке, именуемом «рубин», еще и библиотеки как «драгоценный камень»). На базе гема activeadmin можно за минуты создать панель управления или даже целый небольшой сервис. Вот это да!

Взяли проект по разработке уже существующего сайта сети корейской и японской косметики Atami . Он изначально написан на Ruby, поэтому трудностей не возникло. За счет фичей Ruby и Ruby on Rails, мы быстро исправили критические баги и основные ошибки, чем сэкономили заказчику и время, и средства.

Так выглядит мобильная версия Atami 
Так выглядит мобильная версия Atami 

Можно взять незнакомый проект и, за счет структуры одинаковой для всех сервисов, принятой в Ruby, быстро сориентироваться и выдать качественный результат. «Рельсы» поддерживают такие современные и популярные инструменты, как Sentry и Grafana. Их можно быстро настроить и успешно использовать для совершенствования продукта. И опять-таки при наличии гемов настройка не вызывает каких-либо трудностей.

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

А вот как мы переделали Service Guru 
А вот как мы переделали Service Guru 

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

Подытожим

Язык программирования – это всего лишь инструмент. Есть топор за 1000 рублей и топор за 5000 рублей. Нельзя сказать, что с помощью топора за 5000 рублей можно построить дом, а за 1000 рублей – только табуретку. Все зависит от человека, который этот топор держит – его опыта, мотивации, терпения.

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

А что вы думаете о Ruby?

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

Чтобы обсудить проект и заказать разработку, пишите сюда.

In code we trust!

1414
44
13 комментариев

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

Со стороны разработчиков хочется заметить, что сейчас ведётся активная борьба с проблемами с потреблением ресурсов и производительностью, поэтому, думаю, мы рискуем застать новый рассвет языка(Ruby is dead??😅)

Интересно, кстати, что вы думаете об особенностях языка?

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

Сейчас очень много конкуренции. Насчёт мнения про лаги, надеюсь и правда без них обойдется. А про топор классно сказано)

Исправление критических багов и ошибок - это залог стабильной работы сайта и доверия пользователей.

Безусловно вы правы, эти вечные баги почти на каждом сайте.

Рубин на сегодняшний день имеет преимущества в различных областях программирования и даже превосходит по многим позициям Питона.... За Ruby несомненно будущее.

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