---
title: "The Rails community speaks"
publication: "Ruby Weekly"
issue: 605
published_at: "2022-05-26"
canonical_url: "https://rubyweekly.com/issues/605"
---

Plus a way to put Ruby in your Crystal, mocking SMTP servers, and building desktop apps in Ruby. |        

[🇺🇦](https://war.ukraine.ua/) #​605 — May 26, 2022 

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

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/pfvruhis0uxr36nxq9f4.jpg)](https://rails-hosting.com/2022/)  

[2022 Ruby on Rails Community Survey Results](https://rails-hosting.com/2022/) — Over the past 13 years, Planet Argon has run several surveys like this. We encouraged you to take part, as usual, and the answers from 2660 folks (skewing heavily to long-time Rails developers) are now boiled down into the results: 

- [Devise](https://github.com/heartcombo/devise) is both the most loved and most frustrating gem!
- Ruby 2.7 remains the most popular Ruby version in use.
- GitHub Actions has become the most popular CI system on its first showing in the survey, pushing Circle CI down to #2.
- `rbenv` remains the most popular Ruby version manager but the use of `asdf` is rapidly growing as RVM dips.
- Most Rails apps are _not_ being updated to the latest version quickly.
- Remote working dominates and most dev teams have continued to get larger. 

Planet Argon   [![\](https://copm.s3.amazonaws.com/53e91789.png)](https://us02web.zoom.us/webinar/register/2716533459929/WN_cjrUDKVuSqO8GckfiCWkbA) 

[Webinar: How to Create the Right Indexes for Your Rails Apps](https://us02web.zoom.us/webinar/register/2716533459929/WN_cjrUDKVuSqO8GckfiCWkbA) — We provide a deep dive into how Postgres deterministically chooses which index to use for a specific query and walk through a methodology for analyzing queries & creating and optimizing indexes. [Register now](https://us02web.zoom.us/webinar/register/2716533459929/WN_cjrUDKVuSqO8GckfiCWkbA) and join our webinar on June 16th, 9:30am PDT. 

pganalyze sponsor   

[Mocktail: A Test Double Library with a Terse API for Creating Mocks](https://github.com/testdouble/mocktail) — Mocktail has a simple API and offers detailed errors, argument matchers, and thread safety and Justin Searls did [a five-minute lightning talk at RailsConf 2022](https://blog.testdouble.com/talks/2022-05-18-please-mock-me) showing it off. The [README](https://github.com/testdouble/mocktail#readme) is particularly thorough. 

Test Double   

**Quick Bits:** 

- ⚠️ Reader Ilya Demukh has written in to note that [the most popular Ruby extension for VS Code](https://github.com/rubyide/vscode-ruby) hasn't seen a release in over a year and the author is [actively looking for maintainers to help out](https://github.com/rubyide/vscode-ruby#visual-studio-code-ruby-extensions).
- [Rails has three new core members](https://rubyonrails.org/2022/5/23/welcome-to-core-and-committers): Ryuta Kamizono (the 4th most prolific committer to Rails overall), Jean Boussier, and John Hawthorn. Yasuo Honda and Jonathan Hefner also join the Committers team.
- IDE developer _JetBrains_ has opened the [early access program for RubyMine 2022.2.](https://blog.jetbrains.com/ruby/2022/05/rubymine-2022-2-eap-is-open/) Improvements have been made to the debugger for Ruby 3, RBS support continues to improve, and more.
- The [first beta of Postgres 15](https://www.postgresql.org/about/news/postgresql-15-beta-1-released-2453/) is out – I've written a quick walkthrough of [trying it out quickly with Docker.](https://dev.to/peterc/how-to-quickly-play-with-postgresql-15-beta-using-docker-17hh) If you're a Postgres user, check out [our _Postgres Weekly_](https://postgresweekly.com/) – it's an exciting time for Postgres and we share a lot there.     

Jobs  

[🔴💎 Oportunidad Sr RoR Engineer / Team Lead ✨🚀 (Remote in Spain)](https://www.linkedin.com/jobs/view/2988294330) — Do you love Ruby, Rails & GraphQL? Do you and enjoy working as a part of a product team? Working across platforms Web&Mobile? Apply! 
Alkimii   

[Senior Ruby on Rails Developer (Remote-Friendly)](https://www.monterail.com/careers/remote-senior-ruby-on-rails-developer) — Software Development Agency in Wrocław, Poland working with experts from around the globe to create meaningful software. 
Monterail   

[Ruby DevOps Engineer (Paris or Remote)](https://bit.ly/3D2gDDq) — You enjoy setting up systems for scalability and reliability, automating deployment and ops tasks? Apply now. 
RingCentral Engage Digital   

[Find Ruby Jobs Through Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-rubyweekly%29&utm_content=find-your-next-job) — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers. 
Hired    

📕 Articles & Tutorials 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/fleauz4cwhgxbjol3imw.jpg)](https://gorails.com/episodes/command-palette-ruby-on-rails)  

▶[How to Add a Command Palette to a Rails App](https://gorails.com/episodes/command-palette-ruby-on-rails) — Have you ever pressed Cmd+K (or Ctrl+K) on GitHub and seen a box pop up that you can type commands into? It’s an interesting ‘power user’ feature and you can add a similar thing to your own apps. Chris uses [Ninja Keys](https://github.com/ssleptsov/ninja-keys) here, but [kbar](https://github.com/timc1/kbar) is another to consider. 

Chris Oliver   

[An Introduction to Polymorphism](https://blog.appsignal.com/2022/05/25/an-introduction-to-polymorphism-in-ruby-on-rails.html) — [Polymorphism](https://en.wikipedia.org/wiki/Polymorphism_%28computer_science%29) means slightly different things in different areas of computer science, this post quickly digs into what it means in Ruby and where it can help clean up code in a Rails app. 

Jesse McDermott   

📜 [The Practical Effects of the GVL on Scaling in Ruby](https://www.speedshop.co/2020/05/11/the-ruby-gvl-and-scaling.html) — This is from 2020 and the [Ractors](https://ruby-doc.org/core-3.0.0/Ractor.html) mentioned within are now a Ruby 3 core feature, but this meaty post on concurrency and parallelism came up in conversation recently and I still think it’s useful. There’s always a lock, it’s just a matter of where it’s implemented! 

Nate Berkopec   

[Agile Localization Platform: Develop, Translate, Deploy - Reiterate](https://webtranslateit.com/?utm_source=cooper_ruby_alp) 

WebTranslateit.com sponsor   

[Performance in Context](https://world.hey.com/jorge/performance-in-context-323e60b7) — Benchmarks done in a test (or any non-production) environment may (and likely won’t) match production which could lead you to make the wrong decisions about your code. 

Jorge Manrubia (Hey)   

▶[On Building Desktop Apps in Ruby](https://rubyrogues.com/desktop-apps-in-ruby-ft-andy-ruby-547) — An hour long episode with Andy Maleh, the creator of Glimmer, a Ruby DSL framework for building GUI apps using various GUI frameworks like Tk, GTK and Swing. 

Ruby Rogues podcast   

[Scraping _Buy_: Scripting for a Purchase](https://kevinjmurphy.com/posts/scraping-buy/) — It’s simple and crude but Ruby is a perfect match for this sort of temporary useful scripting and, well, Kevin managed to get the guitar he wanted. 

Kevin Murphy   

▶[Rails Hiring is Still Hot](https://www.therubyonrailspodcast.com/419) 
The Ruby on Rails Podcast podcast  

🛠 Code & Tools  

[Ruby SMTP Mock: Mimic SMTP Server Behaviour for Your Test Environment](https://github.com/mocktools/ruby-smtp-mock) — This project has quite a theatrical logo! It’s test framework agnostic and provides a lot of configuration for you to test various aspects of working with an SMTP server including rejection and error states. 

Vladislav Trotsenko   

[IoMonitor: A Way to Detect Potential Memory Bloat](https://github.com/DmitryTsepelev/io_monitor) — Push this into your Rails app and get more insight into when a lot of I/O (through either Active Record or Net::HTTP for now) is resulting in not a lot of output. 

Dmitry Tsepelev   

[Couchbase Capella DBaaS: Store JSON, Query in Milliseconds](https://www.couchbase.com/products/capella/get-started?utm_source=cooperpress_ruby_weekly&utm_medium=newsletter) — All in one caching, automatic replication and scaling database with SQL. Try it now for free, no credit card required. 

Couchbase sponsor   

[Anyolite: Embedded mruby/Ruby for Crystal](https://github.com/Anyolite/anyolite) — Anyolites allows Ruby to act as a scripting language for Crystal projects. 

Anyolite   

[Steep 1.0: A Static Type Checker for Ruby](https://github.com/soutaro/steep) 
Soutaro Matsumoto   

[Combustion: Simple, Elegant Testing for Rails Engines](https://github.com/pat/combustion) 
Pat Allan         

Curated by Peter Cooper, [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
