makandra dev
github.com

I was recently asked to optimize the response time of a notoriously slow JSON API endpoint that was backed by...

makandra dev

While most Rails Apps are tied to at least one external REST API, machine-to-machine communication via GraphQL is...

Using Capistrano, we usually have some array configurations in the config/deploy.rb file, like set :linked_files, %w[config/database.yml], so in...

I used two lab days to read the The framework field guide - Fundamentals, the first of a three part series...

We are using assignable_values for managing enum values in Rails. Nevertheless Rails is adding more support for enum attributes...

makandra dev

Postgres works differently See PostgreSQL: Difference between text and varchar columns for PostgreSQL-specific info MySQL has 4 different column...

Debugging performance issues in your Rails app can be a tough challenge. To get more detailed insights consider using the...

Developing or debugging SAML functionality can be a hassle, especially when you need to go back and forth with someone...

makandra dev

10.0.0 2024-03-07 Compatible changes console command: You can now globally disable the IRB multiline feature by setting irb...

I recently built a screen with a very high and wide table in the center. This posed some challenges:

Today I stumbled across a pretty harmless-looking query in our application which turned out to be pretty harmful and...

makandra dev

Usually our code lives on GitLab, therefore our documentation for CI testing is extensive in this environment. If you are...

Sometimes you have a file that is related to a project, while not actually being part of it. You'd...

makandra dev
whattrainisitnow.com

The linked table shows the support lifecycle for Firefox Extended Support Releases (ESR) which we sometimes need to support for...

A Rails script lives in lib/scripts and is run with bin/rails runner lib/scripts/.... They are a simple tool to perform...

github.com

There are a few tools to combat the dreaded n+1 queries. The bullet gem notifies you of missing eager...

edgeapi.rubyonrails.org

The linked article suggests an interesting way to speed up tests of Rails + Postgres apps: PostgreSQL allows the creation of...

In Capistrano 3, your Capfile requires 'capistrano/rails/migrations', which brings two Capistrano tasks: deploy:migrate and deploy:migrating. The former checks...

#pluck is commonly used as a performant way to retain single database values from an ActiveRecord::Relation Book.pluck(:title, :price...

If you ever need to restore exact records from one database to another, Marshal might come in handy. Marshal.dump is...

TLDR Using .includes or .eager_load with 1-n associations is dangerous. Always use .preload instead. Consider the following ActiveRecord...

Given you have an array column like this: create_table "users", force: :cascade do |t| t.integer "movie_ids", default: [], array...

We regularly have tasks that need to be performed around a deploy. Be it to notify operations about changed application...

You don't want sensitive user data in your logs. Background Rails per default filters sensitive data like...