The ten-cent pencil story started in my college dorm room.
A woman walked into our room carrying a massive bag. She told us she was selling pencils for ten cents each—but there was a catch: we could only get that price if we bought her entire inventory.
"Pencils are useful," we reasoned, flexing our elite college-student brainpower. "Ten cents is basically free. We can just split them."
We shook on it. Then, she started counting.
One. Two. Three.
We sat there patiently. Then she passed one hundred. Then five hundred. Then a thousand. By the time she finally tied off the bag, our ten-cent bargain had mutated into a one-hundred-dollar invoice. That was way more than any of us expected to spend, but hey, the logic still felt sound. Each item was a dime. The math checked out. We paid her, she handed over the bag, and she left.
A few minutes later, we actually looked inside.
They weren't pencils. They were shirt buttons. Over one thousand plastic shirt buttons.
None of us knew how to sew. None of us needed shirt buttons. We had just spent a fortune on an impressive lifetime supply of something completely useless to us. The price was correct. The counting was correct. The total was correct.
We had just completely forgotten to look at what we were actually buying.
Years later, I fell into the exact same trap. Except this time, the lady with the bag was an AI document reviewer, and the buttons were cloud infrastructure.
I asked the AI to review a design document for a new AI application I wanted to build. It handed back thirteen findings. They were incredibly thoughtful, professional notes: unclear requirements, weak idempotency, missing failure handling, vague cost controls, and no cancellation flows.
"Great," I thought. "Let’s fix them one by one."
That was the ten-cent pencil.
I tackled finding number one: durable event intake missing. Easy. I added a queue. Finding two: execution state unclear. No problem, I threw in a database. Finding three: retries and branching are underspecified. Boom, I deployed a heavy-duty workflow engine.
Then the dominoes really started falling. I added approval handling. Cancellation handling. A status API. Dashboards. Alarms. Budget thresholds. An operational-readiness review.
Every single finding was valid. Every fix was perfectly reasonable. My architectural diagram became a gorgeous, hyper-scalable masterpiece covered in professional-looking rectangular boxes. It was secure. It was observable. It was a flawless, enterprise-grade backend service.
I stared at the final diagram proudly, took a sip of coffee, and asked a simple question:
“Where is the agent?”
The room went completely quiet—mostly because I was working alone, but the existential dread was loud enough.
The AI agent—the entire reason I was building the system—had been reduced to a microscopic box buried deep in the plumbing. In one version of the diagram, it had actually vanished entirely.
I had built a military-grade fortress, but forgot to put a soldier inside.