Debugging your integration tests, that run a headless Chrome inside a docker image, is tricky. In many cases you can...

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...

Sidekiq 7 adds a new feature called capsules. Use cases: a chrome queue limited to 1 for e.g. PDF processing...

The change_column method for rails migrations support casting with a custom SQL statement. This allows us to change a...

If you use a newer SSH key generated with the ED25519 algorithm instead of RSA (see Create a new SSH...

makandra dev

This is a checklist I use to work on issues. For this purpose I extracted several cards related to the...

Not all email clients support external images in all situations, e.g. an image within a link. In some cases, a...

Sometimes I ran across a GitHub merge request of a gem where it was not completely obvious in which version...

vertical-align is hard. Have you ever wanted to vertically center an icon with text? This usually means "vertically align...

Sometimes, the rails dev server doesn't terminate properly. This can for example happen when the dev server runs in...

After upgrading to Rails 6.1.7.2 one of our apps printed a wall of warnings while booting: /var/www/app/shared/bundle/ruby/2.6.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:68: warning: already...

Our CI setup frequently sees this error while running yarn install: yarn install v1.22.19 [1/4] Resolving packages... [2/4] Fetching packages...

makandra dev

In a Jasmine spec you want to spy on a function that is imported by the code under test. This...

By default subscript ( ) and superscript ( ) tags are styled with vertical-align: sub, respectively vertical-align: super by most browsers.

You have some SVG files you want to use as icons on your website. How would you embed them?

tl;dr You should decouple migrations from models by embedding models into the migration. To use STI in this scenario...

If you're experiencing that your bundle install command fails with an error message like this, rubygems.org might...

Unpoly's [up-observe], [up-autosubmit] and [up-validate] as well as their programmatic variants up.observe() and up.autosubmit...

makandra dev

tl;dr git checkout is the swiss army of git commands. If you prefer a semantically more meaningful command for...

Ncdu is a disk usage analyzer with an ncurses interface. It is designed to find space hogs on a remote...

makandra dev

tl;dr git checkout is the swiss army of git commands. If you prefer a semantically more meaningful command for...

You have uncommited changes (you can always check by using git status), which you want to discard.

tl;dr In RubyMine you can use find and replace with capture groups (.*?) and backreferences $1 (if you have several...