---
title: "Ruby highlights of 2021"
publication: "Ruby Weekly"
issue: 584
published_at: "2021-12-23"
canonical_url: "https://rubyweekly.com/issues/584"
---

Plus the year's best videos, talks, and code. |       

🎄 **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](https://rubyweekly.com/issues/584)   

Ruby Weekly  

Some Ruby Weekly Highlights from 2021  

1. [A Ruby One-Liners Cookbook](https://learnbyexample.github.io/learn_ruby_oneliners/one-liner-introduction.html) — 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](https://github.com/learnbyexample/Command-line-text-processing/blob/master/ruby_one_liners.md) we’ve shared before. 

Sundeep Agarwal   

2. [What We Can Learn From __why_, The Long Lost Developer](https://github.com/readme/featured/why-the-lucky-stiff) — 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)    [![\](https://copm.s3.amazonaws.com/9c2cc719.png)](https://ter.li/938wl4) 

[Spend Less Time Debugging and More Time Building with Scout](https://ter.li/938wl4) — 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](https://blog.appsignal.com/2021/04/14/ruby-on-rails-controller-patterns-and-anti-patterns.html) — This was last in a series of popular posts about Rails patterns and anti-patterns. Previous excursions covered patterns and anti-patterns [for views](https://blog.appsignal.com/2021/02/10/ruby-on-rails-view-patterns-and-anti-patterns.html) and [for models](https://blog.appsignal.com/2020/11/18/rails-model-patterns-and-anti-patterns.html), if you want the whole set. 

Nikola Đuza   

4. [RBS: A New Ruby 3 Typing Language in Action](https://blog.appsignal.com/2021/01/27/rbs-the-new-ruby-3-typing-language-in-action.html) — 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:** 

- We learnt from GitHub's then-CEO Nat Friedman that Ruby helping power [billions of API requests per day](https://twitter.com/natfriedman/status/1404835709278580739).
- DHH began to post about a [future without JavaScript bundling or transpiling](https://world.hey.com/dhh/modern-web-apps-without-javascript-bundling-or-transpiling-a20f2755) – ideas that made it into Rails 7, released last week.
- Rails benchmarking expert Noah Gibbs showed us [Rails wasn't much faster on Ruby 3.0 than 2.7](https://www.fastruby.io/blog/rails/ruby/performance/how-fast-is-ruby-3-on-rails.html) but Ruby 3.0 was nonetheless a good step forward. He then [explained _why_ Ruby 3 wasn't faster](https://www.fastruby.io/blog/ruby/performance/why-wasnt-ruby-3-faster.html).
- Stripe [open-sourced the Sorbet ahead-of-time compiler](https://sorbet.org/blog/2021/07/30/open-sourcing-sorbet-compiler) in July.
- Emma Hyde reminded us that [Ruby is still a diamond 💎](https://medium.com/retention-science/ruby-is-still-a-diamond-b789d2661266)     

Jobs  

[Mid/Senior Software Engineer at Carbon Five (LA / SF / NYC / CHA)](https://grnh.se/e02c6d762us) — 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)](https://grnh.se/bf97c4df4us) — Snapdocs is now a [Unicorn](https://snapdocs.com/resources/announcing-our-series-d/) 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. 
Snapdocs   

[Find Ruby Jobs Through Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-rubyweekly%29&utm_content=find-your-next-job) — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers. 
Hired    

🛠 Top Code & Tools Links of 2021  

[Awesome Print Came Back: Pretty Print Your Ruby Objects with Style](https://github.com/awesome-print/awesome_print) — 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](https://github.com/amazing-print/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](https://world.hey.com/jorge/privacy-aware-rails-consoles-with-console1984-and-audits1984-53562eaa) — 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](https://www2.reinteractive.com/opscare-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](https://github.com/tenderlove/fisk) — 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](https://github.com/tenderlove/tenderjit) written in Ruby as [seen on his recent livestreams](https://www.youtube.com/watch?v=JDtFQhWQbws). 

Aaron 'tenderlove' Patterson   

[Adornable: A Way to Use Decorators on Ruby Methods](https://github.com/kjleitz/adornable) — If you’ve ever looked at Python’s decorators or Lisp’s ‘[advice](https://en.wikipedia.org/wiki/Advice_%28programming%29)’ and thought you’d like a similar way to extend Ruby methods, this might be for you. 

Keegan Leitz   

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/yrmdu3gx24qc8g3cuw4k.jpg)](https://github.com/red-data-tools/YouPlot)  

[YouPlot: A Command Line Tool That Draw Plots in The Terminal](https://github.com/red-data-tools/YouPlot) — I continue to be impressed by the aesthetic of this. The underlying plotting library is [unicode_plot.rb](https://github.com/red-data-tools/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](https://shortcut.com/?utm_source=cooperRubyWeekly&utm_medium=spon_nl&utm_campaign=prospecting&utm_content=kanban) 

Shortcut (formerly Clubhouse.io) sponsor   

[Rails Mini Profiler 0.7.0: Performance Profiling for Rails, Made Simple](https://github.com/hschne/rails-mini-profiler) — 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](https://github.com/testdouble/standard) — As [StandardJS](https://standardjs.com/) 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](https://www.youtube.com/playlist?list=PLbHJudTY1K0c8N1-PPyiQxlHNzJIzyJv6#railsconf2021) — 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](https://www.youtube.com/watch?v=Q7uOPVfZ3Go), Jemma Issroff showing us [a 'day in the life' of a Ruby object](https://www.youtube.com/watch?v=PuNbdfdFBjk), or a [keynote from Bryan Liles](https://www.youtube.com/watch?v=5I1WuOn5MYo&list=PLbHJudTY1K0c8N1-PPyiQxlHNzJIzyJv6&index=3). 

Ruby Central (YouTube)   

▶[Matz's Euruko Keynote: Beyond Ruby 3.0](https://www.youtube.com/watch?v=Dp12a3KGNFw) — 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](https://twitter.com/matheusrich/status/1400973905628647427). 

Yukihiro 'Matz' Matsumoto   

▶[Some Rails Best Practices in 20 Minutes](https://www.youtube.com/watch?v=vw7PlBvLq9k) — A well recorded screencast covering a variety of ideas. 

Jack Kinsella   

▶[How to Debug a Rails App](https://www.youtube.com/watch?v=MJSZ3WcgHeE) — 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](https://www.youtube.com/watch?v=KbFHbkY27no) — We’ve mentioned [Crystal](https://crystal-lang.org/), 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         

Curated by [Peter Cooper](https://twitter.com/peterc), [Glenn Goodrich](https://twitter.com/ruprict) and [Cooperpress](https://cooperpress.com/). 

[Change your email address](https://rubyweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://rubyweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
