Comment by josephg
13 hours ago
I don't think claude code is like 3d printing.
The difference is that 3D printing still requires someone, somewhere to do the mechanical design work. It democratises printing but it doesn't democratise invention. I can't use words to ask a 3d printer to make something. You can't really do that with claude code yet either. But every few months it gets better at this.
The question is: How good will claude get at turning open-ended problem statements into useful software? Right now a skilled human + computer combo is the most efficient way to write a lot of software. Left on its own, claude will make mistakes and suffer from a slow accumulation of bad architectural decisions. But, will that remain the case indefinitely? I'm not convinced.
This pattern has already played out in chess and go. For a few years, a skilled Go player working in collaboration with a go AI could outcompete both computers and humans at go. But that era didn't last. Now computers can play Go at superhuman levels. Our skills are no longer required. I predict programming will follow the same trajectory.
There are already some companies using fine tuned AI models for "red team" infosec audits. Apparently they're already pretty good at finding a lot of creative bugs that humans miss. (And apparently they find an extraordinary number of security bugs in code written by AI models). It seems like a pretty obvious leap to imagine claude code implementing something similar before long. Then claude will be able to do security audits on its own output. Throw that in a reinforcement learning loop, and claude will probably become better at producing secure code than I am.
> I can't use words to ask a 3d printer to make something
Setting aside any implications for your analogy. This is now possible.
The design work remains.
I’m not a fan of analogies, but here goes: Apple don’t make iPhones. But they employ an enormous number of people working on iPhone hardware, which they do not make.
If you think AI can replace everyone at Apple, then I think you’re arguing for AGI/superintelligence, and that’s the end of capitalism. So far we don’t have that.
> This pattern has already played out in chess and go. For a few years, a skilled Go player working in collaboration with a go AI could outcompete both computers and humans at go. But that era didn't last. Now computers can play Go at superhuman levels. Our skills are no longer required. I predict programming will follow the same trajectory.
Both of those are fixed, unchanging, closed, full information games. The real world is very much not that.
Though geeks absolutely like raving about go and especially chess.
> Both of those are fixed, unchanging, closed, full information games. The real world is very much not that.
Yeah but, does that actually matter? Is that actually a reason to think LLMs won't be able to outpace humans at software development?
LLMs already deal with imperfect information in a stochastic world. They seem to keep getting better every year anyway.
This is like timing the stock market. Sure, share prices seem to go up over time, but we don't really know when they go up, down, and how long they stay at certain levels.
I don't buy the whole "LLMs will be magic in 6 months, look at how much they've progressed in the past 6 months". Maybe they will progress as fast, maybe they won't.
There is verification and validation.
The first part is making sure you built to your specification, the second thing is making sure you built specification was correct.
The second part is going to be the hard part for complex software and systems.
I think validation is already much easier using LLMs. Arguably this is one of the best use cases for coding LLMs right now: you can get claude to throw together a working demo of whatever wild idea you have without needing to write any code or write a spec. You don't even need to be a developer.
I don't know about you, but I'd much rather be shown a demo made by our end users (with claude) than get sent a 100 page spec. Especially since most specs - if you build to them - don't solve anyone's real problems.
Demo, don't memo.
Hard disagree, clients/users often don't know what the best/right solution is, simply because they don't know what's possible or they haven't seen any prior art.
I'd much rather have a conversation with them to discuss their current problems and workflow, then offer my ideas and solutions.
Hm, how much real life experience do you have in delivering production SW systems?
Demo for the main flow is easy. The hard part is thinking through all the corner cases and their interactions, so your system robustly works in real world, interacting with the everyday chaos in a non-brittle fashion.
I don’t think you are using validation in the same sense as PC
> The second part is going to be the hard part for complex software and systems.
Not going to. Is. Actually, always has been; it isn’t that coding solutions wasn’t hard before, but verification and validation cannot be made arbitrarily cheap. This is the new moat - if your solutions require time consuming and expensive in dollar terms qa (in the widest sense), it becomes the single barrier to entry.
Amazon Kiro starts with making the detailed specification based on human input in natural language.
> I can't use words to ask a 3d printer to make something.
You can: the words are in the G-code language.
I mean: you are used to learn foreign languages in school, so you are already used to formulate your request in a different language to make yourself understood. In this case, this language is G-code.
This is a strange take; no one is hand-writing the g-code for their 3d print. There are ways to model objects using code (eg openscad), but that still doesn't replace the actual mechanical design work involved in studying a problem and figuring out what sort of part is required to solve it.
Funny you should mention that.
I spent years writing a geometry and gcode generator in grasshopper. I wasn’t generating every line of gcode (my typical programs are about 500k lines), but I write the entire generator to go from curves to movements and extrusions.
I used opus to rewrite the entire thing, more cleanly, with fewer bugs and more features, in an afternoon. Admittedly it would have taken a lot longer without the domain expertise from years of staring at geometry and gcode side by side.
Produce the g code needed to 3D print the object of the attached illustrations from various angles.
Produce the 3D images of xxx from various angles.xxx should be able to do yyy.
1 reply →