#410 — August 2, 2018

Read on the Web

Ruby Weekly

Matz on Ruby After 25 Years

▶  Matz on Ruby After 25 Years — The creator of Ruby (Yukihiro ‘matz’ Matsumoto) reflects on Ruby’s past and looks to its future in the shape of Ruby 3.0.

Yukihiro Matsumoto

Stop Shipping Untested Ruby Code with Undercover — Get coverage warnings on changed files so you can be sure your new code is covered while working on that legacy code base.

Jan Grodowski

Long Term Support for Rails 2.3 and 3.2 — Rails LTS provides security patches for old versions of Ruby on Rails. Currently Rails 2.3 and Rails 3.2 are supported.

Rails LTS sponsor

A Proposal to add Hash#=== to Ruby — The discussion is in Japanese, but this proposal on the official Ruby feature tracker is an interesting one and would allow a convenient way to query the contents of hashes. There’s a similar proposal for Array#===.

user = { id: 1, name: "homu", age: 14 }
{ age: (1..20) } === user  # => true
{ name: /^h/ } === user    # => true

Generating Random Numbers in Ruby — There’s a lot more to random number generation than you might think, especially if you want reproducible sequences or normal distributions.

Joyce Echessa

Evaluating Scala and Sticking with Ruby — It’s uncommon to see a post about someone choosing Ruby over another (especially functional) language, but this author didn’t see a compelling reason to jump.

Timothy Mukaibo

Rails 5.2.1 RC 1 Released — The final release is due next week.

Official Rails Blog

💻 Jobs

Ruby on Rails Developer at X-Team (Remote) — We help our developers keep learning and growing every day. Unleash your potential. Work from anywhere. Join X-Team.


Find A Ruby Job Through Vettery — Create a profile to connect with 4,000+ companies seeking top tech talent.


📘 Articles & Tutorials

Building a Testing Framework Similar to RSpec in Ruby — The new tool, Specifier, covers expectations, matchers, context, formatters, and a CLI.

Kevin Sylvestre

Rails 5.2 Encrypted Credentials Cheat Cheat and Tips

Tomas Valent

▶  Batching Background Jobs with Sidekiq — Sidekiq Pro or sidekiq-batch let you run a set of background jobs in parallel and then a callback once they’re finished.

Go Rails

Ruby 2.6 Added Some Options to Exception#full_message


Send Emails with Style in Rails — Most of us had already at some point to deal with the pain of sending HTML formatted emails using Rails. Here’s a few gems that help (mostly with CSS.)

Imaginary Cloud

Ruby 2.6 Adds Option to Not Raise Exception for Integer and Float Methods — Bye rescue nil, hello exception: false

Prathamesh Sonpatki

Building a Scheduled Newsletter in Ruby with IronWorker and Mailgun

Manifold sponsor

Bringing Fibers to TruffleRuby — Addressing one of the few areas that TruffleRuby lagged MRI, a new JVM technology allows fibers to execute much more efficiently.

Chris Seaton

Using Rails Encrypted Credentials with Docker — If you’re running your Rails app in Docker, here’s how to handle encrypted credentials from the command line, in a Dockerfile, and with Docker Compose.

Chris Blunt

Can I Use Ten 10% Speedups to Make Ruby Instant? (No..) — Or, “How do many speedups add up to one speedup?” Each speedup is not additive as much as it’s multiplicative because, you know, math.

Noah Gibbs

🔧 Code & Tools

Undercover: Like RuboCop But For Code Coverage — Inspects files in a git diff and warns on methods, classes and blocks which need test coverage. Just in case you missed the article at the top of the issue ;-)

Jan Grodowski

Continuous Delivery on Modern Infrastructure - Run GoCD on Kubernetes

GoCD sponsor

MiniI18n: Minimalistic Internationalization for Ruby — Supports interpolations, fallbacks, nested keys and more.

Marc Anguera Insa

Orbacle: A Ruby 'Language Server' for Code Editors — Still early days, but aims to bring dynamic features to Ruby editing (e.g. jump-to-definition, autocompletion) in tools like Vim, Emacs or Atom.

Rafał Łasocha