×Закрыть

Ruby/Rails дайджест #30: релиз Ruby 2.7.0-preview1, видео докладов с конференции RailsConf 2019, производительность JIT

Дайджест был создан в соавторстве с Мариной Завийбородой, Copywriter в RubyGarage.

Всем привет! Начнём с того, что вышла preview1 версия Ruby 2.7.0, включающая улучшения JIT и экспериментальный Pattern Matching. Команда Appfolio опубликовала сравнение производительности Ruby c JIT и без. На канале Confreaks появился плейлист видеодокладов с конференции RailsConf 2019.

Тренды в сообществе Ruby

  • Stripe анонсировали Sorbet — type checker для Ruby.
  • Доклад от Takashi Kokubun о приросте производительности в Ruby 2.7 благодаря имплементации JIT.

Релизы

Ruby 2.7.0 preview1 — первая preview версия Ruby 2.7.0

Active Admin 2.1.0 — новый релиз фреймворка Active Admin

dry-validation 1.0.0 — гем был полностью переписан поверх dry-schema

Почитать

Ruby 2.7 adds shorthand operator for Object#method — в Ruby 2.7 добавлен экспериментальный shorthard оператор.

Rails 6 boot sequence — автор рассказывает, что происходит, когда вы запускаете команду rails s.

A Simpler Rails Benchmark, Puma and Concurrency — анонс rsp — простого Rails-приложения с множеством запросов и версий Ruby, с которыми оно может быть протестировано.

Watch Out For nil in Ranges — использование nil в Range.

Enhanced Shell Scripting with Ruby — детальный обзор по написанию кода на Ruby, взаимодействующего с командной строкой.

Direct instruction marking in Ruby 2.6 — Aaron Patterson рассказывает о снижении потребления памяти в Ruby 2.6 с технической стороны.

Don’t Email From Active Record Callbacks — автор рекомендует не использовать ActionMailer из ActiveRecord моделей.

Stimulus and RxJS for an SPA Like Experience — опыт построения SPA на базе RxJS и Stimulus.

How Sinatra Works — разбор того, как устроен гем Sinatra и гайд по написанию подобного DSL с нуля.

Подборка от Bozhidar Batsov

A Modular RuboCop — автор рассказывает о будущем развитии гема Rubocop.

Цикл статей Weird Ruby:

Подборка от BigBinary

Продолжение цикла статей о нововведениях в Rails 6:

Туториалы

Instrumenting Ruby on Rails with Prometheus — интеграция Prometheus в Rails-приложение.

How to setup Ruby Object Mapper (ROM) for standalone project — как настроить ROM без использования сторонних фреймворков.

Nested Forms from Scratch with StimulusJS — разработка форм с нуля на фреймворке StimulusJS.

How to use Action Mailbox in Rails 6 — видеогайд по использованию ActionMailbox в Rails 6.

Serverless Ruby on AWS Lambda with the Jets framework — использование Jets фреймворка и AWS Lambda.

How to Play MP3 Files With Ruby, VLC & The FFI Module — обзор инструментов для работы со звуковыми файлами в Ruby.

Implementing authentication with Auth0 and Rails 6 — аутентификация с помощью сервиса Auth0 в Rails 6.

Гемы

blab — утилита для мониторинга потребления памяти.

factory_trace — инструмент для поддержки фабрик FactoryBot.

RouteTranslator — гем, позволяющий сгенерировать роуты для локализации приложения.

httplog — конфигуригование логов для исходящих HTTP запросов.

FEEDI — приложение с открытым исходным кодом, позволяющее конвертировать RSS feed в REST API.

clear_logic — базовый сервис для написания бизнес-логики вашего приложения.

Послушать

RWpod

Ruby Rogues

  • RR 411: What Causes Ruby Memory Bloat with Hongli Lai — что становится причиной такого феномена, как memory bloat (переполнение памяти), как его выявить и как решить данную проблему.
  • RR 412: Asynchronous Jobs on Client Side and Server Side — авторы подкаста обсуждают разницу между asynchronous jobs на стороне клиента и сервера, а также use-кейсы для каждого типа asynchronous jobs.
  • RR 413: When Your Tools Interrupt Your Coding Process — слишком много инструментов, подключенных в коде, могут создавать проблемы. Авторы подкаста пытаются выяснить, стоит ли отключать дополнительные инструмента, чтобы оптимизировать процесс разработки.
  • RR 414: Docker Talk — все о Docker: его применение, место Docker в цикле разработки ПО, когда этот инструмент может быть полезнее всего.
  • RR 416: Warden/Devise/OSS with Leonardo Tegon — в подкасте авторы сравнивают известные и полезные гемы: Warden и Devise, а также один из разработчиков Devise, Leonardo Tegon, рассказывает о новых фичах, которые планируются в геме Devise.

Ruby on Rails Podcast 5by5

Remote Ruby

Remote Ruby — это подкасты от двух разработчиков Chris Oliver and Jason Charnes обо всем, что интересует Ruby/Ruby on Rails программиста: от последних событий в мире Ruby до вопросов карьеры:

  • Joined by Josh Wood — подкаст с Josh Wood, co-founder в Honeybadger.io про его опыт в программировании и фрилансе, создании Honeybadger и немного о смысле жизни :)
  • Joined by Lee Richmond — подкаст с Lee Richmond, Ruby on Rails разработчиком из Bloomberg. В подкасте сравнивают Graphiti и GraphQL, а также инструменты вроде Vandal и Spraypaint.
  • Live with Justin Searls — интервью с Justin Searls, co-founder в Test Double о его карьерном развитии, стартапе Test Double и использовании iPad для разработки.
  • A Quick RailsConf Recap, Finding Time to Learn, and Madmin — обсуждение одного из самых значимых событий года, Rails Conf 2019.

События

RubyC — the biggest Ukrainian Ruby conference — несмотря на то, что конференция RubyC заявлена на 14-15 сентября, лучше поторопиться и купить билеты заранее. В этом году среди спикеров — Aaron Cruz, Aleksander Dąbrowski, Walerian Sobczak и другие.

Касательно тем/материалов/ивентов, которые стоит добавить в следующий выпуск дайджеста, пишите в комментариях или на kirill@rubygarage.org. Спасибо за помощь в подготовке дайджеста команде RubyGarage.


← Предыдущий выпуск: Ruby дайджест #29

LinkedIn

3 комментария

Подписаться на комментарииОтписаться от комментариев Комментарии могут оставлять только пользователи с подтвержденными аккаунтами.

Прекрасный обзор, большое спасибо

Рубі дайджести завжди дуже круті виходять (найкрутіші спроміж всіх дайджестів), дякую!

Подписаться на комментарии