makandra offers an 8 month paid trainee program 🇩🇪 for junior developers that are looking to start a professional career in...
When Ruby objects are inspected in any modern IRB, some objects (like ActiveRecord instances) are rendered with neat colors and...
Capistrano 3 has a doctor task that will print information about Environment: Ruby, Rubygems and Bundler versions List of Capistrano...
YJIT is Ruby's default just-in-time compiler. It is considered production-ready since Ruby 3.2 (source).
Slow test suites are a major pain point in projects, often due to RSpec and FactoryBot. Although minitest and fixtures...
Newer Rails projects come with a gem that allows you to access .method(:foo).source. Added a corresponding section to...
While the main goal always is to prevent long-running queries in the first place, automatic timeouts can serve as...
I recently stumbled upon the Rails feature composed_of. One of our applications dealt with a lot of addresses and...
Rails' default logger prefixes each log entry with timestamp and tags (like request ID). For multi-line entries, only the...
Recently I needed to benchmark an Active Record query for performance measurements. I wrote a small script that runs each...
It's possible to implement simple custom RuboCop cops with very little code. They work exactly the same like existing...
Sometimes we have to write code that behaves differently based on the version of a specific gem or the Ruby...
I recently stumbled over a quirk in the way Ruby handles local variables that I find somewhat dangerous. Consider:
I was recently asked to optimize the response time of a notoriously slow JSON API endpoint that was backed by...
While most Rails Apps are tied to at least one external REST API, machine-to-machine communication via GraphQL is...
When Rails releases a new version of their gems, they also release a number of npm packages like @rails/activestorage or...
This card shows an uncommon way to retrieve a file using selenium where JavaScript is used to return a binary...
Some rubygems come in platform-specific versions (i.e. "x86_64-linux") in addition to the usual "ruby" platform. This is...
Running gem update --system will install the latest version of RubyGems. However the latest version might not be compatible with...
You might know a few examples, where you configure some library via a block. One example is the Rails configuration...
This card is a short summary on different ways of assigning multiple attributes to an instance of a class.
When you are using PgBouncer with e.g. a Ruby on Rails application which uses different application_names for the PostgreSQL...
What is makandra cards? We are makandra, a team of 60 web developers, DevOps and UI/UX experts from Augsburg, Germany...
When making requests using the http gem you might want to automatically follow redirects to get the desired response. This...