When you start learning Ruby, you often hear that everything is - or evaluates as - an object. Here's an introduction for developers who want to get the gist of objects and classes in Ruby.| Rémi Mercier - Software Developer
A while ago, I needed to add some view-related instance methods to a model. Decorators are my go-to pattern to handle this kind of logic. So, I built a minimal decorator from scratch, added a bunch of extra behaviors, only to end up abstracting all of that away. Follow along!| Rémi Mercier - Software Developer
One of RSpec's strengths is the legibility of its behavior-based DSL. The other side of this coin is that the proliferation of small example blocks introduces a performance overhead.| Rémi Mercier - Software Developer
The blog of Rémi Mercier, Ruby on Rails Developer.| Rémi Mercier - Software Developer
When working on features, I strive to preserve my flow, which means, that after a few hours, I'll have a bunch of untracked files waiting for me in git. I use `git add --patch` to effectively bundling my work into separate commits.| Rémi Mercier - Software Developer
Today, I want to share a different type of post. Nothing polished. Just me goofing around with PostgreSQL's full-text search capabilities.| Rémi Mercier
Interacting with third-party APIs is common practice in applications. This is where the structural design pattern called facade comes into play.| Rémi Mercier
Where I share a badly designed piece of code, think about what process I can use to reveal its flaws, and how to make it better.| Rémi Mercier
Add extra documentation to your columns attributes with this one simple trick.| Rémi Mercier - Ruby on Rails Developer
Delegated types are a modelization pattern introduced in Rails in 2020. And developers have mostly been scratching their head for a few years trying to use them in their applications. Today, I want to share a real-world use case. I'll walk you through my pre-existing domain architecture, my initial requirements, my mistakes, how I eventually used delegated types, what I learned and my open questions.| Rémi Mercier
Why would you spend your cognitive capacity on useless choices?| Rémi Mercier
For years, code would fall into two categories: easy (good!) and hard (bad!). Recently, I've realized that not every piece of _hard_ code is created equal. Complex code often encompasses two kinds of complexity: domain complexity and applicative complexity. And I often failed to identify which is which.| Rémi Mercier