A Hotline Button That Won't Dial on iPhone: Three Bugs Stacked on Each Other
One a href tel tag inside an iframe, three completely different causes, and a test environment that led me to misdiagnose all three.
Notes, guides and lessons from years of building software.
Try a different keyword.
One a href tel tag inside an iframe, three completely different causes, and a test environment that led me to misdiagnose all three.
Why I pick Astro for content-heavy sites, how the islands architecture actually works, and what I learned building this site with it.
The TypeScript habits that keep a project maintainable as it grows, learned from working on codebases that have been running for years.
A lean pipeline that lints, tests and deploys on every push, built from scratch with the reasoning behind each piece.
From git push to a globally distributed website in a few minutes, including the things I tripped over in real deployments.
Only wp-admin/plugins.php died, and debug.log stayed empty. Dropping markers to bisect my way down to the function causing a segfault, and fixing it without touching core or the plugins.
A floating contact bar with chat, call and directions links: docked to the left on desktop, turning into a bottom bar on mobile, with no JavaScript.
Rewrite is enabled in the admin panel but the URLs still contain index.php? The problem is one line in a config file the admin interface never touches.
Searching, sorting, hashing, dynamic programming, recursion: nine foundational families of algorithms and where they actually show up in daily work.