logoalt Hacker News

zkmonyesterday at 8:41 PM1 replyview on HN

The attitude with belief that software work cannot be compared with any other work in other domains, is not going to help. There are far more complex projects out there. Complexity is not feature limited to the work artifacts. It could arise from overall context - funding, worker issues, climate, raw material, political factors, technical issues. But still, estimates can't be avoided.


Replies

louthyyesterday at 9:59 PM

> The attitude with belief that software work cannot be compared with any other work in other domains, is not going to help.

I didn't say that, at all. But it is an extreme form of abstract complexity which is different to the more tangible and physical complexity that you might have in say a jet engine. That is not to say a jet engine isn't complex, it is and obviously so; but in many ways I think most people don't fully understand the extreme complexity of a medium to large software project because, on the surface, we've apparently captured a lot of it behind reusable libraries and the like. The reality is much more nuanced due to the fact that most software engineering is not following a technique of provably sound composition of components and therefore complexity emerges and is a sum of its parts. That summing of complexity creeps up on a development team and emerges as bugs, security issues, difficulty in planning, and difficulty in maintenance, etc.

My singular argument is: reduce complexity, improve predictability.

> But still, estimates can't be avoided.

I also didn't state that estimates can be avoided. I ran a tech company for 20 years and I needed to be able to tell everyone else in the company when things are likely to be done. That's just a fact of life.