When you write your next CarrierWave uploader, consider processing your images with libvips instead of ImageMagick. Reasons for libvips

Using querySelector or querySelectorAll in JavaScript, you can easily find descendants of a node that match a given selector.

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

Maintaining larger projects makes it more difficult to balance refactoring and upgrade tasks according to its actual value. Consider to...

Since Rails 7 you are able to encrypt database information with Active Record. Using Active Record Encryption will store an...

makandra dev

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

When you build a JSON API you need to come up with a style to represent attributes, pagination, errors or...

When you need information about a gem (like version(s) or install path(s)), you can use the gem binary...

tl;dr: Use the URLSearchParams API to make your live easier if you want to get or manipulate query parameters...

Elasticsearch defaults to go into readonly mode when you run low on disk space (< 95%). You might then see an...

This RailsCast demonstrated a very convenient method to activate VCR for a spec by simply tagging it with :vcr.

Event delegation is a pattern where a container element has a single event listener that handles events for all descendants...

When using RestClient to make an HTTP request, it will raise an exception when receiving a non-successful response.

makandra dev

When your application is open for public sign up and sends out transactional e-mails to a large number of...

Browsers blocks abusable JavaScript API calls until the user has interacted with the document. Examples would be opening new tab...

makandra dev

In Ruby (almost) everything is an Object. While this enables a lot of powerful features, this concept might be confusing...

Sometimes you want to have a time in a given timezone independent from you Rails timezone settings / system timezone. I...

stackoverflow.blog

A rough guide how to implement a REST API. The discussion here includes some interesting points as well: Timestamps: ISO8601...

Insomnia is a GUI tool to help you communicating with an API. There are also other tools to do this...

github.com

Scroll and touch event listeners tend to be computationally expensive as they are triggered very often. Every time the event...

Sometimes you want to find the inverse of an ActiveRecord scope. Depending on what you want to achieve, this is...

news.ycombinator.com

This is an extract from the linked article. It shows an approach on how to implement encrypted passwords with the...

When you use Sentry to monitor exceptions, an important feature is Sentry's error grouping mechanism. It will aggregate similar...

We use Sentry to be informed about different kinds of issues. One of the key features is that you are...