tmux, psmux, and managing multiple agents in a terminal
Terminal multiplexing was already useful. With several AI agents running tasks concurrently across different repos, it's become essential to how I work.
Thoughts on development, architecture, and the craft of building software.
Terminal multiplexing was already useful. With several AI agents running tasks concurrently across different repos, it's become essential to how I work.
I assumed Copilot CLI was a shell command suggester. It isn't anymore — and after using both seriously, Copilot has some real edges worth talking about.
Coming from React and Next.js, what surprised me about SvelteKit — the reactivity model, the routing conventions, and the one thing I still reach for React for.
Build the base yourself, set the rules, then delegate the polish. Why letting the model drive from a blank page consistently produces code you don't fully own.
Prisma's schema-first approach and generated client are genuinely good. The migration workflow, connection model, and production gotchas deserve more attention before you commit.
Not everything needs Kubernetes or a managed PaaS. Sometimes a $6/month Droplet and a bit of setup is the fastest path to a running, maintainable production environment.
A pragmatic view of building on-chain — when blockchains are actually the right tool, what makes smart contracts uniquely dangerous, and how to audit effectively.
Framework choice matters less than render strategy, bundle discipline, and shipping the smallest useful page. A practical view across React, Next.js, and Svelte.
What building AI features actually teaches you — start with constraints, treat LLMs like distributed systems, and build for the failure modes.
Containers are a delivery primitive. Kubernetes is an operational commitment. The gap between them is where most teams get into trouble.
Zero trust, threat modeling, and secure coding practices — framed not as a checklist but as a way of thinking about how badly things can go wrong.
ETL, ELT, data lakes, and streaming — tools and patterns for pipelines you can trust, with an honest look at where they usually break.
CI/CD, GitOps, and IaC that developers actually trust — built for fast feedback, not for showing off tooling choices.
An honest look at what changed in my workflow after using Cursor daily — and where the hype oversells it.
Flutter and React Native can both ship great apps. The question is where your team will hit the native boundary and how painful that will be.
The hardest part of microservices isn't the technology. It's knowing where to draw the line — and what you've committed to once you do.
The operational leverage is real. So are the cold starts, the surprise egress bills, and the local debugging problem. A practical view across AWS, Azure, and GCP.
How to containerize a Laravel app with Docker, enable Vite's HMR, and create a seamless local development workflow that doesn't fight you.
How to implement the Repository Pattern in Laravel and, more importantly, when the abstraction is worth adding.