What's wrong with W3Schools

  • I started learning how to program around a year ago, and one of my first and best resources was W3Schools.

    I think the authors of this document are missing the point of the site entirely, it's not about being 100% correct on all issues, it's about teaching people that have never seen code before what HTML JS and PHP is all about. They do that very very well - take it from someone that started from scratch primarily using W3Schools.

    For people who use this site it doesn't much matter that all edge cases aren't covered, and that everything isn't entirely correct in the literal sense. What matters is that the content is accessible for Noobs. Here's an example from the linked Google doc: "If you declare a variable within a function, the variable can only be accessed within that function. When you exit the function, the variable is destroyed.

    The whole concept of closures doesn’t exist at w3schools..."

    when you're trying to figure out how to write your name on the screen 100 times using a loop closures aren't really that important... The general gist I get from it is that the people who wrote it don't really know what starting programming is like for normal people. It took me ages to figure out how to get javascript to execute in my HTML since all the documentation I could find was way above my level. W3Schools taught me. W3.org isn't a resource for beginners. "html5 Conformance Checker (alpha)", and "Game Development with JavaScript and the Canvas element" isn't really going to help people that are trying to make sense of the <P> tag.

    W3Schools might be out of date, might have inaccuracies, and might not explain things fully, but it's exactly the right thing for absolute beginners.

    Pease respect that.

  • > Goals: Shame.

    This is a very interesting discussion, but shame should not be a motivation or goal. W3Schools' company is a business and despite the somewhat lackluster quality of their output, improving the status quo, not shame, should be the real motivation behind this form of activism.

    If you think you can do better while still remaining perfectly accessible to newcomers please do so, but live and let live, especially when the strongest accusations against the company are far from illegal or unethical. (Their certifications may be useless, but they aren't unethical, since they are not misrepresenting the entity issuing the certifications.)

    StackOverflow managed to replace Expert-Exchange through quality and good ol' promotion, not through sabotage.

    In my opinion, an effort to come up with such a replacement for W3Schools (or enabling an existing one to become much more prominent,) is far more noble, useful, and worthwhile than a W3SchoolsSucks.com or TruthAboutW3Schools.com could ever be.

  • I'll probably be downvoted, but...

    The Mozilla docs are not a good alternative. They are not well organized, and they are opaque to anybody new to a technology.

    I have no doubt the content is complete and accurate, but it is painful to use.

  • Please, to anyone so passionately critical of W3Schools:

    Write highly-accessible tutorials that teach the way code _should_ be written.

    Until that happens, noobs will continue to rely on W3Schools (and perhaps Tizag.com) for learning the all-important first steps for programming.

    I have almost zero formal education with programming. Thanks to W3Schools and Tizag, I was able to get started and eventually become a technical co-founder of a startup.

    Looking back, here are some of the most important things I learned from these two sites:

    -HTML renders into a readable web page

    -Server-side code ultimately renders into HTML

    -The source for server-side code is private

    -The source for client-side code is public

    -You need a database to store data (not so obvious!)

    -You can organize code in certain ways to make your life easier (eg. writing functions)

    -The very basics of OO concepts

    Without W3Schools or Tizag, I _never_ would have learned these concepts. No one was going to sit down and teach me, nor was I going to magically deduce them.

    Bottom line: W3School lowers the barriers to entry for learning how to program. This can only be good for the startup ecosystem, and ultimately, for the economy.

  • I'm getting "You need permission to access this item"

  • "W3Schools.com is absolutely not affiliated with the W3C." so who else had no idea? I'd always just assumed they were... heh.

  • undefined

  • Anyone got a mirror of this? Google Docs just tells me "You need permission to access this item."

  • I didn't realize that to be legitimate, a certification had to be associated with an educational institution. Now I'm curious. What educational institutions are Red Hat, Cisco, and Microsoft certifications associated with?

  • undefined

  • That document now says you have to request permission to access it. Flagging.

  • undefined

  • > We certainly do not advocate that anyone use w3schools as a reference or place to learn techniques.

    The way the criticism is presented is childish. W3Schools is the most accessible introduction to web technologies that I've ever seen. It assumes absolutely zero knowledge. When you're literally just starting out, this is a big deal. You don't give a damn about standards, you just want to create and make cool things to show to your friends. It's a jumping off place. Criticism of W3Schools as a reference I have no problem with; clearly there are extensive inaccuracies, but telling beginners to learn HTML/CSS/JS from MDC is equivalent to telling them to RTFM.

  • I don't think that this is good that you are doing. W3Schools are good resource for great many people and if you can make it better, please do, but they are genuinely helping a lot of newbies learn the ropes. I agree with post of acangiano here completely. Focus your energies elsewhere, this is not productive.

  • Let me just add, aside from foolishness of this idea, only good thing is list of good resources, like mozilla's developer corner which I love for good javascript explanations.