Rails offers several methods to manage three types of different cookies along with a session storage for cookies. These...
Git log offers useful options for filtering. This card provides a short overview. By message Only commits that include a...
Sometimes you'll find yourself with a set of tasks that require similar code for different models. For example, if...
Suppose you want to implement a publish/subscribe pattern in your Frontend application to react to data changes and events. First...
When you write your next CarrierWave uploader, consider processing your images with libvips instead of ImageMagick. Reasons for libvips
When RubyMine reports Rubocop returning "exit code -1", upgrading Rubocop can be the fix: gem install rubocop "The logs" can...
We have a long-standing checklist for merge requests. However, it hardly matches the intricate requirements for design. This checklist...
Splitting up commits makes the process of reviewing often easier, since you can create several merge requests or review every...
If you have a fully functional CI pipeline but no CD, you might find yourself frequently waiting for CI (with...
Code splitting is a feature of esbuild that can keep huge libraries out of the main bundle. How code splitting...
Context and further resources Even though you can get 90% of debugging done with up to 5 basic byebug commands...
Looking at the source code of the validates_numericality_of validator, it becomes clear that it converts the attribute in...
When you allow file uploads in your app, a user might upload content that hurts other users. Our primary concern...
Every Rails response has a default ETag header. In theory this would enable caching for multiple requests to the same...
tl;dr asdf allows you to manage multiple runtime versions with a single CLI tool and is backwards compatible by...
In Ruby on Rails ActiveRecord::Relation#merge overwrites existing conditions on the same column. This may cause the relation to...
I found the linked article very helpful to refresh my understanding of database indexes. As a small bonus, it includes...
Haml 6 was a major rewrite with performance in mind. To achieve a performance improvement of 1.7x, some design...
Usually you add errors to :base in ActiveRecord, in case no appropriate attribute could be used to add the error...
Maintaining larger projects makes it more difficult to balance refactoring and upgrade tasks according to its actual value. Consider to...
Let's say we have posts with an attribute title that is mandatory. Our example feature request is to tag...
This is a checklist I use to work on issues. For this purpose I extracted several cards related to the...
Rails partials have a lot of "hidden" features and this card describes some non-obvious usages of Rails Partials.
In the past we validate and set default values for boolean attributes in Rails and not the database itself.