I recently stumbled upon the Rails feature composed_of. One of our applications dealt with a lot of addresses and...

You can improve your LIKE / ILIKE search queries in PostgreSQL by adding a GIN index with an operate class ("opclass...

Recently I needed to benchmark an Active Record query for performance measurements. I wrote a small script that runs each...

testing-library are widely used testing utilities libraries for javascript dependent frontend testing. The main utilities provided are query methods...

You are given two CSS selectors that you do not control. How can you build a new selector that matches...

Reacting on a class getting added can be done with a mutation observer. Example: const items = document.querySelectorAll('.item') const expectedClass...

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

mise.jdx.dev

Add apt source: apt update -y && apt install -y gpg sudo wget curl sudo install -dm 755 /etc/apt/keyrings

chrisboakes.com

Debouncing a method call delays its execution until after a specified time has passed. If it's called again before...

This card is a short summary on different ways of assigning multiple attributes to an instance of a class.

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

ActiveModel classes have a class method .human_attribute_name. This returns a human-readable form of the attribute: Person.human_attribute...

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

When you are using PgBouncer with e.g. a Ruby on Rails application which uses different application_names for the PostgreSQL...

tl;dr Do not use the option optional on association declarations with a symbol, lambda or proc. Explanation Association declarations...

As we're switching from PT to Linear, I've updated the existing bash script to work for commits that...

makandra Operations
manned.org

If you want to use rsync to transfer files that don't belong to your user to another system you...

Your commit messages should include the ID of the issue your code belongs to. Our preferred syntax prefixes the issue...

This card describes four variants, that add a more intuitive workflow when working with nested attributes in Rails + Unpoly:

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

Why do we migrate? Due to a change in licensing, we cannot provide Elasticsearch versions >= 8.0. Version 7.17.x will...

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