If we're going to gatekeep the word "engineer", you're not in the most defensible position as a train designer. If you want to go back to the original definition, engineers were soldiers specialized in siege warfare, which has nothing to do with designing trains. Alternately, "engineer" can be broad enough to include someone driving a train, which presumably required some understanding of how the locomotive worked but was more of what we'd call a skilled technician.
The prosecution has the burden of proof to establish the basic accusation, and the defendant is always entitled to offer the negative defense of "I didn't do it". For instance, if I'm accused of killing Paul, I can always say "I didn't kill Paul" and the prosecution has the burden of proof to say that I did. On the other hand, if my defense is that I killed Paul in self defense, the burden of proof is on me to show that my actions satisfied the legal definition of self defense in my state.
It's intentional on the part of the prosecutors, and the billionaire who funds their campaigns. I don't know what their actual motivations are--probably some combination of ideological derangement and ulterior motive. They just don't believe in prosecuting most ordinary criminals.
Almost all of the YoY growth in the S&P500 is in a very small number of tech companies. If one of those fast-growing tech companies isn't in the S&P500, the index as a whole becomes obsolete.
Sure but it’s still more affordable than it was for the vast majority of our ancestors, and they still had kids, so it’s not an explanation for declining TFR in developed countries.
No, I think AI actually gets us closer to the surgical team than before. The purpose of the surgical team is to maximize the value of a single individual contributor. Before AI, the only way to do that was to surround him with assistants, which is inherently hierarchical and never really caught on probably for that reason. The value wasn't in the surgical team being entirely human, it was in optimizing for the surgeon's output by offloading tasks that are less valuable for him to perform. Offloading those tasks to AI works just as well without offending our egalitarian sensibilities.
Yes and every AI-first development workflow worth its salt does exactly this, and it does it much more thoroughly than I’ve ever seen a team of meatbags do it.
My workflow, at a high level, is:
1. I write a high level spec. Not as high level as a single-sentence prompt, but high level enough to capture my top requirements.
2. I prompt the AI to interview me about the spec to clear up any ambiguity or open questions, then when I’m satisfied, the AI writes a longer spec, which I then review.
3. Then I prompt the AI to write an implementation plan based on the spec. I might just skim this, and by this point I might be asking the LLM more questions than it’s asking me.
4. Now I hand it off to the implementer agent.
This isn’t cowboy coding, it’s not even agile. It’s waterfall. The problem with doing waterfall was that it’s too slow, especially with the deserialization/serialization cost of routing all of this documentation through meatbrains. The LLM is doing just as much work, true, but faster.
The thing I found surprising was that, while LLM’s are still pretty awful at writing as an art form, they are better technical writers than I have the time to be, especially when writing for an audience of other LLM’s.
You’re reminding me a lot of those old assembly hackers who thought compilers were bullshit because they could hand-write better assembly. And I don’t mean that as an insult; those guys were probably right about their assembly code, just like an Amish craftsman will make better furniture than a factory in China. The problem is that the world needs more furniture and more software than skilled craftsmen can produce, and the skill gap between the craftsman and the mass production process is diminishing fast.
We’re still going to have handwritten software, just like we still have handwritten assembly. It just won’t be the norm.
As I recall, “No Silver Bullet” fundamentally rested on the assumption that the subroutine was the last word in abstractions to make programming more efficient, which probably wasn’t even defensible at the time because Lisp had already been invented, and is even less defensible after the past several decades of programming language research. Brooks was still onto something when it came to irreducible complexity, but offloading complexity an LLM can tackle to the LLM still saves time.
One of the lesser discussed Brooks essays is actually the best description of AI-first development: the “surgical team”. It just turns out the surgeon is the only human, and like many modern surgeries, the surgeon is controlling a robot instead of operating by hand.
It would be interesting to reread The Mythical Man-Month and see how each essay applies to AI-first development.