Mike Schaeffer

Staff Software Engineer. Pragmatic Problem Solver.
October 21, 2026

AI

As a lifelong fan of marginal programming languages, I've spent my fair share of time wondering why they don't get more use. I would really have liked to use more Clojure over the last fifteen years. But the reality is that there are good structural reasons we make the choices we do. One thought experiment I've used to explore why involves the notion of a hypothetical 'zero cost' programming language. What happens to a software project if all the costs of expressing the code go to zero?

The sad reality for programming language enthusiasts is that the answer is very often less than you think. While there are exceptions, it's not often the case that expressing the logic makes the top of a project's list of problems. There are political issues among stakeholders, the business process is poorly defined, there issues coordinating the vendors, trouble agreeing on requirements, the process is unclear, and maybe the business isn't viable at all. Any one of these (and more!) can torpedo your project, and your better programming language won't help the situation at all. All it might do for you is let you execute the basics of your role a bit more efficiently under specific circumstances.

(Put down the pitchforks. I like programming languages too.)

This brings me to Artificial Intelligence. The easiest way to describe my experience with AI is that we now have my hypothetical zero cost programming language. I'll spare you the details, but like so many others, I've spent the last year throwing my programming problems at AI, only to see my pitches knocked out of the park every damn time. This is true for even the weirder curveballs. I've had it write programming languages, work with self-hosting compiler builds, and implement elaborate graphics algorithms. It's worked every time.

I am amazed. I don't know where the limits are, but what I can say is that if you write code without AI assist, you're about to be competed out of the market. It just isn't tenable to write code manually when AI can do in five minutes what might take you five hours. (If you can do it at all. AI has incredible breadth. More than mine. More than yours.)

But let me call your attention to that list of problems a few paragraphs back. If Clojure (or whatever) doesn't solve your project's problems, I have the sneaking suspicion that AI won't do the trick either. You still have the work of engineering to do, which is as much about the relationships betweeen people as it is the technology in question. I've found this borne out in my own personal experiences with AI. I'm writing less code, but I'm spending more time and effort guiding AI through a list of requirements. I write something up, I have an implementation to test in a few minutes, and then I have to write something else up. Without the time it takes to write the code, this happens much faster than before. It's not less work. It's just different work.

This is work is also right in the middle of where I usually see projects struggle most. AI might make it possible to hypothesis test more quickly, but it doesn't give you the process or the insight to do it well. Whether or not you can use AI to produce something usefully more valuable depends on whether or not you and your team can keep up with the need to provide guidance. Otherwise you're going nowhere, but more quickly than before. Avoiding that outcome is a very different job than writing the code. This is why "Software Engineering with AI Assist" is going to feel quite different from "Software Engineering".

This will only become more true as AI becomes the expectation. As amazing as it is now to do five hours of work in five minutes, we're also collectively resetting our expectations. It won't be long before that work is understood to be a five minute job. When that happens, it's going to be a lot less amazing to do five minutes of work in five minutes.

Enjoy the amazement while you can. We have work ahead of us.

Tags:aitech