Comment by maherbeg

1 day ago

Yes, that's true, but in the post, they even mention that building the spec is the scarce resource.

  For that to work, the swarm has to actually follow the spec, which is what much of this post is about. We gave the swarm 835 pages of prose and it came back with a database. What was scarce in this experiment, and what we expect to be scarce in software engineering going forward, is the right description of intent.

but that's what we use the agent "swarm" to do .. it's also not scarce. what's scarce is imagination.

We're rediscovering the "architect" job role a decade or so after switching to agile processes and staff engineers largely replaced it. God help us when they rediscover UML for agents.

  • I feel like the scarcity of (idealized) Product Managers is even more acute.

    • Easily the biggest delta between a good one and a bad one I've ever encountered. It's so easy to test too. Just ask a product manager if they can give a talk on <some product they own> in 2 hours. If they respond by slacking all of the engineers that work under them to stop what they're doing and give them the info to give that talk, fire them. If they are ready to talk right now then give them a raise.

I mean, how long are these pages? Assuming 40 or so lines per page, that would be 33400 lines of spec turned into 200,000 lines of Rust, or about 6 lines of code per line of spec. That's a very detailed spec, much more than any software specification I have ever written in my career. It's not obvious to me that writing this spec would meaningfully save work over incrementally building individual features, especially when you think about what it would take for human beings to meaningfully review whether those 835 pages contain the right intent.

  • not only that, but what all of this misses is the fact that the specification that they used was a product of writing the software, not the other way round. It would be much, much more difficult to first write a correct specification than to first write a correct program, because programs are formal systems that can be executed to observe their correctness. You can’t do that with a specification.