#​628 — November 10, 2022

Read on the Web 🇺🇦

Together with  AppSignal logo

Ruby Weekly

Vanilla Rails is Plenty — Since Rails was born at 37signals, they sometimes tout their approach to Rails as canon, eschewing many design patterns found in the ecosystem. So how do they avoid structural issues big apps face while staying on the ‘vanilla Rails path’? Jorge explains. 🎵 I like vanilla, it's the finest of the flavors..

Jorge Manrubia (37signals)

➕🎲➗ Test Yourself on Ruby Operator Precedence — A fun (and potentially embarrassing..?) quiz with an accompanying blog post that’s harder than you may think it is (at least, that’s what we’re telling ourselves.)

Domhnall Murphy

Debugging in Ruby with AppSignal — An APM is not just useful for seeing how your application performs through graphs and visuals. You can go deeper and use it to handle debugging when an error occurs. This post is all about advanced debugging with AppSignal.

AppSignal sponsor

Crunchy Bridge's Ruby Backend: Sorbet, Tapioca, and Parlour-Generated Type Stubs — We’ve all talked a lot about Sorbet and typing this year, but what does a real process of using it look like? Brandur goes through the tools used in their team along with the benefits (and risks) of going all-in on Sorbet.

Brandur Leach (Crunchy Data)

A Walkthrough of Creating a Gem with CI and CD — Building a gem is a pretty well trodden path by now, but I love fresh walkthroughs that take current tooling into account. Bundler keeps the gem smithing simple, with GitHub Actions running the tests for you in the background across multiple Ruby versions.

Alex Evanczuk

Reducing Memory Usage with an Environment Variable — Want to use less memory in thread heavy apps? Tuning glibc’s memory usage behavior with the MALLOC_ARENA_MAX environment variable can help. Using jemalloc is another (if more complex) alternative (more on this here – also, Fullstaq Ruby uses jemalloc).

Marco Colli

QUICK BITS:

  • In an attempt to upgrade a Sinatra app to the latest standards, I discovered Sinatra 3 does not support Rack 3 yet – if you have the skills, you're invited to do the work ;-)

  • Linus Torvalds (he of Linux and git fame) recently ▶️ gave an interview and commented on how quickly git took off largely due to "the Ruby people, strange people." I think he means it in a nice way 🤞

📕 Some Tips and Tutorials

Tips for Navigating RubyConf 2022 as a Newcomer — If you’re headed to your first RubyConf this year and you’re worried about getting the most out of it, fear not – heed these words of past attendees. (RubyConf 2022 is later this month in Houston, Texas.)

Ruby Together

If You Are Building a Notification Microservice Internally: Read This — Learn about internal & external UX requirements, what to plan for with scaling, reliability, audits, and observability.

Courier.com sponsor

Faster Pagination in HEY — 37signals’ shiny new developer blog gets another post about how they approached improving the performance of their MySQL-backed HEY email service by way of tenant-ID prefixed indexes.

Donal McBreen (37signals)

Using Watir to Automate Web Browsers with Ruby — I’ve never been a big fan of Selenium but if you want to access its browser automation powers, Watir is a very mature way to do so from Ruby. Ferrum is a worthy alternative if you want to just remote control a Chrome instance instead.

Jude Ero (ScrapingBee)

'RSpec Examples are, well, Examples' — A look at a subtle shift in mindset for writing specs to let your expectations be an example of how to use the underlying code rather than just be for testing.

David Bryant Copeland

Fixed Price Monthly Code Maintenance and Upgrades for Rails Apps

reinteractive Pty Ltd sponsor

Rails Now Validates Options Used in Migration Functions
Swaathi Kakarla

Learning Good Habits by Watching a Staff Software Consultant
Nichol Alexander and Kevin Baribeau

🛠 Code & Tools

Announcing Hanami 2.0 Release Candidate 1 — Hanami 2.0 is really shaping up to be something special. The final 2.0 release is expected in a couple of weeks, but for now you can pick up what this modern take on a Ruby Web framework is all about through its getting started guide. Think more structure than Sinatra, but not as much as Rails!

Luca Guidi

RubyMine 2022.3 Beta Released — The latest version of JetBrains’ powerful commercial Ruby IDE has exited its ‘early access’ phase. One new feature coming to 2022.3 for Windows users is the ability to run within WSL2.

Iryna Pisklyarova

Making Postgres More Affordable. Starting at $10/Month

Crunchy Bridge sponsor

Class Variants: Configure Component Styles and Apply Them as Classes — Create and maintain custom Tailwind components using classes and states.

Avo Project

KEEPING IT DRY(-RB):

Jobs

Senior Ruby Developer — Join a dynamic and collaborative team working remotely (EST) or hybrid (Montreal-based startup).
Potloc

Software Development Educator — DPI (Full Time, Hybrid, Chicago) — Got a passion for software development, beginner focused education, and social impact? Join us in our mission to transform lives and diversify tech talent.
Discovery Partners Institute — University of Illinois System

Find Ruby Jobs Through Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.
Hired