#501 — May 14, 2020

Read on the Web

💬 Have we got an interview with the host of the Ruby on Rails Podcast? We sure do. At the bottom of the issue :-)

Ruby Weekly

The Practical Effects of the GVL on Scaling in Ruby — A meaty post on concurrency, parallelism, GIL vs GVL, and the proposed Ractor actor-based model for Ruby 3. Our favorite takeaway is there is always a lock, it’s just a matter of where it’s implemented.

Nate Berkopec

Matz Wants To Know About 2.7/3.0 Keyword Argument Pain Points — Apparently the Rails core team have raised concerns over the keyword argument changes occurring in Ruby and Matz says that as part of this, Ruby 3.0 will not have real keyword arguments. Now he wants some advice on how to proceed.

Yukihiro 'Matz' Matsumoto

Modern Redis Features from RedisGreen — Online upgrades to the latest Redis 6.0 features, memory mapping, key size tracking, and more.

RedisGreen sponsor

A May of WTFs: What Makes You WTF About Rails? — If you’ve ever filed a bug report to the Rails project, you know there’s a bit of a process before something actually gets fixed.. but you’re not complaining for no reason, right? This May, the Rails team wants to tackle more “WTF” moments you’re all having with Rails 6 and wants you to report them here in as much (or as little) detail as you wish.

David Heinemeier Hansson

TruffleRuby Now Passes All RubyGems Tests — Not only is this an important step forward for TruffleRuby (a GraalVM based Ruby implementation) itself, but it’s actually only the second Ruby implementation to pull off the feat (JRuby only skips a handful though).


Why Does Rails 6 Include Both Webpacker and Sprockets? — A new Rails 6 application will install both Webpacker and Sprockets by default even though they solve the same problem. This post digs into why and why you might choose one over the other.

Ross Kaffenberger

💻 Jobs

Find a Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started.


Ruby on Rails Developer (Remote) — Work with modern languages and frameworks alongside some of the best developers in the world.

FullStack Labs

ℹ️ Interested in running a job listing in Ruby Weekly? There's more info here.

📘 Articles & Tutorials

Neural Networks in Ruby: A Not-So-Scary Introduction — Building a neural network isn’t quite like building a human brain, but it’s the closest you can get in twenty minutes(!) :-)

Julie Kent

An Animation of the SHA-256 Hash Function in Your Terminal — The animation is cool, but the step-by-step explanation of how SHA-256 works is even better, IMO. You’ll learn something here.

Greg Walker

Rails 6 System Tests, From Top to Bottom — System tests are relatively new and comprised of several layers that Avdi dutifully breaks down here.

Avdi Grimm

Rails on Heroku? Rails Autoscale Was Made for You — Autoscaling is about maximizing performance, minimizing cost, and staying out of your way. Try it and don't look back.

Rails Autoscale sponsor

Correct Ruby Threads and ActiveRecord Connections — Ruby thread math can be fun!

Josh Beckman

Run Rails 6 System Tests in Docker Using a Host Browser

Avdi Grimm

▶  Implementing an Infinite Scroll in Rails with Stimulus.js — Go Rails always puts out great tutorials but take care over whether you need infinite scroll in an app, it can sometimes be an undesirable user experience.

Go Rails

Upgrading a Trivial Rails App from Ruby 2.3 to 2.7 and from Rails 4.2 to 6.0 — Not a job any of us would envy but someone’s gotta do it. The take away tip is to take baby steps and upgrading through both Rails 5.0 and 5.1 is a good idea to expose deprecations.

Andrzej Krzywda

🛠 Code and Tools

Limit Everything: Timeouts for Shell Commands in Ruby — A quick introduction to posix-spawn, a library designed to take advantage of faster process spawning interfaces (where available) that also supports timeouts!

John Nunemaker

Pry Remote: Connect to Pry Remotely — Rediscovered by Scott Watermasysk here, this library provides a way to start Pry remotely and to connect to it using DRb for a remote debugging experience. It hasn’t had an update in years but I just tried it out and it seems to work.

Mon Ouie

Need a New Relic Alternative? Try Raygun for a Fraction of the Price

Raygun sponsor

render_async 2.1.6 Released — A detailed dive into all the new changes inside the 2.1.6 version of the asynchronous partial rendering library for Rails.

Nikola Đuza

jquery-rails 4.4: A Gem to Automate using jQuery with Rails — Upgrades jQuery to 3.5.1 and tested against latest Ruby versions. And if anyone tells you no-one uses jQuery anymore, it’s lies, we tell ya, all lies! 😄

Rails Team

Brittany is a developer, podcaster, and a fitness advocate with a passion for making our industry more diverse. Oh, and she plays roller derby too, under her alter-ego, Norma Skates..

What’s the biggest challenge about running a podcast?

The biggest challenge is finding the right mix between experienced guests that will draw listeners and convincing new members of the Ruby community and podcasting to make an appearance. When one of those new guests strikes a cord with the audience or causes me to see a different viewpoint, it makes all of the work hosting the podcast worth it.

Do you have a favorite episode (or type of episode)?

At about 70 episodes recorded under my tenure as host, that is a tricky question to answer! I was incredibly nervous to interview Scott Hanselman (#282 - Rails on Windows is Fabulous with Scott Hanselman) since he is so well regarded in the software community. Turns out, he was incredibly inviting and insightful. I'm also quite proud of one of my earlier episodes (#251 - An Honest Take on GraphQL with Ankita Gupta) because I met Ankita at RubyConf Malaysia and was impressed with her GraphQL knowledge. This was her first podcast episode and you certainly couldn't tell.

How do we inspire more women to enter tech?

Aside from earlier STEM education, we need more females and non-binary advocates in the tech industry to be vocal about the creativity and stability a technical career can bring. They could publish or guest on podcasts, write content and speak at conferences. Unfortunately, this group can have a lot of fear about repeating insights from others but in actuality, it amplifies the message that we matter in tech.

Any advice for other folks that are looking at (or currently in) a bootcamp?

I love this question because I'm a bootcamp graduate (tech is my second career) and was a bootcamp mentor for years. A lot of bootcamp graduates are not taught basic project management skills and how to collaborate with an engineering team. When they are sole developers coding CRUD apps, they can get away with ad-libbing features. Prioritize learning how to properly submit pull requests, estimate feature size and to balance work and life.

Does Norma Skates have a nod to her technical self?

Why yes, Norma Skates, my alter ego in roller derby does have a shoutout to software. While playing, I like to hit hard but will often get knocked down. I bounce right back up with the status of 'OK'. Of course, my jersey number is 200.

Find out more about Brittany on her website and listen to the Ruby on Rails 5by5 podcast here.