Writing
A chronological notebook tracking software architecture, lessons from shipping production systems, codelabs, and ongoing research.
Comparing Event-Deduplication Strategies for Client-Side Analytics
An open investigation into time-windowed vs.
Modeling 'Either, Or, Both' States Without a Combinatorial Explosion
An open look at how the gsmNCloud three-state model from the hybrid telephony work generalizes to other 'a user can have A, B, or...
Designing an Event Taxonomy for Amplitude
How to name events and properties so analytics stays usable as the product grows, instead of becoming hundreds of one-off strings.
Docker for Local Development: A Practical Workflow
A docker-compose setup for local dev that stays fast — bind mounts, layer caching, and the tradeoffs that actually matter day to day.
Setting Up a Flutter Development Environment on Linux
A practical setup for Flutter + Dart on Linux — SDK install, editor config, emulator, and the gotchas that waste the first hour.
Designing Data-Intensive Applications
Reference text on the storage, replication, and consistency tradeoffs behind the databases and queues used day to day.
The Staff Engineer's Path
On the archetypes and responsibilities of senior IC engineering roles — relevant to thinking about scope beyond individual features.
Make analytics events boring on purpose
The unsexy taxonomy rules that keep Amplitude usable after the third redesign — and why exciting event names are usually a future outage.
Turning scattered product behavior into systems
A recurring theme in product engineering: ambiguous, duplicated behavior across screens is more dangerous than it looks, and the fix is rarely glamorous.
Sizing an event deduplication window
A short note on why a fixed time window for analytics event deduplication needs tuning, not just existing.
Amplitude's Event Taxonomy Documentation
Amplitude's own guidance on event/property naming and taxonomy planning — used as a reference while building out the analytics layer described in the Product...
Keeping sandbox traffic out of production analytics
Why analytics initialization should check environment/host before sending any events, not just before reporting them.
PostgREST + RLS for Multi-Tenant APIs
How PostgREST plus PostgreSQL Row Level Security removes a class of CRUD controllers — tenants are isolated in the database, and a thin backend...
Plugin-Style ETL on AWS Lambda
Serverless ETL where sources, transforms, and sinks are plugins loaded from a YAML job config — deployed on Lambda via Serverless Framework without a...
Shared hosting is a product constraint, not an insult
You don't always get systemd.
Webhook Deploys Without CI/CD
Automatic git-pull deployments on shared hosting: GitHub webhook → Laravel endpoint → queued RunDeployment job, and when that pattern is (and is not) appropriate.
RAG over PDFs with LlamaIndex
How a PDF chatbot grounds answers with VectorStoreIndex — chunking, retrieval, generation — and why a global in-memory index is a demo ceiling, not...
Boot-Time Code Integrity in Laravel
SHA-256 hash-check a critical file on every Laravel boot and webhook a tamper alert — when the pattern helps on shared hosting, and the...
Hash-Check a Laravel File on Every Boot
Add a ServiceProvider that SHA-256 checks a critical file, webhooks on mismatch, and heartbeats on success — a shared-hosting substitute for OS-level FIM.
Keep Laravel Queues Alive on Shared Hosting
Build a tiny Node.js supervisor that restarts php artisan queue:work when your host won't give you systemd — then prove it with a log...
Extract the package while the app is still shipping
image_hotspot and floor_plan_builder exist because a restaurant layout needed tap regions — and a second app was about to copy-paste them.
Live GPS Map with Socket.IO and Leaflet
Build a multi-user location board in one sitting — Express broadcasts coordinates, Leaflet draws markers, disconnects clean themselves up.
Translate HTML without breaking the DOM
A short, copy-pasteable pattern: BeautifulSoup text-node walks for markup-safe transforms — translation today, anything that touches visible text tomorrow.