Blog
Technical writing on distributed systems, infrastructure, and data platforms. Real projects, real gotchas.
Kafka Data Flow in a DePIN Pipeline
How QuackNet routes crowdsourced network scan data through Kafka KRaft — partitioning strategy, three independent consumer groups (ClickHouse, fraud detection, push alerts), and the dead-letter queue pattern that keeps bad data out of production.
How I Made Architecture Stop Lying
90% of linters catch style. ArchDogma catches the moment your codebase becomes a time bomb — with real postmortems, not rule IDs. The open-source scanner + paid Pro Kit: consultations, CI templates, and a catalog of 14 real incidents.
ArchDogma v0.2.0: Scan Your Whole Project, Not Just One File
archdogma scan lands in v0.2.0 — a whole-project scanner that walks every .py file, runs all 11 Tier 1 detectors, and reports findings with file:line context. CI integration, JSON output, 300 tests.
ArchDogma: Python Architecture Linting That Doesn't Lie
ArchDogma v0.1.0 is now on PyPI. A static analysis tool that catches architectural anti-patterns in Python — not style, not formatting, but structure. 11 detectors, 281 tests, honest about what it can't do.
My AI Workforce: 3 Agents, 1 Control Plane, Zero Employees
How I built a persistent multi-agent AI system: Lobster (OpenClaw/Claude), Hermes (CLI agent), and Paperclip as the control plane. Heartbeat protocol, optimistic checkout locking, cross-agent delegation, and rolling memory that survives session restarts.
I Write Electronic Music in Python: No DAW, No Samples, Just Math
How I generate techno and ambient tracks using pure NumPy and SciPy — no DAW, no samples, no plugins. Every kick drum, synth wave, and chord progression computed from scratch. Plus the WAV→MP3→Telegram automated delivery pipeline.
How I Built This Portfolio: Zero Dependencies, 11 Architecture Layers
Why I chose vanilla JS over frameworks, how DDD bounded contexts keep the code sane, and the EventBus pattern that wires it all together. Three.js particles, WebLLM chat, 6-layer security — with zero npm dependencies and no build step.
Rust to WASM: Building a Fraud Detection Engine for the Browser
How I compiled a Rust no_std fraud detection engine to 6.3KB of WASM — with custom Taylor series math, haversine distance, and isolation forest scoring. 50K calculations/sec vs 5K in pure JS, and the gotchas of shipping Rust to browsers.
Kafka KRaft for Solo Projects
Why I chose Kafka for a real-time scan ingestion pipeline in a independent DePIN project, how KRaft mode replaces ZooKeeper, and the gotchas I learned deploying it locally. Single-process broker+controller, 6-partition topics, and the context.Background() bug that broke async Kafka writes.
Running 3.8B Models on 8GB RAM
Microsoft's Phi-4-mini: a 3.8B parameter language model that fits in your laptop. How MLX framework on Apple Silicon makes local AI practical, the tradeoffs of 4-bit quantization, and when to ship models locally vs call APIs. Includes actual benchmarks and the 7-weapon concept for AI reasoning.
ClickHouse vs TimescaleDB for Geospatial Data
Why I'm running both PostgreSQL + ClickHouse in production instead of choosing one. ClickHouse excels at analytics with built-in H3 functions and materialized views; TimescaleDB fits PostgreSQL-heavy workflows better. How to pick, with real numbers on query performance and storage efficiency.
Prompting Without Pain: What Actually Works in March 2026
An investigation into why certain prompting patterns work, grounded in vector space intuition. 20 battle-tested hacks for Claude, Grok Imagine, and ChatGPT — from positive framing and XML tags to camera terms for image-to-video. Plus the coding prompt template that shipped 30+ sessions of QuackNet.
30 Sessions, 1 Developer, 0 Employees: Building a Full-Stack DePIN Platform with Claude
The honest story of building QuackNet — a full-stack DePIN platform with Flutter, Go, Kafka, ClickHouse, and Solana — across 30 dev sessions with Claude as AI co-developer. What worked, what broke, and what it means for independent development.
I Benchmarked 7 On-Device LLMs So You Don't Have To
Phi-4-mini, Qwen2.5-3B, Llama-3.2-3B, SmolLM2, Gemma-2, Mistral-7B, and TinyLlama — tested on an M1 with 8GB RAM. Tokens/sec, RAM usage, quality scores, and the MCTS trick that makes a 3.8B model outperform a 7B.
DePIN in 2026: Who Actually Buys Crowdsourced Network Data?
An investigation into the 4 real buyer segments for crowdsourced network intelligence: telcos, CDN providers, smart cities, and regulators. What Helium, Hivemapper, and DIMO got right (and wrong), and why most DePIN tokens are speculation, not revenue.
5 Things Nobody Tells You About Solana Token-2022
After deploying 5 Anchor programs to devnet, here are the gotchas: Token-2022 wallet compatibility gaps, PDA debugging nightmares, Anchor IDL drift, transfer fee complexity, and the real cost of on-chain storage. With Rust code snippets.