Musings of a startup junkie and Ruby on Rails nerd.
Welcome to Millarian! I write about web development, Ruby on Rails, consulting, and the occasional startup lesson learned the hard way.
Supabase Edge Functions Skip Your Package Cooldown
Deno resolves version ranges at deploy time with no lockfile. Pin exact versions in your imports and check their publish dates.
A Two-Week Gem Cooldown for Ruby Projects
Bundler has no minimum release age setting. Here's how to hold your gems 14 days back and verify every locked version against RubyGems.
A Two-Week npm Cooldown with min-release-age
How to protect a Next.js and Expo repo from Shai-Hulud style npm attacks with min-release-age, blocked install scripts, and exact lockfile installs.
Homebrew Release Cooldown Without Third-Party Tools
Homebrew has no minimum release age setting. Here is how I keep Homebrew and its taps 14 days behind upstream with git, brew.env, and a small script.
Why I Wait Two Weeks Before Installing Any Package
Supply-chain attacks like Shai-Hulud get caught within days. A 14-day cooldown on every package manager keeps those releases off my machine.
Shrink Your Expo Android App Size with R8
R8 is off by default in Expo. Turning it on cut my Android download from 27.5 MB to 17.3 MB.
Supabase RPC Silently Capped at 1000 Rows (PostgREST)
PostgREST's max_rows cut my RPC result off at 1,000 rows with no error. Returning one row per group fixed it.
Expo Android Status Bar Icons Invisible in Light Mode
White status bar icons on a white background? Render expo-status-bar once in the root layout.
Rails titleize Breaks Names, Hyphens, and Apostrophes
titleize splits McAllen, drops hyphens, skips capitals after apostrophes, and chops ALL-CAPS words around acronyms. Here's a safer way to recase text.
Catching Rails Credential Drift Between Environments
Rails ships no check that your credential files declare the same keys. We built credential_parity to catch the drift before it reaches production.