#495 — April 2, 2020

Read on the Web

Ruby Weekly

A Proposal for 'Endless' Method Definitions? — When a Ruby core team member suggests a major piece of new syntax, everyone listens. But on April 1st..? Nonetheless, Matz quite liked the idea, if not the syntax 😄

Yusuke Endoh

Ruby 2.7.1 Released (And 2.6.6, 2.5.8 and 2.4.10..) — Yes, it’s one of those times again, new versions across all of the main Ruby release lines to fix some security vulnerabilities. The first issue is a heap exposure vulnerability in socket (commonly used under the hood by other libraries). The second is an unsafe object creation issue in json. Also, if you need them, here’s 2.6.6, 2.5.8 and 2.4.10.

Ruby Core Team

Static Typing in Ruby with a Side of Sorbet — Could static typing help improve the Heroku Web Services team’s Ruby experience? Find out our results, and what it was like to code using type-checked Ruby.

Heroku sponsor

Why Is Rails Boot Slow on macOS? — A discussion on the Rails forum that, unfortunately, doesn’t come to a conclusion but is interesting, nonetheless. Maybe you can help?

Sam Saffron et al.

Understanding the Monty Hall Problem in Ruby Code — The Monty Hall problem is a popular statistical puzzle with a counterintuitive outcome even many mathematicians have initially refused to believe. Luckily we can model it with Ruby to see what’s going on.


RailsConf 2020.2: It's RailsConf, But From Your Couch — There’s not a lot to see yet, but this is good news. RailsConf 2020 was due to take place in Portland next month, but now some of the speakers are recording their talks and they’ll be on the RailsConf site for free from May 5 onward.

Ruby Central

💻 Jobs

Lead Engineer at Moon Creative Lab — Moon is incubating startup ideas from around the globe. Write code, guide new businesses, build dev teams, and hone your craft in our design-led innovation lab.

Moon Creative Lab

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


📘 Articles & Tutorials

Changing the Approach to Debugging in Ruby with TracePoint — How to use TracePoint to get the benefit of puts debugging with, in theory, less effort. Automation can be a good thing.

AppSignal Blog

▶  How to Use the 'Pay' Gem to Accept Payments in Rails — The host of GoRails created a payment gem to make using the Stripe and Braintree APIs easier and more consistent.


The Ruby Security Checklist — Learn actionable security best practices to help you protect your Ruby applications. Get the security checklist today.

Sqreen sponsor

Should I Really Use Monads? — What monads are, why they have value, along with some of their downsides. A must read if you’re a dry-monads user.

Igor Morozov

How an Index Route Without Pagination Could Hurt Your App — There are numerous ways to mitigate this, but it’s still a good read with some nice learning nuggets.

Fabio Perrella

Exploring Method Arguments in Ruby — With great flexibility and lots of options comes great confusion.


Running a Rails Consultancy: A Year In — It’s always interesting to see how people are structuring their work and businesses in this industry.

Vipul A M

Download The Complete Guide to Upgrade Rails (Free eBook)

FastRuby.io sponsor

How to Launch an EC2 Instance using Ansible

Jason Swett

🛠 Code and Tools

Optimism: A Drop-in Solution for Realtime Remote Validation in Rails — Optimism uses WebSockets for real-time communication of errors on form submittal. “Form validations in five minutes or it’s free..”


Open-Sourcing Vessel: A Ruby Web Crawling Framework by Evrone — Wanna build your own search engine or scrape toilet paper details off Amazon.com (maybe don’t do that!)?


puma-status 1.0: Command-line Tool to Display Information About Puma Processes — Supports clustered and single modes, displaying CPU %, memory usage, uptime, and current load.

Yoann Lecuyer

pg_query: Use Postgres's SQL Parser from Ruby

Lukas Fittl

40+ Ruby on Rails Application Monitoring Tools — This massive post is about all things monitoring: APMs, error and exception monitoring, logs, security…the kind of post you’ll come back to again.

Wiktor Plaga