For Sidekiq to be able to retry your jobs it has to be able to catch errors that occur while...
Cross-Site Request Forgery (CSRF) is an attack pattern for websites. A CSRF attack is usually relevant in a...
A JavaScript error in an E2E test with Selenium will not cause your test to fail. This may cause you...
Geordi provides a pretty neat way to generate beautiful commit messages according to your stories in Linear: geordi commit
Geordi's cucumber command has a --rerun option that reruns failing tests the given number of times. Usage: geordi cucumber...
...HTML's accepts a single file. You can allow multiple files via . But sometimes, selecting multiple files is not enough...
Let's say you have a gem which has the following module: module SuperClient def self.foo 'Foo' end
We want to keep a changelog for all gems we maintain. There are some good practices for writing a changelog...
Most forms have a single submit button that will save the record when pressed. Sometimes a form needs additional submit...
Migrating data from a legacy into a new system can be a surprisingly large undertaking. We have done this a...
In general, the tracker should always be the definitive source of truth of what needs to be done as part...
In a project team for a bigger project people have several roles: Developer: at makandra Project lead: at makandra
At makandra, we've built a few gems over the years. Some of these are quite popular: spreewald (> 1M downloads...
For webpages to load fast it's recommended to optimize images. Ideally an image's file size should be as...
Background information about session storage in Rails Rails has a default mechanism to store the session in the CookieStore. This...
If you want to fill in textareas with multiple lines of text (containing line breaks / new lines) you can use...
Whenever is a Ruby gem that provides a nicer syntax for writing and deploying cron jobs. Leading zeros are important...
Authentication is a special part of web applications. On the one hand, it usually is a crucial security mechanism restrict...
Browsers' printing methods usually don't print background colors. In most cases this is the desired behavior, because you don...
A matcher is a function that returns an object with a compare key. Usually it is registered with beforeEach...
TL;DR Append your locale keys with _html to have them marked as html_safe and translate them with = t...
For outputting a given String in HTML, you mostly want to replace line breaks with or tags.
CarrierWave comes with some RSpec matchers which will make testing more comfortable. Let's say you have an Uploader like...
When you need test images, instead of using services like lorempixel or placehold.it you may generate test images yourself.