Angular 1: Analyze how many watchers are registered on the page
Track the number of Angular 1.x watchers on a page while developing to spot performance issues early. Runs as a bookmarklet and logs the count to the browser console.
RubyMine: How to add a german spell checker
RubyMine 2024.3 includes Grazie Lite by default; German spell checking can be enabled in Natural Languages or added with Hunspell and a German dictionary.
How to: Run geordi in a single proccess with parallel test setup
Parallel test runs in Geordi can break terminal I/O during debugging; forcing one process or using vanilla cucumber avoids breakpoint issues.
Accessing Rails config in webpack(er)
Rails secrets and other configuration values can be read inside webpack bundles with rails-erb-loader, enabling environment-specific client-side settings without hardcoding them.
AngularJS 1 Performance: One-time bindings in expressions
One-time bindings with :: remove resolved AngularJS watchers and reduce digest overhead when values stay unchanged after rendering.
Git: Ignore whitespace when merging or cherry-picking
Indentation-only changes can cause noisy conflicts during merges or cherry-picks; -Xignore-space-change lets Git disregard whitespace differences.
all_blank_except for accepts_nested_attributes_for
Ignore selected hidden fields when rejecting nested records with accepts_nested_attributes_for, so blank child records are not discarded unexpectedly.
Minify Font Awesome fonts with webpack
Reduce Font Awesome icon font size by subsetting unused glyphs with fontmin-webpack, keeping low CPU usage and no JavaScript while avoiding oversized font downloads.
How to: Use different configurations for S3cmd
Managing multiple S3cmd configurations reduces the risk of sending uploads and deletions to the wrong Amazon S3 bucket. Use separate config files or a symlink to switch between environments.
Rbenv: How to remove a gem installed from a Github source
GitHub-sourced gems installed through Bundler can evade gem list and gem uninstall, leaving manual cleanup under ~/.rbenv as the only removal path.
RSpec: How to check if a string contains terms in a desired order
No built-in RSpec matcher checks whether a string contains terms in a specific order; a multiline regular expression is a common workaround, but readability and failures suffer.
An incomplete guide to migrate a Rails application from paperclip to carrierwave
Rails file storage migration with background jobs, reruns, and URL rewrites; large media backfills need careful testing, queue tuning, and fallback handling.
Colcade is a lightweight Masonry alternative
Lightweight grid layouting for mixed-size items with smaller footprint and no dependencies; performance is better than Masonry, but column spanning and built-in transitions are missing.
How to keep using secrets.yml after upgrading to Rails 7.2
Rails 7.2 removes Rails.application.secrets; existing apps can keep secrets.yml by mapping it back with config_for and restoring secret_key_base.
Pivotal Tracker now supports story description templates
Pivotal Tracker story descriptions can now use pasted templates, with custom templates created under More > Templates; the three default templates remain fixed.
Faking Flexbox with legacy techniques
Internet Explorer lacks reliable Flexbox support, so similar layout effects often need older CSS techniques instead of modern flexbox syntax.
The Definitive Guide to Cookie Domains
Cookie domain restrictions limit which hosts receive session cookies and other secrets, reducing leakage across subdomains and making host naming choices security-relevant.
Minimal JavaScript function to detect version of Internet Explorer or Edge
User-agent sniffing can still be necessary when Microsoft browsers need special handling. ieVersion() extracts Internet Explorer 10/11 and Edge version numbers, returning undefined for others.
SSH: X-Forwarding
Remote graphical programs can run on your local desktop through SSH, but X11 forwarding is slower and exposes your X session to a trusted host.
How to fix: Corrupt special characters in ZIPs on Linux
ZIP files from Windows users can corrupt umlauts and other non-Latin1 filenames on Linux because of CP850 encoding. unzip -O CP850 handles these archives correctly.
Chrome bug: Wrong stacking order when transitioning composited elements
Chrome can render composited slider elements in the wrong stacking order during CSS transitions, causing overlapping content to appear above neighboring elements until motion ends.
Haml: Generating a unique selector for an element
Haml can derive stable CSS classes and IDs from Ruby objects, making elements easy to target from JavaScript or Unpoly updates.
Haml: Prefixing a group of attributes
Prefix several HTML attributes at once in Haml by nesting them in a hash with {} syntax; () attribute syntax does not support grouped prefixes.
3 ways to run Spring (the Rails app preloader) and how to disable it
Rails commands can start Spring unexpectedly, and DISABLE_SPRING disables it only for non-explicit invocations. Different launch paths affect console and rake behavior.