// latest writing
View all →The advice I don't give juniorsTwenty-five years of technical advice has mostly expired. What's left worth passing on is the short list of things that never moved: the domain, working backward, reading, and trust.
Don't outsource the thinkingDevelopers are starting to refuse to work without AI. The tools were never the problem — handing over the part that thinks is.
Modeling the domain firstWhy I reach for the domain model before the framework, the database, or the API.
// what I'm working on
GitHub contributions
3,522 · past yearSepOctNovDecJanFebMarAprMayJunJulAug
Less More
Commits 82.5%Reviews 10.7%Pull requests 6.5%Issues 0.3%
AI activity
5 models · last 7 days$3.6Kspend · 7d
Opus$2,915 · 685 lines
Fable$643 · 220 lines
Others$12 · 7 lines · Sonnet, GPT, Claude
</> line changes73% AI · 912 ai / 342 human
Tokens
528M526.7M in · 1.3M outPrompts
3483.8K chars avgSessions
47~7 prompts eachAI pairing
17h 28m31.5% of coding timeCoding activity
9h 14m · last 7 daysLanguages
Markdown38.79%SQL26.6%Java22.66%TypeScript4.99%Text2.09%HTTP Request1.17%D0.99%Java Properties0.62%Kotlin0.62%SSH Key0.49%JSON0.37%Astro0.25%GitIgnore file0.18%Vue0.12%Bash0.06%
Editors & Tools
Claude Code33.57%Orca25.84%SparkDesktop10.3%DataGrip7.63%ClickUp7.58%Unknown Editor4.25%Warp2.95%Slack2.11%GitHub1.64%Excel1.54%Fork1.35%IntelliJ IDEA0.23%Postman0.19%VS Code0.17%ChatGPT0.17%iTerm20.15%Notion0.13%Codex Vscode0.07%Word0.07%WebStorm0.06%
Operating systems
Mac100%