What I'm shipping
Architecture calls, decisions, and things that broke on the way.
Articles
6
Tags
9
Years
1
6 selected
•
Sorted by newest
Jun 17, 2026
ozzo.blog
A Bounded Context Doesn't Need a Folder. It Needs a Test That Can Fail.
I almost split two classes into their own folders to "enforce" a bounded context. Instead I wrote one test. It caught a real violation on its first run.
Jun 13, 2026
ozzo.blog
Your Code Is Coupled. Connascence Tells You Which Parts to Fix First.
I knew User.rb was a problem. 730 lines, roles scattered everywhere, unit conversions duplicated across four methods. I could feel the coupling. Connascence gave me the vocabulary to name it and rank it.
Jun 07, 2026
ozzo.blog
Why I Split My Personal Journal From My Operational Log
My daily note had quietly stopped being a journal. It was performing organisation instead of capturing reality. This is the correction.
May 31, 2026
ozzo.blog
Every Rails App Has an Architecture. Mine Just Didn't Know It Yet.
I had a 874-line controller and no architecture document. Reading Fundamentals of Software Architecture forced the first explicit trade-off decisions this codebase had ever had.
May 22, 2026
ozzo.blog
Writing Without Hiding
I wrote the wrong article this week and used that mistake to define a stricter rule for what belongs on ozzo.blog versus product channels.
May 17, 2026
ozzo.blog
The vault is my CMS
I don't have a CMS. I have markdown files and a CI script that reads them. Here's how that happened and why Sunday is now the only deadline I track.