#455 — June 20, 2019

Read on the Web

Ruby Weekly

▶  Progress on Compacting GC in Ruby 2.7 — No, this is not a short talk (indeed, it’s an hour long, but the actual technical part starts at 15 minutes in) but Aaron, both a member of the Ruby and Rails core teams, explains what work is taking place to improve Ruby’s garbage collector by essentially ‘defragging’ (or ‘compacting’) the memory that Ruby uses at runtime.

Aaron Patterson

Fullstaq Ruby: An Alternative CRuby Distribution, Optimized for Production — A CRuby/MRI-based Ruby distribution that’s optimized for production environments out of the box, such as using the popular Jemalloc and malloc_trim patches. GitHub repo.

Hongli Lai

eBook: Best Practices for Optimizing Postgres Query Performance — Learn how to get a 3x performance improvement on your Postgres database and 500x reduced data loaded from disk in this free pganalyze eBook.

pganalyze sponsor

Ruby Processes and Threads: Configuring a Web Server — A look at the effects of increasing threads vs increasing processes vs increasing both upon the performance of Web applications.

Jake Yesbeck

Using Multiple Databases with Active Record in Rails 6+ — Rails 6 is adding the ability to work with multiple databases in a single app out of the box and the official Rails Guide on the topic is coming along nicely.

Ruby on Rails Guides

Whenever 1.0: Cron Jobs, but for Ruby — Whenever makes it easy to write and deploy cron jobs using a Ruby DSL (e.g. every 3.hours do ...) which is then converted into cron syntax.

Javan Makhmali

💻 Jobs

Experienced Ruby on Rails Developers (Full Remote) — We're looking for smart devs to join our fast-growing, well-funded company that makes thousands of African fashion designers happy.

Afrikrea Marketplace

Sr. Software Engineer (Remote/Chicago) — We are the top marketplace for personalized learning with experts. Modern stack, small team, great work environment and benefits.


Wanted: Curious Developers with ❤️ — Stagnating? Check C5 out: New projects, tech, and challenges perfectly paired with kind and brilliant people in SF, LA, NYC, CHA.

Carbon Five

Land a New Dev Job on Vettery — Vettery specializes in tech roles and is completely free for job seekers.


📘 Articles & Tutorials

Scaling Your Ruby Service Objects with LightService — The light-service gem implements the Railway (or, some might say, Interactor) pattern.

Riaz Virani

A Repeatable, Step-by-Step Process for Writing Rails Integration Tests with Capybara — If you’re having TDD-paralysis, this is helpful.

Jason Swett

Earn Passive Revenue for Your Ruby Projects with 2 Lines of Code

CodeFund sponsor

Rails 6 Adds Enumerable#index_with — No more map with to_h.

Amit Choudhary

Quick Tip: A Rails Middleware to Change The Log Level At Runtime

Mattia Roccoberton

The Difference between RSpec, Capybara and Cucumber — Aimed at beginners to whom these tools may be entirely new.

Jason Swett

A Look at Node.js for Rails Lovers — If you’re from a Ruby background and haven’t even played with Node.js, this will help paint a little of the picture.

Craig Phares

How I Test JavaScript-Heavy Rails Apps

Jason Swett

🔧 Code & Tools

RubyGems 3.0.4 Released — 3.0.4 gains TruffleRuby support. The 2.7 branch gets a new release too with 2.7.10.

RubyGems Blog

Timeliness: Fast Date/Time Parsing for the 'Control Freak' — An interesting alternative to time/parse for working with formatted dates (Chronic is still a great option if you need to support natural language).

Adam Meehan

Monitoring and Distributed Tracing for Ruby Apps — Trace real requests from end-to-end to identify latency or errors in your Ruby applications with Datadog APM. Try Datadog free.

Datadog APM sponsor

reCAPTCHA 5.0: ReCaptcha Helpers for Ruby Apps — A way to more easily use Google’s popular (but often controversial) CAPTCHA service from Ruby apps, including both v2 and v3 variants.

Jason L Perry

Shoryuken 5: A Super Efficient Amazon SQS Thread Based Message Processor — It’s neat to see so many mature, established Ruby libraries getting updates lately.

Pablo Cantero

fog 2.2: The Ruby Cloud Services Library — A way to manage cloud services (storage, DNS, compute, etc.) in a relatively abstracted, agnostic way.

Wesley Beary and Contributors

Phrasing: Let Admins Edit Phrases Inline on Your Rails Apps