We, the devs, like to create software - there is no doubt in this. We put our hearts, our souls in it. That's why we are much more productive when we work on something we really like. And when our creature has success - it is wide used by users - we feel great - this is a great reward for long hours spent in front of the screen :) . But can we know if the piece of the code will be wide used?!
The answer is YES. By simply following this mind flow:
So, does this work? It does, but it is cumbersome to write. And if it is too cumbersome, I already know that I'm not going to use it. I might start doing it, but I would soon give up. Are there ways to ease the pain?
Luca Bolognese (Lead Program Manager for the Visual C# team)
Yes, I know some things cannot be simple :) But this doesn't mean we cannot try to make them simpler.
I remember a short ads... in Discovery channel "Guess the gadget" in which some very complicated inventions from end of 19th century were shown as they are supposed to ease the life. But they were so complicated so you cannot even guess what they do. (How can you used it as you don't know their main use and just for it you need training :) )
So stay with KISS principle or your products won't be used at the end of the day...
And as Albert Einstein said "everything should be made as simple as possible, but no simpler" [wikipedia].