When you have many changes, and you want to spread them across different commits, here is a way to stage...

github.com

The linked GitHub repository is a bit like our "dev" cards deck, but groomed from a single person (Josh Branchaud...

millarian.com

In Active Record you can use named bindings in where-conditions. This helps you to make your code more readable...

With puma you can have concurrent requests. There are two concepts on how Puma can handle two incoming requests: Workers...

Test-Driven Development (TDD) in its most dogmatic form (red-green-refactor in micro-iterations) can be tedious. It does...

Simplecov is a code coverage tool. This helps you to find out which parts of your application are not tested...

A recent patch level Ruby update caused troubles to some of us as applications started to complain about incompatible gem...

Turns out, Cucumber::MultilineArgument::DataTable#diff! caches some stuff. Code of the following form will not work as intended:

Embedding videos on a website is very easy, add a tag to your source code and it just works...

By default, Devise redirects to a sign-in form when accessing a route that requires authentication. If for some reason...

makandra dev

Code comments allow for adding human readable text right next to the code: notes for other developers, and for your...

In applications without a sign-up, user accounts are usually created by an admin. This imposes two challenges:

Sometimes it's nice to have some coloring in your logs for better readability. You can output your logs via...

makandra dev

If you need to test some HTML, e.g. an embed code, you can use RubyMine's "scratch files":

makandra dev

Or: How to avoid and refactor spaghetti code Please note that I tried to keep the examples small. The effects...

PostgreSQL and ActiveRecord have a good support for storing dynamic attributes (hashes) in columns of type JSONB. But sometimes you...

medium.com

Root Insurance runs their application as a monolithic Rails application – but they've modularized it inside its repository. Here is...

This checklist should help you to check edge cases that are not part of the default Carrierwave configuration.

Debugging image color profiles is hard. You can't trust your eyes in this matter, as the image rendering depends...

pganalyze.com

It's every developer's nightmare: SQL queries that get large and unwieldy. This can happen fairly quickly with the...

eregon.me

Bundler 2 introduced various incompatibilites und confusing behavior. To add to the confusion, Bundler's behavior changed after the release...

Im using the terminator terminal with the keyboard shortcut Control+Shift+E for splitting the terminal. I got used to...

For newer Ubuntu versions we currently need to install the patch level version 1.8.7-p375, otherwise the dev dependencies from...

makandra dev

Fixed #68: The "cucumber" command now fails early when @solo features fail. Added: The "setup" command now prints the db...