The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Yesterday
Pick a standard and move on
Don’t have standards and processes for your codebase and your team? You’re wasting so much cognitive energy! Let me try to convince you to pick one convention - any convention! - and move on to your core work.
Speeding Up Rails Assets Precompilation
There has been a lot of conversations on social media about the “NoBuild ” approach: using native browser features and plain CSS+JavaScript to avoid a precompilation step for our assets. [more inside]
Micro benchmarking value objects in Ruby: Data.define vs Struct vs OpenStruct
I did a series of benchmarks between Data class, Struct, and OpenStruct testing, creating new objects and accessing attributes. The tests consider keyword arguments and not positional arguments. [more inside]
I just released Kamal Handbook
The time has come and I released my new book Kamal Handbook: The missing manual. Kamal is an imperative deployment tool by 37signals and will be a Rails 8 default. [more inside]
OnStrum::Healthcheck - simple configurable application healthcheck ❤️ rack middleware
OnStrum::Healthcheck allows you to embed healthcheck endpoints into your rack based application to perform healthcheck probes. Make your application compatible with Docker/Kubernetes healthchecks in a seconds: https://github.com/on-strum/ruby-on-strum-healthcheck
Brute-forcing 2FA codes with Ruby
Ruby is a popular choice of scripting language in the infosec world because it makes it possible to write quick scripts to automate something. In this post, I explain how I used a little Ruby to brute-force 2FA codes: [more inside]
Secure code review checklist
Checklists are really useful to ensure you don’t forget important things, so why not create one for the security aspect your code review process? Here are my recommended checks: [more inside]
Gosu Game Jam 6 starts in 3 days!
The Gosu Game Library Discord community is hosting its 6th game jam starting on March 29. Details on itch.io
Customize your Gemfile for development and productivity
Stuck because your pals aren’t into adding a gem to your workflow? No worries! Check out this article for tips on making your development smoother without their nod. Happy coding with Ruby! [more inside]
An interactive intro to ruby debugger, in the debugger
I think the best way to learn is by doing, so I made an introduction to ruby debug gem where the instructions are in the code that you are moving through with the debugger. You get to use the debugger as you are reading about it. Turtles all the way down: An interactive intro to ruby debugger, in the debugger
HOTWire: Considering Morphing or Turbo Frames
With the new morphing features in Turbo 8, you now need to decide on when to use Turbo streams or Turbo frames instead of full page refreshing. Thankfully, all three techniques work together. https://onrails.blog/2024/03/26/hotwire-considering-morphing-or-turbo-frames/
Better Know Block Arguments
The third article in the “Argument Trilogy” – “Better Know Block Arguments” is available at https://noelrappin.com/blog/2024/03/better-know-block-arguments/
Rollup vs Esbuild for Rails
Despite ESBuild often being used as a default in new Rails apps, I was surprise to find very little experiments about Rollup. [more inside]
How to enable reusability for ActiveRecord::Base::normalizes
This article reviews the new normalizes
feature in Ruby on Rails 7.1 and shows how to increase reusability by creating normalizer modules. I also opened a feature request to add support for ActiveModel, since ActiveRecord::Normalization
only supports ActiveRecord, obviously. Please show your support.
Event Sourcing with Rails from scratch
A tutorial of how to implements event sourcing in Rails application https://www.smily.com/engineering/event-sourcing-with-rails-from-scratch
From Sidekiq to Solid Queue with Scheduling
I wrote a short post where I share how I migrated Visualizer from Sidekiq to Solid Queue now that the latter supports scheduling. 🥳 [more inside]
Ruby regex guide
A beginner friendly guide about Ruby regexes. Even if nowadays, ChatGPT tend to be not-too-bad in this field :) [more inside]
Good Database Migration Practices for Your Ruby on Rails App using Strong Migrations
Let’s explore Strong Migrations, a gem that can help you maintain good practices with your database migrations in Ruby on Rails: https://blog.appsignal.com/2024/03/20/good-database-migration-practices-for-your-ruby-on-rails-app-using-strong-migrations.html
New version of actual_db_schema
A new version of actual_db_schema is released. It adds Ruby 3.3 compatibility. Enjoy the gem and improve your productivity!
History of the endless method syntax
I explored in my article the history of how we got the endless method syntax. There were multiple proposals and a lot of different syntaxes proposed.
Stimulus Tutorial: Moving & Animating Todos
Drag and drop functions are a fun interaction, but they may not be the best interface in every situation. Buttons are a great affordance, and we can hook them up into our existing drag and drop code without any issue. Then we’ll look into animating the movement on the page so that it still feels interactive. https://onrails.blog/2024/03/18/stimulus-moving-and-animating-todos/
Generate and share rails commands – new app, scaffold, model
“Rails Command Generator” let’s you interactively build the rails commands for the follwoing [more inside]