🎄 Season's greetings! As 2021 ends we're taking the opportunity to wrap things up with a look back at the most popular items of the year. Ruby 3.1 is likely to be released on Christmas Day so we might – fingers crossed – be back in a week or so to cover it, but, if not, the first full issue of the new year will be on January 6, 2022 and I'll see you again then.
Peter Cooper — Editor

#​584 — December 23, 2021

Read on the Web

Ruby Weekly

Some Ruby Weekly Highlights from 2021

1.  A Ruby One-Liners Cookbook — Ruby is a fantastic language for one-liners, whether in IRB or even from the command line. This cookbook is an extension of a epic list of them we’ve shared before.

Sundeep Agarwal

2.  What We Can Learn From _why, The Long Lost Developer — GitHub did a great feature on a Rubyist who actually left the community some years ago: why the lucky stiff. _why was a prolific member of the community who wrote a popular introductory guide to Ruby, maintained several libraries, drew cartoons, and more. Their memory, work, and attitude live on.

Klint Finley (GitHub ReadME Project)

Spend Less Time Debugging and More Time Building with Scout — Scout is a lightweight, production-grade application monitoring service built for modern development teams. Just embed our agent in your application, we handle the rest.

Scout sponsor

3.  Rails Controller Patterns and Anti-Patterns — This was last in a series of popular posts about Rails patterns and anti-patterns. Previous excursions covered patterns and anti-patterns for views and for models, if you want the whole set.

Nikola Đuza

4.  RBS: A New Ruby 3 Typing Language in Action — RBS was introduced with Ruby 3.0 about a year ago and it wasn't the easiest thing to get your head around. This article went into more depth and provided a handy introduction (and comparison to Sorbet) if typed Ruby intrigues you.

Diogo Souza

Best of the rest:


Mid/Senior Software Engineer at Carbon Five (LA / SF / NYC / CHA) — Join our team of creative full-stack devs to work with exciting clients in tech. Great benefits, growth opps, caring team & more.
Carbon Five

Senior Software Engineer (Remote in the US) — Snapdocs is now a Unicorn with a $1.5B+ valuation. We’re a SaaS product disrupting the mortgage and real-estate industry. Join our growing distributed team. ROR, Go, Postgres, React, TypeScript, AWS.

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.

🛠 Top Code & Tools Links of 2021

Awesome Print Came Back: Pretty Print Your Ruby Objects with Style — For years, Awesome Print has provided a great way to ‘pretty print’ Ruby objects in a way that goes far beyond what the standard library's pp offers. The project went stale for long enough that a fork called Amazing Print was formed but the original returned in 2021 supporting Rails 5+ and Ruby 2.7+. Amazing Print has, however, seen more releases since so there's still a choice for you to make.

Awesome Print Team

Privacy-Aware Rails Consoles with console1984 and audits1984 — Basecamp created console1984 to protect sensitive/encrypted data in a console connected to production. The audits1984 gem provides a UI (Rails engine) to examine the logs created by console1984.

Jorge Manrubia (Basecamp)

Complete Peace of Mind Rails Hosting — If you need a break over the holidays, you need OpsCare. We keep your app running, 24 hours a day, 7 days a week with a worldwide team.

OpsCare by reinteractive sponsor

Fisk: A Pure Ruby x86-64 Assembler — An interesting project from tenderlove and a clever bit of work representing x86 assembly language via a mostly implicit Ruby DSL. It relates to his recent work on his own JIT compiler written in Ruby as seen on his recent livestreams.

Aaron 'tenderlove' Patterson

Adornable: A Way to Use Decorators on Ruby Methods — If you’ve ever looked at Python’s decorators or Lisp’s ‘advice’ and thought you’d like a similar way to extend Ruby methods, this might be for you.

Keegan Leitz

YouPlot: A Command Line Tool That Draw Plots in The Terminal — I continue to be impressed by the aesthetic of this. The underlying plotting library is unicode_plot.rb if you want to pull off similar things in your own code.

Red Data Tools

Shortcut Puts the Agile in Agile and the “Can” in Kanban

Shortcut (formerly Clubhouse.io) sponsor

Rails Mini Profiler 0.7.0: Performance Profiling for Rails, Made Simple — Rails Mini Profiler provides detailed information about your requests to help you figure out why certain requests perform poorly.

Hans-Jörg Schnedlitz

Standard 1.5: A Ruby Style Guide, Linter and Formatter — As StandardJS is to JavaScript, Standard is to Ruby, and it's seen quite a few updates this year.

test double

📺 Top Videos of 2021

▶  The Talks from RailsConf 2021 — When we linked these talks back in May there were only 10 videos in the conference's playlist but now there are 75! So there's a lot to catch up on if you didn't attend, whether it's Jamie Gaskins demystifying Hotwire, Jemma Issroff showing us a 'day in the life' of a Ruby object, or a keynote from Bryan Liles.

Ruby Central (YouTube)

▶  Matz's Euruko Keynote: Beyond Ruby 3.0 — The founder and chief designer of our favorite language gave a virtual keynote and focused on what Ruby has achieved with version 3 and where efforts were headed for the remainder of 2021. It’s quite long but Matheus Richard wrote some notes on Twitter.

Yukihiro 'Matz' Matsumoto

▶  Some Rails Best Practices in 20 Minutes — A well recorded screencast covering a variety of ideas.

Jack Kinsella

▶  How to Debug a Rails App — A nice 30-minute screencast gently introducing you to the practicalities of debugging Rails apps from the basics through to using external tools and gems to help.

Phil Smy

▶  Matz's Talk at a Crystal Conference — We’ve mentioned Crystal, a Ruby-inspired compiled and statically typed language, a few times in 2021, and even Ruby’s creator gave a talk to the Crystal community where he showed support for their endeavors and said he ‘encourages the search’ for better solutions.

Yukihiro 'Matz' Matsumoto