In a nutshell the problem with W3Schools isn't any of the things the author points out. It's in the people learning from it. All good developers get to a point in their learning where they realize W3Schools is all the things the author points out and stops using it or very rarely uses it as a quick reference. That's fine. But then there's a whole other breed of developer who never move beyond what can be learned at W3Schools. They go on to write and share terrible code and teach others the least effective way to do things and that's where the harm in W3Schools lies. These are the same developers you find on Stackoverflow who post questions like "can you give me the code to run a Facebook clone".