Modernizing Einhorn: A Gem for Managing Forked Processes— Somehow I’d never come across Einhorn till now, but it started life as a Stripe-built gem for managing multiple copies of long-lived processes and now Sidekiq’s Mike Perham has inherited it (pretty much the biggest seal of approval a Ruby project could get) and taken it to a 1.0 release. Mike Perham |
Quick Bits: 🏆 TopRubyCompanies is a site that presents a table of well known companies (44 so far) known to be heavy Ruby users. While Zendesk (mentioned above) may be the biggest acquisition so far, it's only at #5 on this table. It looks like direct support for common table expressions (CTEs) is coming to Active Record soon based on fresh activity on this PR from 2019. Over ▶️ 60 talks from RailsConf 2022 are now available to watch on YouTube. We're still watching them and will feature some of our favorites next week.
|
📖 Articles, Stories & Videos |
'Booleans Don't Exist in Ruby'— Sure, true and false exist and work well as high level representations, but under the hood, a lot is going on. Mike digs into a variety of areas to learn more including object identifiers, Ruby’s C underpinnings, and what third party libraries do. Mike Burns |
Value Object Semantics in Ruby— A short article covering how equality works for value objects along with what methods you need to be sure to implement to get the right behavior. Joël Quenneville (thoughtbot) |
A Rubyist's Guide to Vite— Vite is the (another) latest shiny toy in JavaScript and frontend build tooling (but, to be fair, it’s pretty amazing). It uses ES module imports, it’s fast and setting it up with Rails is pretty easy thanks to some gems including vite_ruby/rails.(Note: This article dates from 2021, but Vite seems to be going from strength to strength lately, and Vite 3.0 just came out.) Máximo Mussini |
▶ Turbo Frames vs. Turbo Streams— When he was first introduced to Turbo Frames and Turbo Streams, Cezar couldn’t quite figure out the differences (though there are many). Now he has, and deftly explains in this video when to pick one over the other. (Eight minutes.) Cezar Halmagean |
▶ Xavier Noria Talks About His and Rails' History— Xavier is the creator of Zeitwerk and a long time Rails core team member, so he has tales to tell. So here he does, with reflections on Rails’ history and how he got onto the core team. Remote Ruby Podcast podcast |
SearchCop: Search Engine-Like Query Support for Active Record— Adds support for an easy to use search interface on top of AR models. It’s smarter than you might imagine and can handle using operators to query against columns – it’s not just for text. Can’t help but think I’d like to see some of these ideas become standard AR features! Benjamin Vetter |
Redhot: REDux Pattern for HOTwire— A port of the Redux framework (popularly used with React) to ActiveRecord, enabling the tracking of actions and state for your models so you can easily undo and time travel while debugging. Ivo Herweijer |
Casting 1.0: Delegate Methods in Ruby and Preserve self — “Casting gives you real delegation that flattens your object structure compared to libraries like Delegate or Forwardable. With casting, you can implement your own decorators that will be so much simpler than using wrappers.” Jim Gay |
Find Ruby Jobs Through Hired— Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.
Hired |
|
|