Code quality can be measured in four levels: (Working code) Reliable code (minimum) Readable code (ok for short-lived code...
tl;dr You can use attribute? as shorthanded version of attribute.present?, except for numeric attributes and associations. Technical Details
In Chrome DevTools you can use getEventListeners(object) to get a list of registered event listeners on the specified object...
We use foreman to start all necessary processes for an application, which are declared in a Procfile. This is very...
Building application assets with esbuild is the new way to do it, and it's great, especially in combination with...
ImageMagick can convert SVGs to raster image formats. Example for PNG: convert input.svg output.png If the SVG has a...
Jasmine is a great way to unit test your JavaScript components without writing an expensive end-to-end test for...
You want to use fields in your applications. However, your desktop users may encounter some weird quirks: Aside from allowing...
Often people need links which are not linked directly, but should trigger execution of JavaScript. ❌ Bad workarounds
We had a card that described how to install multiple mysql versions using mysql-sandbox. Nowadays with the wide adoption...
If you end up with an Elasticsearch cluster which has a very different disk usage on it's nodes you...
The linked article points out that COUNT queries might be unexpectedly slow in PostgreSQL. If you just need to know...
When storing files for lots of records in the server's file system, Carrierwave's default store_dir approach may...
Sometimes you want to load code on demand. For instance, when a a large library is only used on a...
To attach files to your records, you will need a new database column representing the filename of the file...
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...
Browsers blocks abusable JavaScript API calls until the user has interacted with the document. Examples would be opening new tab...
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...
By default, your terminal emulator (Gnome Terminal, Terminator, etc.) sets some kind of window title to reflect the shell type...
There are several tools for DNS debugging which offer you more or less information. Most of the time the more...
In Ruby you can communicate between processes with sockets. This might be helpful in tests that validate parallel executions or...
Using Ruby 1.8.7 you will not be able to use the maximum versions Rubygems 1.8.30 and Bundler 1.17.3 with https://...