Приближаясь к Рубикону

04 марта 2022
Приближаясь к Рубикону

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

 

Введение в Propshaft

Организация конвейера ресурсов в Rails по умолчанию выполняется библиотекой Sprockets. Создавалась она с расчетом на HTTP/1 и по устаревшим спецификациям (ES3), без всяких современных штучек. Библиотека до сих пор служит верой и правдой, но стала громоздкой и неудобной. Появление на свет написанной с нуля альтернативы, стало лишь вопросом времени.

Propshaft был создан сеять разумное, доброе и вечное. Он заточен на HTTP/2, соответствует спецификации ES6, содержит годный набор транспайлеров и упаковщиков. При всём этом он крошечный по сравнению с Sprockets, хотя и выполняет больше работы.

Его пока нельзя использовать в качестве полноценной замены, но работа над этим ведётся. Взглянуть на альфа-версию можно на Github. Чтобы узнать больше о возможностях Propshaft, советуем прочитать эту статью

 

Ускоряемся с HTTP-over-Wire

Лень — двигатель прогресса и хороший стимул для появления интересных решений. Hotwire, созданный авторами Ruby on Rails, тому яркое подтверждение. Кстати, мы уже рассказывали об этом стеке технологий в одном из прошлых дайджестов. Построение шустрых веб-приложений становится возможным за счёт фреймворка Turbo, написанного на TypeScript. Это фреймворк — «‎сердце»‎ Hotwire. Переосмысление идеи классических HTTP-фреймов, но без присущих им недостатков. Страницу можно разделить на куски, создать их как HTML на сервере и почти мгновенно отдать через WebSockets.

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

Для чего нужны ViewComponents

Хотите создать крутой и красивый веб-интерфейс? Задача только с виду кажется простой. На деле же, когда погружаешься в создание макетов, шаблонов и прочих атрибутов хорошего интерфейса, можно немного начать сходить с ума. Что делать разработчику на Ruby? Правильно, подыскать соответствующий драгоценный камень. Такой, как ViewComponent.

Эту штуку явно подсмотрели из React. По сути ViewComponent — готовый набор виджетов в виде Ruby-объектов. Это удобно, ведь так проще соблюдать стандарты качества кода и повторно переиспользовать компоненты. Кстати, вместо интеграционных тестов в этом случае можно задействовать модульные и они будут хорошо работать. Есть отличная статья с примерами кода, показывающая, как попробовать View Components в деле.

Взаимодействуем с Trello API в Ruby

Мы в Evrone любим Trello. Эта один из самых удобных сервисов управления проектами. Особенно в распределённых командах разработки. Но Trello может использоваться почти в любой сфере деятельности. Соответственно, у него возможность взаимодействовать не только при помощи веб-интерфейса, но и с помощью REST API. Ну а это, в свою очередь, отличная штука для автоматизации рутинных процессов. Глянем как можно организовать работу с Trello напрямую из Ruby.

Как это часто бывает в Ruby, всё начинается с нужного gem, в нашем случае ruby-trello. Затем обращаемся за публичным API-ключиком, получаем токен и проходим авторизацию. Теперь можно формировать любые карточки и выполнять другие действия автоматически. Например, если Trello используется службой технической поддержки, то можно заводить карточки на основании данных систем мониторинга.

API без хорошей документации использовать сложно, так что Atlassian очень постарались и разложили всё по полочкам. Здесь вы найдете подробное описание каждой функции и примеры использования.

Обучение

Онлайн

Курс Python в Evrone Academy

60 учебных модулей 

Если вы думаете о смене работы или хотите стать частью нашей команды, но у вас недостаточно коммерческого опыта, то теперь можно учиться прямо в Evrone. А после — попасть к нам на оплачиваемую стажировку.

 

Основа обучения в Evrone Academy — наши высокие требования к разработчикам и опыт в проектах. Мы записали лекции, подготовили текстовые версии, добавили практические задания — это позволит вам подтянуть знания до middle-уровня. На стажировке мы дополним теорию практикой, а после — добро пожаловать на «боевой» проект.

Сейчас академия доступна в режиме early access — можно пройти базовые части по Python или Ruby. Но мы уже готовим новые материалы и практические задания, подписывайтесь на нас в соцсетях, чтобы не пропустить обновления!

Регистрация

Конкурсы для разработчиков

Онлайн

Ruby Quiz

до 25 апреля 2022

Evrone — это, прежде всего, сильная Ruby-команда. Мы хорошо разбираемся в Ruby и предлагаем вам тоже проверить себя в нашем новом квизе.

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

Среди тех, кто правильно ответит на все вопросы мы разыграем Яндекс. Станцию.

Митапы

Онлайн

Ruby meetup №17

30 марта 2022  19:00

Рады сообщить, что у нас запланирован Ruby Meetup, который пройдёт 30-го марта. Все доклады будут традиционно предзаписаны в студийном качестве 4К, а вести доклад и помогать вам допрашивать спикеров в прямом эфире будет Григорий Петров, Ruby-разработчик и организатор RubyRussia. Детальная информация о мероприятии будет опубликована позже, следите за нашими новостями.

Регистрация

Вакансии

Удаленка / Офис

Evrone 

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

Подробнее

 

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

 

Подписаться
на Digest →
Важные новости и мероприятия без спама
Технологии которыми вы владеете и которые вам интересны
Ваш адрес электронной почты в безопасности - вот наша политика конфиденциальности.