All Articles
-
Fairness in AI: Is Fairness Even Possible?
There are at least six distinct, defensible definitions of AI fairness — demographic parity, equal opportunity, equalized odds, predictive parity, individual fairness, counterfactual fairness — and a proven mathematical result shows several are incompatible with each other. Every consequential AI system has already chosen one, whether the team meant to or not.
Read more → -
Why "The Algorithm Decided" Is Never an Acceptable Answer
"The algorithm decided" isn't an explanation — it's a way organizations dodge accountability for the human choices baked into a system. What accountability actually requires as an architecture: explainable decisions, genuine human authority, auditable logs, and a real escalation path.
Read more → -
The Single-Architect Availability Problem
Reliability engineering asks what happens when a component becomes unavailable. Most organizations never ask that about the person who holds all the architectural context — and the six-week test to find out if you have that single point of failure.
Read more → -
The Five Ethical Risks Every AI System Carries
Even a plain product recommendation engine carries all five structural ethical risks of AI: bias, opacity, accountability gaps, privacy exposure, and harm potential. They aren't specific to controversial applications — they come with the technology itself, and the only variable is how well a team manages them.
Read more → -
The Lesson at the Heart of The Software Conductor
A conductor who steps off the podium to play an instrument makes the ensemble worse, not better. The Hero Trap — architects jumping in to solve problems themselves instead of building their team's judgment — is the idea at the center of The Software Conductor, and the one that took longest to really land.
Read more → -
What AI Ethics Actually Means for Engineers
AI ethics gets used to mean three different things at once: philosophical principles, technical system properties, and governance. For engineers, the leverage is in the middle layer — the three zones (building, deploying, consuming AI) where fairness, accountability, and transparency are architectural properties you either build in or leave out.
Read more → -
AI Closes the Ticket. But Who Builds the System?
AI coding tools close tickets fast, but GitClear's 2026 research across 623 million code changes shows refactoring down 70% and duplicated code up 81% since 2023. AI doesn't make developers better — it amplifies the habits they already have.
Read more → -
Your Architectural Style Is Part of Your Architecture
Conway's Law says systems mirror communication structures. The less-discussed corollary: how an architect leads (centralized control vs. distributed judgment) shapes the coupling and evolvability of the system itself, not just the org chart.
Read more → -
The Move From Execution To Origination
Programmer employment fell more than 27% over two years while the Bureau of Labor Statistics projects growth in design-oriented development roles. The real dividing line isn't AI versus humans — it's execution versus origination, and your career depends on which side you're building toward.
Read more → -
The Line AI Is Drawing in Your Architecture Team
Most software work sits on a spectrum from execution (implementing a decision already made) to origination (deciding what to build and why). AI is very good at the former and not at all good at the latter — and that asymmetry has real implications for how architecture teams should be structured.
Read more → -
Why I Wrote The Software Conductor
Two framework-driven drafts of a software architecture book were technically correct and completely lifeless. Why the lesson at the heart of becoming an architect — measuring your contribution by the conditions you create, not what you build — only landed once it became a story.
Read more → -
Working as Intended
Five real AI deployments — Amazon's biased hiring tool, a healthcare triage algorithm, COMPAS recidivism scoring, a wrongful facial-recognition arrest, and the Apple Card — caused serious harm without a single line of buggy code. The harm was upstream, in proxy-variable and fairness-definition choices engineers made without recognizing them as ethical decisions.
Read more →