Optimization vs Demand

Why is software development so slow? Why do projects, features or whatever we want to implement take so much time to release?

Here is an idea for one simple reason - we do a lot of things that are not necessary even though there are no reasons for that. We tend to over optimize rather than just to take a look at the demand. I noticed this correlation between our effort and demand from my experience.

We should spend more time trying to understand the demand and ask such questions:

  • Can i make a mock up to validate my assumption?
  • Do i need to optimize my website for 100k visitors? Or maybe i can just set proper monitoring to see when things need my attention?
  • Can i implement simple edit form first and move to a more complex workflow only after users try it?

p.s. it’s all assumed that all best technical practices like automated testing and continuous delivery are in place. Otherwise this must be a reason why you are slow.