I recently enjoyed debugging a Cucumber step that tried to be retryable using a patiently block: Then /^"([^"]*)" should( not)? be...
Using ActiveRecord's #signed_id and .find_signed methods you can create URLs that expire after some time. No conditionals...
When an object is created / updated, various callbacks are executed in this order: before_validation after_validation before_save
Bundler so far ignored the version specified under BUNDLED_WITH in the Gemfile.lock. This had two annoying consequences:
TLDR if you define a equality method for a class you must also implement def hash. Ruby has a lot...
Our CI setup frequently sees this error while running yarn install: yarn install v1.22.19 [1/4] Resolving packages... [2/4] Fetching packages...
Timecop is a great gem to set the current time in tests. However, it is easy to introduce flakyness to...
Usually, design development starts with drafts, sketches and prototypes. These are reviewed, refined and iterated until the final design is...
To read the current breakpoint tier in JavaScript, employ this CSS: :root { --current-breakpoint-tier: xs; @media (min-width: $screen...
In a Jasmine spec you want to spy on a function that is imported by the code under test. This...
Instead of cobbling together default settings in several different places as the issues arise, you can define them application-wide...
We usually rely on VCR and WebMock to prevent any real network connection when running our unit tests.
By default subscript ( ) and superscript ( ) tags are styled with vertical-align: sub, respectively vertical-align: super by most browsers.
Usually, Unpoly compiler destructors are returned from the compiler function. However, when using async compiler functions, you can not register...
The cards editor has a feature "Cite other card" to create links to other cards in the same deck as...
You have some SVG files you want to use as icons on your website. How would you embed them?
In esbuild, you usually import other files using relative paths: import './some-related-module' import `../../utils/some-utility-module` import `../../../css/some-css.sass` This is totally fine...
tl;dr You should decouple migrations from models by embedding models into the migration. To use STI in this scenario...
As a developer you may have many tools watching your project for changes: Your IDE, Webpack, Guard, etc. This is...
The Diátaxis framework aims to solve the problem of structure in technical documentation. It adopts a systematic approach to understanding...
Jasmine specs for the frontend often need some DOM elements to work with. Because creating them is such a common...
Jasmine specs that work with DOM elements often leave elements in the DOM after they're done. This will leak...
Hide/Show Drawer You can press Escape to show/hide the drawer. Fast Navigation with Command Menu Use Ctrl + Shift + p to...
tl;dr In Chrome DevTools in the Layouts tab you have handy options to debug CSS Flexbox and Grid. Including...