·Productivity · Tools · Workflow

My Development Setup in 2026

The tools, workflows, and rituals that keep me productive every day.

Every developer has opinions about their setup. Here's mine, refined over years of trial, error, and too many dotfile repositories.

Editor: I've settled on a combination of Cursor for AI-assisted coding and Neovim for quick edits and server-side work. The key isn't which editor you use — it's knowing it deeply. I can navigate, refactor, and debug without touching the mouse, and that saves hours over a week.

Terminal: WezTerm with a custom configuration. I use tmux for session management with a prefix key remapped to Ctrl-A. Each project gets its own tmux session with predefined window layouts: code, server, tests, and git.

Language tooling: Go with gopls, TypeScript with tsserver, and Rust (which I'm learning) with rust-analyzer. LSP has unified the editing experience across languages, and I lean heavily on go vet, staticcheck, and golangci-lint for catching issues before they reach code review.

Database: TablePlus for visual inspection, but I write all migrations in raw SQL. ORMs hide too much. I want to see every index, every constraint, every query plan.

Notes and thinking: I use Obsidian with a simple Zettelkasten system. Every technical decision gets a note. Every production incident gets a post-mortem note. Six months later, when someone asks "why did we choose X?", the answer is always one search away.

Version control: Git with conventional commits, interactive rebasing for clean history, and a strict "no force push to main" policy. Feature branches are short-lived — ideally merged within two days.

The meta-lesson: invest time in your tools. A 5% efficiency gain compounded over years is enormous.

copyright.text