To attach files to your records, you will need a new database column representing the filename of the file...

ruby-lang.org

Ruby 3.0 introduced a breaking change in how it treats keyword arguments. There is an excellent blog post on the...

I really love to use the shortcuts CTRL+Alt+ Arrow Left and CTRL+Alt+ Arrow Right to navigate through the...

When you have a hex color code, you can easily convert it into its RGB values using plain Ruby.

We prefer to run our end-to-end tests with headless Chrome. While it's a very stable solution overall...

When your Rails application server raises error, Capybara will fail your test when it clears the session after the last...

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

The ActionDispatch module of Rails gives you the helper method flash to access the flash messages in a response.

github.com

capybara-lockstep can help you with flaky end-to-end tests: This Ruby gem synchronizes Capybara commands with client-side...

json is part of the standard library of Ruby and deals with JSON, obviously. As you know, JSON is the...

labs.bishopfox.com

The linked article shows that there are unclear parts in the JSON specification and that different parsers treat them differently...

By default parallel_tests will spawn as many test processes as you have CPUs. If you have issues with flaky...

CarrierWave comes with a set of default configuration options which make sense in most cases. However, you should review these...

stackoverflow.blog

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

If your project depends on an old version of ImageMagick that you can no longer install in your system, you...

live.julik.nl

The linked article provides a good overview of the various concurrency primitives in Ruby, and what's changing in Ruby...

When you repeat a subpattern with a *, + or {...} operator, you may choose between greedy, lazy and possessive modes. Switching modes...

getbootstrap.com

Recently I made an upgrade from Bootstrap 3 to Bootstrap 4 in a bigger project. Here are some tips how...

Consider the following models and form models: class Parent < ApplicationRecord has_many :children, class_name: 'Child', foreign_key: 'parent_id...

makandra dev

Rails 6 includes a WYSIWYG editor, Action Text. It works out of the box quite well, but chances are that...

I just ran into this deployment error after switching from the asset pipeline to webpack: 01:05 deploy:assets:precompile...

Rails supports alert and notice as default flash types. This allows you to use these keys as options in e.g...