At the beginning of this series, the problem seemed simple. There were a lot of rocks in the yard. Some were small. Some were large. A few were firmly in what I’ve been calling Engine Block Class. The original idea was straightforward: catalog them, maybe sell a few, and build a small system around the process. Along the way, the project grew. What We Built Across the previous posts, the Backyard
When developers travel, we usually prepare the obvious things. Laptop charger. But there is one dependency that is easy to underestimate until it breaks: mobile internet. A trip to China makes this especially obvious. Not because China is hard to travel in, but because so many basic interactions are mobile-first: navigation, translation, ride-hailing, hotel communication, ticket confirmations, pay
The circle fills and pulses in sync with the audio — this is what your phone is feeling. The GIF shows it, but you won't really get it until you feel it. Open this on Android and try it yourself → Other links - View on Github View on npm Native platforms have solid haptics support, and if haptics are the core of your product, the native APIs are worth learning. But there are very few apps where ha
A defaced website is a curious problem. It's loud — anyone visiting the page can see something is wrong. But it's also quiet from a server's perspective: HTTP returns 200, your uptime monitor is happy, your TLS cert hasn't moved, and the CMS logs show a "successful" content update from a legitimate-looking session. The signal is on the rendered page, not in the metrics. I run a site at hi3ris.blue
You just ran a dependency scan and the report shows 133 vulnerabilities. 34 are Critical. 68 are High. The dashboard is red, the backlog is exploding, and every item looks urgent. The engineering team asks the obvious question: where do we start? This is where vulnerability remediation prioritization matters. Without a clear framework, teams either panic and chase the loudest CVE, or they ignore t
We've been there. JSON Schema gets hard to write as soon as your payload is non-trivial. Conditional logic, cross-field rules, business invariants, and at some point we stop writing contracts at all. We go code-first, generate the schema from annotations, and end up with 200 lines very few understand, and error messages referencing paths like #/properties/items/allOf/0/then/Then that map to nothin
Literal translation tools give you one answer. That answer has no register, no cultural context, and no way to know whether you're being warm or clinical. I was writing a message to my girlfriend in Farsi — something small, about missing her during the day — and every tool I tried handed me back a single string with no indication of whether it would land tender or transactional. Native speakers do
After running multiple Claude Code sessions daily for a few months, I got tired of cmd-tabbing between terminal windows trying to remember which session needed my attention. What it does: GitHub: https://github.com/muxara/muxara Happy to answer questions or take feature requests.