| ▲ | xendo 5 hours ago | |||||||||||||||||||||||||||||||||||||
I don't agree. I'm recently a huge believer in Programming as Theory Building. The software creation itself is the part that makes you understand what you are building. It's impossible to understand things before you start building them, initial prompt can help you explore, but the idea that after that you can lean back is ridiculous. Most or maybe even all successful software projects are still heavily relying on the best software engineers. That's why anthropic and others are still hiring SDEs. | ||||||||||||||||||||||||||||||||||||||
| ▲ | bunderbunder 4 hours ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||
I somewhat agree with your point, but also I find that the major agent harnesses work really hard at tricking you into leaning back and not letting a proper understanding of what you are building to develop. This isn't a new problem. I had it when working with outsource developers, too. In both cases, it seemed that just sitting back and describing what I wanted in plain English prevented me from properly wrapping my head around the problem. Which then meant I failed to develop the insight needed to find the really good improvements. Those usually consisted of identifying and removing the bits that were making things worse.[1] It's incredibly difficult for me to think of anything other than just adding more stuff on top of what's already there if I'm not getting my own hands dirty. So I've been moving away from plan mode and letting the spin away on building large chunks, and back toward working in small increments and typing out the important code with my own hands. That seems to be the sweet spot. I'm still getting a productivity boost because there's more than enough boilerplate and trivial function definitions to farm out. (Easy prompt, too: "Implement `someFunctionStub`.") But I'm also not letting Plan Mode drag me back into the waterfall development pit of insanity. | ||||||||||||||||||||||||||||||||||||||
| ▲ | khuston 5 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||
Good designs tend to have simple mental models. Some of these mental models are generic and apply across many projects. Or are even written into standards. I wouldn’t be too dogmatic about impossibility of understanding before building. Sometimes knowledge beats experience, and having an intuition for when can save a lot of time. | ||||||||||||||||||||||||||||||||||||||
| ▲ | Arubis 5 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||
In broad strokes, I agree. You still have to make decisions and apply taste. It's _extremely_ unlikely that you'll have the full spec and shape and architecture of something large fully settled in your head before you start. It's also unlikely that you're going to make those realizations, expressions, and decisions when your harness is asking you to choose between what _it_ identifies as being important decisions. If you're in the loop you're getting dumped on with lots of stuff that barely differentiates and you're biased away from catching things that matter. If you're in the loop, use the loop. It's not a terrible construct. It will give you a mediocre outcome. And if mediocre is sufficient, you're done. And here's the part that didn't make it into my prior comment -- if mediocre isn't sufficient, _stop the loop_. Play with what you've got. See how it behaves. Explore the edge cases yourself. Sketch how it works on paper, and how you want it to work, and think about how that should be constructed. Use your brain. Then write a really long prompt (maybe referencing your files and notes and assets) to get back into the loop again. I guess what I'm ultimately getting at is that the loop is useful _and_ a mind-killer, and using your mind is _also_ high value, so do both those things, but don't do them at the same time. | ||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||
| ▲ | CamperBob2 5 hours ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||
That's great, but you and your family will go hungry as a result. If not this year, next year. Your stance isn't new, if it's any comfort. I heard (and probably said) exactly the same thing when C compilers started getting good enough to eliminate the need for most assembly coding. | ||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||