---
title: "This is for the 42.9% of us who want to keep using Ruby"
publication: "Ruby Weekly"
issue: 503
published_at: "2020-05-28"
canonical_url: "https://rubyweekly.com/issues/503"
---

Plus more of this week's Ruby news, views, and libraries.       

#503 — May 28, 2020 

[Read on the Web](https://rubyweekly.com/issues/503)   

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1590679705/igtsmzubnqszlc5tjfjr.jpg)](https://metaredux.com/posts/2020/05/26/rubocop-defaults-survey-results.html)  

[The Results of a Survey into RuboCop's Defaults](https://metaredux.com/posts/2020/05/26/rubocop-defaults-survey-results.html) — Over 700 RuboCop users were surveyed about their preferences around the popular code analyzer and formatter’s default settings. The results make for interesting reading: the majority went for single-quoted string literals, a 120 character line limit, and never using `and` or `or`. 

Bozhidar Batsov   

[delete_in_batches: A Fast Way to Delete with Active Record](https://github.com/ankane/delete_in_batches) — Bills itself as “the fastest way to delete 100k+ rows with ActiveRecord” by deleting rows in _batches_. Usually I’d have a skeptical look on my face at such a bold claim, but given the author, I’ll try this out next time I’m wiping evidence data 😁 

Andrew Kane   [![\](https://copm.s3.amazonaws.com/7248b76a.png)](https://www.cloud66.com/rails/?utm_source=-&utm_medium=-&utm_campaign=RubyWeekly-q2-3) 

[Happy Rails Deployments with Cloud 66](https://www.cloud66.com/rails/?utm_source=-&utm_medium=-&utm_campaign=RubyWeekly-q2-3) — The simplicity of Heroku on your own servers. Deploy your Ruby, Rails, Sinatra and Rack application to any cloud or server. Try it free and get extra $66 free credits with the code:`Ruby-Weekly` 

Cloud 66 sponsor   

[VCR 6.0: Record Your Test Suite's HTTP Interactions and Replay Them](https://github.com/vcr/vcr) — A long standing library for recording HTTP interactions and replaying them during testing. 6.0 needs Ruby 2.3 or newer, supports Faraday 1.0, and removes old JSON library dependencies. They’re also seeking more maintainers, if you can help. 

VCR   

[Creating a Ruby Gem with Rust](https://richardpatching.com/2020/05/22/creating-a-ruby-gem-with-rust.html) — [Rust](https://www.rust-lang.org/) is an increasingly popular compiled, safety-first systems programming language and calling libraries built with it via Ruby FFI is pretty easy. 

Richard Patching    

Quick bytes: 

- Stack Overflow's 2020 developer survey [results are out](https://insights.stackoverflow.com/survey/2020) and it's not super great reading for Ruby with [only 42.9% of actual Rubyists](https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-loved) who replied saying they were keen to keep using it(!?) Well, we're certainly in that group and hope you are too 😁
- We recently [interviewed](https://superhighway.dev/thibaut-barrere-interview) Thibaut Barrere, the creator of the Ruby-powered ETL library [Kiba](https://www.kiba-etl.org/). He's just released [Kiba Pro v2.](https://thibautbarrere.com/2020/05/25/announcing-kiba-pro-v2)
- Proof of concept [improvements to Ruby's hashing algorithm](https://bugs.ruby-lang.org/issues/16851) are being tried out.  

💻 Jobs  

[Engineering Manager Backend (f/m/x)](https://www.homeday.de/en/jobs/engineering-manager-backend-m-w-x-4489062002/) — Grow and work with our backend team in an amazing environment, providing a personal educational budget and 30d of vacation. 

HOMEDAY   

[Software Developer at Dr. Bill (Canada Only - Vancouver BC or Remote)](https://www.dr-bill.ca/web-developer) — Dr. Bill helps Canadian doctors save time by streamlining their billing. Join our team for our next phase of growth. 

Dr. Bill   

[Find a Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-rubyweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77583) — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. 

Vettery  

ℹ️ _Interested in running a job listing in Ruby Weekly? There's [more info here](https://booking.cooperpress.com/jobs)_. 

📘 Articles & Tutorials  

[Never Query the Same Thing More Than Once](https://johnnunemaker.com/never-query-the-same-thing-more-than-once/) — A real-world refactoring aimed at reducing the number of calls to the database. These posts will always teach you something. 

John Nunemaker   

[From 25 Minutes to 7 Minutes: Improving the Performance of a Rails CI Pipeline](https://kellysutton.com/2020/05/18/speeding-up-a-rails-continuous-integration-pipeline.html) — _“For every minute we speed up our CI environment, we see a correlation of engineers landing 2% more Pull Requests per week.”_ More PRs == more work done. 

Kelly Sutton   

[Rails 6.1 Adds Support for Signed IDs to Active Record](https://blog.saeloun.com/2020/05/20/rails-6-1-adds-support-for-signed-ids-to-active-record.html) — You could use this in some situations where you might currently use tokens, where you want to be sure that someone is only referring to a specific ID if they’re really _meant_/have permission to. 

Rohit Kumar   

[Opening The Ruby Concurrency Toolbox 🛠](https://www.honeybadger.io/blog/ruby-concurrency-parallelism/?utm_source=rubyweekly&utm_medium=email&utm_campaign=ruby) — Browse Ruby's concurrency toolbox and learn how each tool works so you can compare them or even build your own Sidekiq. 

Honeybadger sponsor   

[Two Commonly Used Rails Upgrade Strategies](https://www.fastruby.io/blog/rails/upgrades/rails-upgrade-strategies.html) — You can create a separate branch and bring that up to speed before merging it in or.. you can take baby steps by ‘dual booting’ your app up the versions. 

Luciano Becerra   

▶[Setting Up a New Mac for Development](https://blog.testdouble.com/talks/2020-05-28-setting-up-a-new-mac-for-development/) — You’d need to be dedicated to the cause to watch _all_ of this video, IMHO, but nonetheless, it’s neat to skim through and see how an experienced developer sets up a new Mac from scratch for Ruby and JavaScript development work. 

Justin Searls   

[Speeding Up Rails with Memoization](https://www.honeybadger.io/blog/ruby-rails-memoization/) — Memoization is the idea of saving/caching a method’s return value so it can be more rapidly returned in future (rather than recalculating it from scratch). This is _really_ an introduction to memoization in Ruby but touches on some Rails use cases at the end. 

Jonathan Miles   

[A Quick Comparison of Approaches to Multitenancy in Webapps](https://blog.arkency.com/comparison-of-approaches-to-multitenancy-in-rails-apps/) — ‘Multitenancy’ is simply the idea of having a system support numerous end-users, such as a webapp that has numerous users. There are a few ways to deal with this in Rails whether at the row level (e.g. a `user_id` column on a model), schema-level (e.g. namespacing or per-customer tables), or database level (e.g. a different database for every user). 

Tomasz Wróbel   

[Catch a Batch: Making Mayhem 5 Times More Responsive](https://evilmartians.com/chronicles/catch-a-batch-making-mayhem-5-times-more-responsive) — Mayhem is a community gaming platform that includes real-time scoreboards, chat, and more. It uses Ruby and GraphQL, so performance profiling had to be invented by Martians. 

Martian Chronicles  

🛠 Code and Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/lyvyefrilhkro8ncsrgo.jpg)](https://github.com/ConradIrwin/pry-rescue)   

[pry-rescue: Start a Pry Session Whenever Something Goes Wrong](https://github.com/ConradIrwin/pry-rescue) — If you use the turbo charged Ruby shell [Pry](http://pry.github.io/), consider adding this to your arsenal. You run your script with `rescue` instead of `ruby` and you end up in Pry when an exception is raised. An older project, but just recently got a tiny update to stop warnings on Ruby 2.6+. 

Conrad Irwin   

[Jekyll 4.1.0 Released](https://jekyllrb.com/news/2020/05/27/jekyll-4-1-0-released/) — The popular static site generator adds excerpts for pages and updates to some common filters. 

Ashwin Maroli   

[Dynamoid 3.5: A Ruby ORM for Amazon's DynamoDB](https://github.com/Dynamoid/dynamoid) — Get an ActiveRecord-esque for DynamoDB which is kinda interesting given that [DynamoDB](https://aws.amazon.com/dynamodb/) is famously a NoSQL database. 

Dynamoid   

[On Heroku? Now You Can Autoscale Sidekiq, Resque, DJ, and More](https://railsautoscale.com/workers) 

Rails Autoscale sponsor   

[webmention-client-ruby: A Ruby Gem for Sending Webmention Notifications](https://github.com/indieweb/webmention-client-ruby) — Webmention is a “web standard for mentions and conversations across the web” so you can federate comments, likes, and other social media interactions without having to rely on a specific platform. 

IndieWeb   

[PgHero 2.5: A Performance Dashboard for Postgres](https://github.com/ankane/pghero) — Built in Ruby, of course :-) 

Andrew Kane   

[Rambulance: Dynamically Render Error Pages for Rails Apps](https://github.com/yuki24/rambulance) — Now supports Ruby 2.7. 

Yuki Nishijima         

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
