You can use RSpec::Matchers.define_negated_matcher to define a negated version of an existing matcher. This is particularly useful...
TL;DR When using Cache-Control on a Rails application, make sure the Vary: Accept header is set.
From Exploring ES6: Module imports are hoisted (internally moved to the beginning of the current scope). Therefore, it doesn’t...
Jasmine is a great way to unit test your JavaScript components without writing an expensive end-to-end test for...
A flaky test is a test that is often green, but sometimes red. It may only fail on some PCs...
This RailsCast demonstrated a very convenient method to activate VCR for a spec by simply tagging it with :vcr.
You want to use fields in your applications. However, your desktop users may encounter some weird quirks: Aside from allowing...
Event delegation is a pattern where a container element has a single event listener that handles events for all descendants...
Sometimes a link or input field has no visible label. E.g. a text field with a magnifying glass icon 🔎 and...
git --fixup is very handy to amend a change to a previous commit. You can then autosquash your commits with...
Ruby lets you re-use existing RegExp objects by interpolating it into new patterns: locales_pattern = /de|en|fr|es/i...
With cd .. you can navigate one directory up from the one you are at now. If you use that a...
There is an option you can set so that when using the cd command, small typos are automatically corrected. Add...
It is generally discouraged to load your JavaScript by a tag in the : The reason is that a tag will pause the DOM parser until the script has loaded and executed. This will delay the browser's first contentful paint. A much better default is to load your scripts with a tag: A deferred script has many...
Formerly 301 (Moved Permanently) and 302 (Found) were used for redirecting. Browsers did implement them in different ways, so since...
What is netfilter's Connection Tracking system? The connection tracking system often referenced as nf_conntrack is part of the...
If you are using scrum in a project you might be familiar with planning poker, a playful way to agree...
The Node Version Manager allows installing multiple NodeJS versions and switching between them. By default, it does not automatically switch...
The linked article points out that COUNT queries might be unexpectedly slow in PostgreSQL. If you just need to know...
When testing JavaScript functionality in Selenium (E2E), you may need to access a class or function inside of a evaluate...
When you synchronize directories with rsync you have to pay attention to use (or not use) trailing /. Hint
Matching the "space" character class For matching whitespaces in a regular expression, the most common and best-known shorthand expression...
rspec >= 3.1 brings a method and_wrap_original. It seems a bit complicated at first, but there are use cases...
When deleting a record in your Rails app, Carrierwave automatically takes care of removing all associated files. However, the file...