If there is one thing that is true about business it is that there is no "perfect", only "good enough". All business would love to be slick, with minimal waste, hard-working and intelligent employees, cost-effective suppliers etc. but this never happens.

If you look at famous and successful business people across the industries and the world, whether Lakshmi Mittal, Bill Gates, Jack Ma or Elon Musk, their lives are not pefection, they have all experienced failure and bounced back. You could even say the difference between them and many others is either luck or determination to do whatever it takes to succeed.

However, many forums dedicated to software development are very negative. Someone releases a new prototype or idea for something and more often than not, everyone jumps down their throat, "why wouldn't you have done this?", "someone else already does something like this", "Your UI didn't work in Safari" etc. These come from logical people who see the world like software, the code either works or it doesn't, your product is either perfect or it is terrible.

I think some countries are worse than others. The UK, where I live, is a cynical nation in many ways. We talk with fondness about how great it was when Isambard Kingdom Brunel built great infrastructure but then moan when the government talk about building a new High Speed line. We complain that improvements are never made but when they talk about improving traffic around Stonehenge by creating a tunnel, all of a sudden, the government are evil and are risking damage to the heritage site. We want a nation of entrepreneurs like Bill Gates but we already have James Dyson and others and he is too strict, too old, too rich, too something.

I think the negativity is so harmful and creates an environment of extreme elitism. The only people who will risk voicing an opinion are those who are so highly experienced or obnoxious that creates a narcississtic echo-chamber or people who like to pat each other on the back and where negativity gets up-votes ("Google hates privacy", "The NSA are watching you", "Anyone who doesn't use algorithm XYZ for cryptography is an idiot") and those who want to be productive get drowned out in the noise or even get downvoted, "I don't think that Google privacy is that bad", "I don't think we know that the NSA are watching us like you say", "There is a balance in choosing any software element".

I would love to see more encouragement for the parts of the industry that we desperately need more people to join and then apply suitable warnings around "don't invent your own cryptography", "use these recommended texts for introductions to software", "Your system looks like this other thing I saw, what do you see as your USP?". Maybe then people wouldn't be afraid to ask questions that might seem stupid or challenge the status quo.