Hacker News new | ask | show | jobs
by tayo42 7 days ago
Because the assumption is code is expensive to generate. Otherwise why would you put all the upfront effort into all of the planning?Just write some code and iterate on where it goes.
3 comments

Because you're not just dicking around for funsies? It's fine if nobody uses your shit, but it's not fine if you have actual customers who depend on you.

Maybe this is a paid feature that we're going to charge money for. Or we're going after a new market segment, or trying to take business from a rival. A new feature might have regulatory or legal requirements, somebody needs to understand all that.

At the very least, someone wants this new thing for a reason. You can't just guess, you actually have to talk to people and understand the problem domain lol.

Your not going to know your classes, parameters, how data should actually be laid out in storage or represented in the application until you start writing anyway. It's always an iterative process.
Kind of, but not really. Those things are hard when you're learning, but they're pretty trivial after some experience.

I almost always have a pretty good idea of what I'm making and how I'm going to make it before I start.

Code being expensive would be one reason to plan, but hardly the only one. Some other reasons: cost of failure (don't leak customer PII), maintenance, unclear requirements, unclear success criteria.
Developers that can't see from A to Z (all steps ahead) are generally not the ones hired for serious roles (or high paying jobs), that's the difference with iterating on the fly.