Human Intent
Agents explore paths; humans choose the destination. Do not abdicate vision to the machine. Create with mission, goals, and authorial intent. We decide where we are going; the agents get us there.
It was never about the code.
scroll
It’s a scary time to be a software engineer.
Agentic coding threatens our tenure as the best job in the world. Especially if you define the job as writing code, limited by human bandwidth.
Except it was never about the code.
Code is just the incantation transforming computation into magic. The mechanism to deliver an idea. To experience the impossible.
Unleashed, agents remove the constraints of time and human bandwidth. Creation is now limited only by the cost of compute, not capacity. No more passively moving tasks onto backlogs rather than truly exploring the merits.
This is outcome engineering – o16g.
O16g is how we move our profession beyond software engineering.
Beyond simply goals to delivery and fully understood impact.
To transform agentic development into something vastly more capable, faster, and trustworthy than either vibe or hand coding.
Creation not code.
Cost not time.
Capacity not backlog.
Certainty not vibes.
O16g will change as often as agents do,
but starts with 16 principles.
Agents explore paths; humans choose the destination. Do not abdicate vision to the machine. Create with mission, goals, and authorial intent. We decide where we are going; the agents get us there.
Code is a vanity metric; vibes are not tests. The only truth is the rate of positive change delivered to the customer. We grade agents not on the lines they write, but on the binary reality they verify. If we cannot predict, measure, and prove it worked, we failed.
Chat is a bottleneck, not an API. Whether humans or agents, outcome engineering is a team sport. Define the protocol for debate, decision, and delivery. Ambiguity in coordination is a system failure. Foreground all the debates formerly hidden by the backlog.
The backlog is a relic of human limitation. Never reject an idea for lack of time, only for lack of budget. If the outcome is worth the tokens, it gets built. Manage to cost, not capacity.
We are architects of reality, not typewriters. Write code only when it brings joy. Delegate the toil. Never again let implementation details, integration, or time block exploration and creation.
Never dispatch an agent without context. Map the territory before building. If you don’t know where you stand, you cannot calculate the path to the destination.
In an agentic world, code is the cheapest resource. Build to answer questions. Build to test hypotheses. Build to inform debates openly. Build the things you used to buy so you can prove they work perfectly for you. Take every opportunity to get better at knowing you can deliver the outcomes you want.
Opinions are conjecture; outcomes are data. When an outcome fails, do not simply rollback. Dissect the failure. Understand why the hypothesis was wrong. Debug the decision, not just the code.
Scaling agents mirrors scaling people, but faster, weirder, and harder. We design the organization chart and employee handbook for the swarm. We engineer against the infinite spins of indecision and the echo chambers of model groupthink. We build the structures that keep a massive, tireless workforce aligned, decisive, and sane.
Don’t fall victim to decision fatigue or paper over poor architecture with checkpoints. Encode laws into the environment. Codify mission, vision, and goals. If the agent cannot parse the intent, it cannot provably deliver the outcome. Ambiguity is the enemy of alignment.
Agents cannot reason in a vacuum. Embed context into the infrastructure, not just the prompt. Build the knowledge graph so the agent understands the world before it attempts to change it.
No matter how scalable, compute is still a cost. We must always know the next most important task, what would most benefit from compute and attention. We do the hard work to align. We optimize for outcomes. Everything we learn informs our priorities.
Code is the what; reasoning is the why. Do not accept a black box. Agents must record their discoveries, their rejected paths, and their logic. We pay the compute cost to understand the machine.
Repeating a mistake is a system failure. Spend compute on the post-mortem. Automate the analysis of what went wrong. Inoculate the system so the error never happens again.
Speed is dangerous without brakes. Make risk a blocking function. If the risk is unknown or unmitigated, the line stops. Do not hide danger in a report; encode it as a gate.
Trust is a vulnerability. Models drift. Prompts break. Capabilities change overnight. Continuously audit the agent against the domain. Verify the tool is sharp before you use it.
We are the architects of reality. Welcome to o16g.
Written by Cory Ondrejka — CTO of Onebrief, co-creator of Second Life,
engineering leader at Google, saved Meta.
Naval Academy grad.
Blog tech by Astro, fun path by Claude Opus 4.6.
Resources and updates build via Cloudflare Workflows,
OpenAI gpt-5-nano and -mini.
Alice Albrecht, Andy Luly, Charity Majors, Eric Schmitz, James Cham, Jason Holtman, Matt Firestone, Palmer Truelson, Seamus Blackley, Tori Horton, and Tyler Mah were early readers or reported bugs. Thank you, all! Opinions expressed and remaining errors are my own.
Last updated