TypeScript basically uses structural typing, which is conceptually quite similar to duck typing, but with static compile-time type checking...
In some projects we have issues with flaky tests. The best default is to fix them all. But in some...
Leaving old unused DB columns around after a migration is confusing for other developers. However, dropping columns too eagerly might...
If your rubocop run fails with a stack like rubocop-1.61.0/lib/rubocop/server/socket_reader.rb:36:in `ensure in read!': undefined method `string...
The :test adapter doesn't respect limits_concurrency configuration. Switch to :solid_queue adapter in your test to verify blocking...
If you use the selenium-webdriver gem, it will sneakily phone home once every hour whenever you run a browser...
Most of our CI pipelines don't use the --retry flag for Cucumber and instead build their own retry via...
Short reference on how to quickly debug the vanilla Rails job adapters. Queue Adapters by Environment Environment Adapter
Sometimes you have a maintenance script where you want to iterate over all ActiveRecord models. Rails provides this out of...
When creating a database table for a join model without further importance, you can use Rails' create_join_table:
When you query the browser for DOM elements, there are some footguns you should know about. Some lists are synchronized...
Finding changes When you're looking for a specific change in Git, there are multiple axes you can choose:
Follow the installation guidelines at https://mise.jdx.dev/getting-started.html. Remove rbenv configuration Search for rbenv config in .bashrc and...
Compatibility: Angular 20+ with Jasmine 5.x and Karma 6.x As a default Angular CLI auto-generates test bootstrap...
Most of the time, it's a good default to add a unique index on the foreign key when using...
Enable local logging for Sentry when: Debugging Sentry event capture locally Testing error handling without polluting production metrics Developing background...
Full-text search can reach its limits in terms of flexibility and performance. In such cases, trigram indexes (pg_trgm...
Quick reference for passing data from Rails to JavaScript via Unpoly compilers. Haml Attribute Syntax # Ising hash rockets and string...
Quick guide for frequently used compiler selector patterns of Unpoly. 1. BEM Component Pattern When: Reusable UI components with multiple...
When RSpec sets out to print any given object to the console, it will never print more than 200 characters...
The linked tool can be used to scan your CI/CD workflows for potential security issues and suboptimal defaults if they...
GoodJob and ActiveJob rescue exceptions internally, preventing exception_notification from triggering. This can cause silent job failures.To get notified, subscribe...
prettier calls itself an opinionated code formatter. I recommend using it for your JavaScript and TypeScript code. prettier only concerns...
There's a method Integer() defined on Kernel, that typecasts everything into an Integer. Integer("2") # 2 Integer("foo") # Invalid...