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
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
Чому методологія не врятує ваш проект