← All articles
Data 3 min read

From punch cards to tell-n-code

From punch cards to tell-n-code

Just one generation of scientific computing people before me had the genuine, almost magical experience of punch cards. Each command typed onto a stiff paper card; the cards stacked into a deck; the deck fed to a machine that read the holes and, some hours later, told you whether you had fumbled card number forty-three. Miss a single column, and you queued for the next slot to try again.

I missed that era by a hair. My own start was an Amstrad CPC 464: a green screen, a tape recorder for storage, and my first program, written in BASIC. You typed a line, the machine ran it, and if it broke it told you so on the spot. After the punch-card stories I had grown up on, this felt like science fiction.

Then came the rest. Fortran 77, then Fortran 90, then C, then C++, then Java, then Objective C, then you name it. Every step in that sequence did the same quiet thing: it made the interface between human and machine a little less cumbersome, a little more intuitive, and a little more focused on the actual problem I was trying to solve, rather than on describing that problem in terms the machine could digest. With each language, the machine met me a bit closer to where I already stood.

Today I am writing a new schema-free SaaS platform, Metasentio, with a small army of Claude Code and OpenAI Codex agents, coordinated through a proprietary architecture and conventions framework, and project managed through Linear. I describe what I want; the agents write, test, and revise; I decide, correct, and steer. Call it tell-n-code: the point of contact has moved almost entirely onto my side of the table.

Is it different? You bet. Is it revolutionary? Here I will disappoint the headline writers. The jump in raw productivity sits somewhere between a hundredfold and a thousandfold, and yet I would still call this an amazingly potent evolution rather than a revolution. For anyone who once wrote assembly and then discovered that C existed (and then Java, and then you name it), the shock was much the same in kind, if not in size. We have been here before. We just keep arriving faster.

What we are holding now is, in my view, the most capable human-machine interface ever built. Does it make work on complex code faster? Absolutely. Does it let anyone write a proper piece of software? Absolutely not.

The "vibe coding" mania is, for now, plain fantasy. Unless you understand how complex architectures fit together, unless you can stand up a properly secured Linux VM, unless you can make the project decisions that actually hold up over time, what comes out the other end is a toy. A toy carrying an astonishing amount of technical debt, and one that will die on its first real push to production. Period.

So yes, AI is transforming how software engineers work, in frankly world-altering ways. But the engineers will survive. Their mode of thinking, their grasp of how multi-layered systems behave under real load, their ability to instruct an LLM precisely enough to get something real: none of that is replaceable. The interface has changed beyond recognition. The need for someone who understands what sits behind it has not.

At least for now.