Eventual home for SoftwareDevelopmentIsGambling. "Gambling" is not quite the right word, and thus that topic needs a rename. Any objections?
Yes, I object, as this title fits even less. I prefer the current title, as it is more dramatic. Software development is sometimes a business "venture" and sometimes just for fun, and sometimes for the *ell of it, etc. On the business side, it is a "calculated risk venture" where one takes a chance that their hunches and calculations are correct, in that at the end of the day they will make some profit or at least recoup some of their expenses (sometimes the best one can hope for is to break even without pay for man-hours/labor). It's often a labor of love, or for fame, only. Perhaps: SoftwareDevelopmentIsRiskManagement?
I was thinking more in terms of sub-project decisions, such as DecisionMathAndYagni, not the value of the project itself. Design is largely weighing many trade-offs.
Doesn't "software development" also include later changes? After all, one is "developing" changes. If not, what would be a better title?
As far as the amount of uncertainty, software tends to be higher in that category because the similarity between projects is lower. This is partly due to the fact domain similarities and tool similarities are generally orthogonal. If a software consulting company specializes in say payroll, they still have to deal with myriad different programming languages, libraries/frameworks, and systems. If you instead focus on say Java, then you cannot also specialize in a given domain. Otherwise, your target customer audience is too small.
[[ I don't suppose it would do any good to suggest that software development is software development and that the best way to get better at it is to stop making noise and learn something about it. ]]
You have to know what your goals are in software development. You have to strive to optimize toward something(s), otherwise you make a mess. There are so many ways to do it wrong.
CategoryAnalogy?