Ruby дайджест #35: подкасти з DHH і Sandi Metz, інтерв'ю з Matz, Ruby-геми для ML

Дайджест створено у співавторстві зМариною Завийбородой , Copywriter в RubyGarage.

Всім привіт! Січень — традиційне затишшя. Про нові версії Ruby/Ruby on Rails нічого не чути. Але є що послухати й обговорити. Наприклад, свіжий подкаст DHH з Corecursive (транскрипт розмови — за посиланням ), подкаст з Санді Метц та добірку 16 ML Ruby-гемов. І, як завжди, ми зібрали велику кількість туториалов і статей??

Релізи

Like i'm Five help you to create a complex testing in context a few seconds — гем Like i'm Five генерує файл з фабриками, які потрібні для тестування конкретного об'єкта.

Kno Ruby — гем реалізує аутентифікацію без пароля і дозволяє налаштувати автентифікацію без повторних відправок імейла.

Attr-filters gem by Syndicode for filtering object attributes — гем для фільтрації атрибутів мати поро (Plain old Ruby objects) з нульовими залежностями.

vergilet/monobank: Monobank API Ruby — реліз неофіційного API для Monobank.

Почитати

Yukihiro Matsumoto for interview Evrone company — інтерв'ю Матца для Evrone після конференції Ruby Russia 2019: про те, що найчастіше запитують у Матца, призначення Ruby і роботі над Ruby 3.

Best practices for modernizing build pipelines & logging — зручна добірка статей та кращих практик щодо модернізації build-пайплайнов і логгинга.

The Complete Guide to Blazing-Fast Performance in Rails — розганяємо Ruby з порадами зі статті?

Pros and Cons of Using structure.sql in Your Ruby on Rails Application — розглядаємо «за» і «проти» використання structure.sql для складних, зростаючих RoR-додатків.

A Rubyist's Introduction to Character Encoding, Unicode and UTF-8 — цікавий гайд по кодуванню: від коду Морзе до Unicode та UTF-8. Також у статті розглядається приклад кодування в Ruby.

Parallelising ETL workflows with the Jongleur gem — паралеллизируем ETL-процеси за допомогою гема Jongleur.

Exploring Big-O Notation With Ruby — розглядаємо асимптоматические значення в Ruby на докладних прикладах.

Why the Sorbet typechecker is fast — гучний Sorbet, тайпчекер для Ruby, — справді потужний інструмент. Настав час подивитися під капот Sorbet і зрозуміти, що робить його таким швидким і продуктивним.

Evaluating Ruby Ruby in — стаття про послідовностей інструкцій і їх оцінці на чистому Ruby.

Rails is Fast: Optimize Your View Performance — покращуємо продуктивність Rails-додатки через оптимізацію баз даних і кешування.

The Complete Guide to Migrate to Strong Parameters — як безболісно і злагоджено мігрувати з Protected Attributes на Strong Parameters.

Continuous deployment Ruby application to Minikube with google's Skaffold — налаштовуємо безперервне розгортання простого Ruby-додатки на Minikube з допомогою Skaffold.

Optimize Your Debugging Process With Object-Oriented Tracing and tapping_device — оптимізуємо процес дебаггінга за допомогою об'єктно-орієнтованого трейсинга і tapping_device.

Reverse Coverage: Find which tests execute which lines of code — іноді корисно знати, як тестується/виконується/документується (у вигляді тестів, як жива документація) рядок (або набір рядків) додатка. Гайд якраз присвячено даній проблемі.

Let's talk about that 15% Ruby claim — розбираємо вартість управління Rails-додатком (стаття навіяна статтею DHH про те, що Basecamp витрачає всього 15% бюджету на підтримку Ruby-систем).

Rails Flaky Spec Solutions — розбір flaky tests на legacy-проектах: підводні камені та як їх уникнути.

3 ways Webpack surprises web developers — автор розглядає три найпоширеніші проблеми, з якими стикаються веб-розробники при вивченні Webpack: чому використання глобальних змінних веде себе не так, як ви думаєте; як Webpack сприймає все, як модуль JavaScript і велику кількість часу, що потрібно для ефективної налаштування Webpack.

Cache Crispies — Fast, Flexible Rails Serializer — гем Cache Crispies трохи нагадує Active Model Serializers з чистим DSL на основі класів. При цьому Cache Crispies підтримує високий рівень продуктивності і дозволяє включити кешування при необхідності.

Migrate Your Rails App from Heroku to AWS Lambda — мігруючи Rails-додаток з Heroku на AWS Lambda з допомогою Aurora Serverless — конфігурацією для Amazon Aurora з автоматичним масштабуванням на вимогу, в якій база даних запускається автоматично закривається і масштабується залежно від потреб вашої програми.

Ruby on Rails Sentry logger installation and configuration — встановлюємо та налаштовуємо Sentry — ПЗ для моніторингу та відстеження помилок.

Working with Capistrano: Environment Variables and Remote Commands — докладний гайд по Capistrano з прикладами модифікації змінних оточення, оновлення файлу запуску оболонки і установкою утиліти rbenv.

Ruby 2.7 compatible gems — список гемов, сумісних з Ruby 2.7: Sinatra, Devise, Capybara та інші.

BigBinary

Традиційно Big Binary випустили кілька статей про оновлення в Rails 6:

Rails 6.1 introduces class_names helper

Rails 6 adds rails db:prepare to migrate or setup a database

Rails Multiple Polymorphic Joins

Туторіали

How to use React with Ruby on Rails 6 — підключаємо геми webpacker, react-rails, react_on_rails.

Testing signed and encrypted cookies in Rails — короткий гайд по тестуванню підписаних і зашифрованих куки.

Rails 6.1 adds query method missing to find orphan records — автор розглядає новий метод запиту в Rails 6.1 для пошуку втрачених записів.

Encrypted Secrets (Credentials) in Rails 6, Rails 5.1/5.2, older versions and non-Rails applications — туторіал по зберіганню encrypted secrets в репозиторії Rails-додатки.

Optimization Techniques by Benchmark Winners — пост за мотивами однойменної презентації на Ruby Kaigi 2019.

Name the Abstraction, Not the Data — туторіал по неймінг абстракцій в Rails.

How to migrate large database tables without a headache — назва туториала говорить сама за себе: мігруючи великі таблиці баз даних без головного болю :)

І кілька туториалов за рефакторінгу від Josh Thompson: позбавляємося від `attr_accessors` in `ogre.rb і рефакторимо wizard.rb .

Послухати

RWpod

04 випуск 08 сезону. Deno, Timestamp Truncation, 16 ML New Gems for Ruby, ResizeObserver, Vacuum та інше

03 випуск 08 сезону. Yarn 2, MIR, Playwright, Web in 2020, Ruby ML for Python Coders, React Nice Dates та інше

02 випуск 08 сезону. Microsoft Edge, Git 2.25, Deep dive into Did You Mean, Snowpack, Pxi, Postgres.js, Nano ID та інше

01 випуск 08 сезону. Goodbye, Clean Code, Developer Roadmaps, Rails PG Extras, Asdf-vm, IsoCity та інше

Remote Ruby

— подкаст з незмінними ведучими Крісом і Джейсоном: про досвід Кріса по оновленню GoRails до Ruby 2.7 і Rails 6, нового проекту Джейсона ChurchChat і нового інструменту Bootstrap до TailwindCSS від Laravel Shift, який дозволяє відновити підписки Stripe з одного плану на кілька планів.

New Jumpstart Features, Postponing Southeast Ruby 2020, and (Possibly) a New Online Ruby Conference — епізод про додавання мультитенантности в Jumpstart Pro, використанні ActiveStorage і Uppy, про відкладення Southeast Ruby 2020 та потенційної онлайн-конференції з Ruby в 2020 році.

«Just Keep Hitting Tab» — подкаст, присвячений розмови про таких типізованих мовах, як TypeScript і Crystal, про інструменти навколо типізованих мов і трохи про відеоіграх :)

5by5 Ruby on Rails Podcast

Ruby on Rails Podcast #304: Legacy Code Wisdom with Alexey Chernov — подкаст з Олексієм Чорновим — консультантом з Ruby on Rails в JetThoughts. Протягом багатьох років він створював MVP і консультував бізнес по поліпшенню legacy-коду, масштабування віддаленої команди і достиженю ефективного процесу розробки. Він і ведуча подкасту Бріттані обговорюють legacy-проекти на RoR.

Ruby on Rails Podcast #303: Site Reliability at DEV with Molly Struve — Моллі Струве — провідний Site Reliability Engineer в DEV, компанії, яка управляє блогом dev.to . Вона і Бріттані говорять про те, що означає надійність сайту, любов Моллі до Elasticsearch і те, як у Моллі виходить створювати дотепний і освітній контент.

Ruby on Rails Podcast #302: Ruby Autoformatter! with Penelope Phippen — подкаст з Пенелопою Фиппен (Rubyfmt), екс-провідним розробником RSpec. Досвід в Ruby — близько десяти років. Вона і Бріттані обговорюють Rspec, Ruby Central і її думки про співтоваристві Ruby.

Ruby Rogues

RR 448: How To Avoid Catastrophes with Jon Druse — подкаст з Jon Druse, Rails-розробником з 15-ти річним досвідом про важливість code review випадках, коли рефакторинг додатки доцільний і в чому іншому.

RR 447: All About Kafka Oracle and with Bob Quillin and Karthik Gaekwad — тема подкасту — безпека у Kafka, а також сумісність Kafka і Docker.

RR 446: Development Environments — подкаст присвячений темі оточення розробки, використання Docker в якості оточення розробки, а також порівняно таких СУБД, як MySQL, MariaDB і Postgres.

RR 445: Location Services with Mithun Dhar — в подкасті провідні і учасник Mithun Dhar зачіпають тему переходу від веб-розробки до мобільного розробці, проблему безпеки і послуг визначення розташування, механізми захисту даних користувачів та їх конфіденційність.

Події

Воркшоп: Web UI Automation with Ruby + RSpec + Сapybara — львівський оффлайн-воркшоп щодо автоматизації тестування за допомогою RSpec і Capybara. Дата — 18 лютого.

Web crowd 5.0: Ruby — дніпровський митап по Ruby від компанії Yalantis. Теми митапа: Component-based architecture as a way to microservices; Mastering HIPAA infrastructure project within AWS ecosystem. Дата — 28 лютого.


? Попередній випуск: Ruby дайджест #34

Опубліковано: 08/02/20 @ 08:00
Розділ Блоги Інтерв'ю

Рекомендуємо:

DOU Hobby: Ironman – змагання з тріатлону на 225,8 км
Як створити реєстр ризиків та працювати з ним
Young person, motivated guy, maternity leave. Що не так з описом ваших вакансій і як це виправити
Android дайджест #37: підсумки 2019, чутки про Android 11 і Kotlin-first
Чому методологія не врятує ваш проект