SO is a source of information, indeed, nobody is arguing that. I have used SO plenty of times, there is plenty of good and useful stuff there, but why is it there and not in the documentations? What happens when you take SO away? When you’re at the white-board or without internet. That’s my point. SO is now practically 33% missing bits of docs, 33% code snippets, and 33% utter crap. Most of those code snippets are fairly basic things just repeating over and over again in different forms, and guess what? Many of the answers were given by people who took the time and learnt the language, the libraries and the frameworks properly. Nobody is against libraries and frameworks, nobody is against not recreating the wheel, but when software developers end up not understanding what is being copy-pasted, we get exactly what you are saying — the state of programming we are in today, which is dismal. SO is not teaching. Teaching starts from understanding the basics, even how the initial wheel was created so that you don’t have to, and you know what? If any programmer finds that discouraging, they should stop programming today, because they lack the core requirement for being one in the first place.