Discover the latest articles, tutorials, and insights from the Ruby and Rails ecosystem.
602 articlesThe one where Hanami starts a funding campaign, where Ruby committers discuss renaming Namespace and where Zeitwerk reached 500 million downloads
In this post, we’ll explore how redirects work in Rails: what they are, how to redirect manually, and how the redirect_to method simplifies things. We...
In this post, we'll learn how Rails' render method works and how to use it effectively. From rendering templates, partials, and inline content to JSON...
The one where Active Job Continuations by Donal McBreen landed in Rails, RailsConf 2025 gets DHH for a fireside chat, and Nate Berkopec highlighted Ru...
Last week, I used AI to finally learn the basics of QuickBooks and handle my company’s bookkeeping. AI didn’t just help me finish a chore, it taught m...
Announcing a new newsletter where I write about topics beyond Ruby on Rails: running a software services business, freelancing, positioning and market...
The one where Jorge Manrubia teased about a new code editor in Rails, where EuRuKo announced the first speakers and where Sam Ruby launched their book...
Then one where namespaces on read and ZJIT were merged into Ruby and where Obie Fernandez launched a new framework for AI workflows in Ruby.
If your Rails app deals with large files, let a reverse proxy like Nginx or Thruster serve them. In this post, we'll learn how X-Accel-Redirect (or X-...
The one where EuRuKo has announced that their tickets are on sale, Rails World tickets will go on sale on the 13th of May, and Joel Drapper invites us...
The one where you can read about why Marc Köhlbrugge chose Ruby, where Adam Fortuna shares how they returned to Rails, and where Ruby Central discuss...
In the world of Rails development, integrating large language models (LLMs) like OpenAI's GPT has become increasingly common. One challenge…
The one where YCombinator showcases Ruby code in their Vibe Coding video, mruby 3.4.0 released, Hotwire Native 1.2 is announced, and where Pragmatic P...
Keeping a reliable history of changes is essential for our users. They need to know when a record was updated, who made the change, and why…
The one with several Ruby releases: 3.4.3, 3.5.0-preview1, and JRuby 10, where Marco Roth announces herb tools and Matz suggests that Ruby 4.0 may be ...
In this post, we'll learn how to use a SQL subquery in a Rails app to eliminate N+1 queries and improve performance. We'll profile a real-world exampl...
The one where Ruby 3.3.8 is released, where Charles Nutter shares about what's new in JRuby 10 and where we find out that Ex-CEO and Buildkite’s cofou...
The one where Marco Roth launched RubyEvents website and mobile app and where the Ruby and AI scene is heating up with more gems
As your application grows, so do your database tables. If you keep fetching all columns, those extra fields, especially large text or JSON blobs can q...
This post shows how you can get a better understanding of your Ruby on Rails application performance with the Rails Debugbar, a profiling tool inspire...
The one where Ruby 3.1.7 and 3.2.8 are released, Joe Masilotti published Bridge components for Hotwire Native, and two new projects about building or ...
The one where TruffleRuby 24.2 is released, JRuby 10 is getting close, a Rails MCP server is introduced, and where Stan Lo shows a Ruby MCP server pow...
In 2012, GitHub was compromised by Mass Assignment vulnerability. A GitHub user used mass assignment that gave him administrator privileges to none ot...
The one where Sidekiq 8 is launched, where Kasper Timm Hansen is announcing a new workshop about Action View and where Adam McCrea launches PaaS Prici...
Friendly.rb launches Early Bird tickets, Rails World opens the CFP, and RailsCamp offers scholarships.
The one where Andy Croll launches Ruby-themed t-shirts, Matt Swanson shares their GOAT pattern for Hotwire apps and you can learn about Array#bsearch ...
How many times have you heard or read statements like these in tech discussions? "Everything needs to be a single-page app these days…
The one where Stephen Margheim launched a new course High Leverage Rails and Andrew Culver launched Honyaku to translate Rails apps automatically
The one with Ruby 3.4.2 release and a new JRuby release, while Aaron Patterson article was on front page of Hacker News
When you first discover Ruby on Rails, some things might strike you right away: namely the large number of enumerable methods and the blocks…
OK, maybe "love" is a bit strong. But the Aha! engineering team has a shocking confession: We embrace bugs in our software. Our CTO, Dr…
Organizations have many different ways to approach how teammates write code. You have individual silos, pair programming, team-based work…
As a company whose product is built on top of Ruby on Rails, conducting a major version upgrade of the underlying framework is just about…
On the Aha! team, The Responsive Method (TRM) guides our interactions with customers and one another. Responding to requests quickly and…
I heard a ring, and my heart rate spiked to 132. It was Tom Bailey, a colleague on the Product Success team. I prepared myself for a…
Feature delivery can be impacted by many factors. Some are readily visible, but others are more nuanced — or buried in mountains of data…
Our product team is busy adding many great new features to Aha! Whiteboards and Aha! Knowledge — including wireframes, voting, and…
Do we need a monorepo? When I first joined Aha!, I was surprised by how well-structured the engineering onboarding program was. I spent…
Our team at Aha! loves using Aha! software. It's not only a great way to build our own lovable product, but it also helps us to find rough…
Normally when you encounter a bug with Ruby, or any other interpreted language for that matter, using the language's provided debugging…
In David Bayles and Ted Orland's book, Art & Fear, there's a captivating story that has always stuck with me. This is a story that…
Ruby's Enumerable methods help you make powerful code simple — by filtering, transforming, and processing data like the best engineers do…
What is a race condition? I searched for a good definition of a race condition and this is the best I found: A race condition is…
Take your command-line utilities to the next level with these Ruby gems Ruby has always been a great general-purpose scripting language and…
As you stare into an empty text field, the blinking cursor invites you to engage in a crucial part of being a professional software engineer…
An odd coincidence On March 20th, ChatGPT users reported seeing conversations that were not their own. Just a few weeks earlier I had solved…
Many months ago, our team had to have a hard conversation about Cypress. Cypress was the new kid in our CI pipeline, a browser integration…
Let us start by saying that CSS is hard. It seems that no matter how skilled you get, you will still run into situations that completely…
I have worked in many different environments throughout my career. I have worked in the same building as my teammates and even for a company…
In a lot of newer projects, we use our GraphQL API. This is the same API you use when you're building Aha! Develop extensions. GraphQL has…