W3Fools - A W3Schools Intervention (w3fools.com)
We are passionate about the web, learning, and craftsmanship. We want you, as web designers and developers, to be successful in your careers. We feel, though, that W3Schools is harming the community with inaccurate information. Like any other authoritative educational resource, W3Schools should both hold itself to, and be held to, the highest standards.
We hope we can illuminate why W3Schools is a troublesome resource, why their faulty information is a detriment to the web, and what you (and they) can do about it.
~ members of the Front-end Dev Community, January 14th, 2011
57 comments
[ 2.9 ms ] story [ 113 ms ] threadIf I ride on a boring, crappy rollercoaster, I don't need to open up my own theme park in order to air my frustrations.
A lot of the people who worked on w3fools spend a lot of time helping actual other human beings who need support in building websites, and encounter the errors from w3schools regularly, and we invest our time in those and other endeavours. W3schools said "we're going to spend OUR time on building an entry-level reference that everyone can use," and we want
a) the community to be well-aware of its caveats b) it to improve
But launching a frontal assault isn't the way to solve the problem.
I note with irony that the w3fools site displays as a blank page in IE-8 ;<(
You're absolutely right, if they made it something community driven and contributed to, it'd rock! That's why MDC is linked to, it's a wiki!
p.s. ie8 working cool for me :)
Damn, that is awful.
So to attack something that is on the whole good, which may be 99% accurate but not 100% accurate, seems mean-spirited. Someone put a lot of time into this, and it's a shame they didn't do something productive instead of destructive.
Moreover, the site in question, at its very top, suggests some very clear improvements to W3Schools, the most obvious and effective being to convert it into a wiki that will allow for self-correction and keeping the content up-to-date.
They also detail how there have been numerous attempts at building alternatives, but W3Schools retains too much unwarranted Google juice for those alternatives to be viable.
W3C did not invent the term world wide web, www, or w3 - there is no deception.
W3C was founded by (and remains directed by) Tim Berners-Lee, who did, in fact, invent both the term "world wide web" and the actual world wide web.
I originally learned HTML and CSS from the W3 specs, but when I needed a quick reference page W3Schools were usually on the top of the Google search results. I usually spent about ten seconds clicking the link, reading the page, then leaving with the info I needed. Sure, I knew what W3C stood for, vs just plain W3, but I never even thought about the name.
I actually feel pretty bad now: I recommended W3Schools as a beginner PHP tutorial for a non-coding friend, after a StackOverflow thread recommended it. I just used the PHP manual myself, but she was after something friendlier. Don't suppose anyone knows a decent alternative beginners' tutorial which promotes modern PHP practices and will steer her away from shooting herself in the foot?
The people behind this project are also developers and contributors to projects like jQuery, Dojo, Prototype, Chrome Developer Tools, jQuery UI, svgweb, HTML5 Boilerplate...
Attacking this site is like attacking a flyer for being too gimped on information.
[edited for grammar]
As far as I can tell, these guys are dismissing that option because it's too much work.
So as far as I can tell, you're making comments that are wrong because you're not informed.
ExpertsExchange was useful because it had a broad range of obscure technical information, and the ability to get specific questions answered, but it was spammy and a pain to use. StackOverflow came along, took the good parts of that model, combined them with a clean interface and an open community, and won.
W3Schools is useful because it's a good barebones reference that assumes zero prior knowledge of the subject, but it's somewhat shady in how it represents itself, and the information isn't always accurate/complete/up to date. X came along...
As far as I can tell, neither of the two sites you linked, or the parent article, are a good reference for absolute beginners, which is the only thing that will either beat W3Schools or force them to improve.
Setting aside questions of Google rank and discoverability, I suspect the "good resource" will have much more information, will be more correct, but will also be more verbose, may assume more prior knowledge from the reader, and will be less likely to provide instant gratification.
There's a big difference between a good resource for an experienced developer and a good resource for an absolute newbie, and I haven't seen that addressed yet.
The issues w3fools cite are pretty esoteric and/or very nit-picky. For instance:
Uh, yeah, I guess it works just fine in IE8, but it doesn't work in IE6 or IE7, both of which are called 'Internet Explorer'. So saying it doesn't work in IE is technically correct. It just could be more specific.W3schools obviously fills a niche that the W3C isn't filling. Reading a spec for HTML x.x is useful, but not viable when you're trying to get stuff done. W3Schools has gone through the work of reading the spec and turning it into a good reference. Good for them.
Not to mention attempts have been made to contact those behind W3Schools, and nothing has been done.
This alone is the biggest problem - that you think they are somehow related. They are not.
"W3Schools has gone through the work of reading the spec and turning it into a good reference"
No. You're wrong. THIS: http://dmitrysoshnikov.com/ecmascript/
...is a good reference based on a spec.
Or would that make me pedantic?
http://code.google.com/intl/en-GB/apis/analytics/docs/tracki...
Really, as long as you define yourself by attacking such a mediocre institution as w3schools you still have a ways to go.
Google didn't get where they are by pointing at altavista and their crappy search results, they got where they are by doing better.
No 'rallying' required, all it takes is spit and determination. Of course that's a lot harder than bitching.
Really, they're just bitching about the google rankings when you really think about it, because 'they know closures' or something to that effect.
w3schools is ranked highly because lots of people linked to it and it seems to have helped them in some way or other. If you feel that that ranking is not correct then maybe start your own search engine as well while you're at it?
Yes, you can gain a massive audience by telling lies people want to hear i.e. "I can teach you how to be a competent web developer!" They are still lies and they deserve criticism. There are extreme errors on that site that will break you for years and cause a lot of damage. They have a blatant SQL injection bug in their MySQL lesson, for example.
And "I don't see you doing any better" is schoolyard justice. An entry level site that's accurate and current is a fine idea. Someone should do it. That's irrelevant to this matter.
w3schools does not portend to be the 'be all end all' of knowledge about the web or developing on the web. They're just another resource and they probably serve their intended purpose a very large number of the times.
Example code usually does not come with guarantees of correctness or even applicability to your problem. It just shows you the basics. It's the cut-and-paste mentality that causes such samples to be used in production code and that's a real problem, but that problem does not lie with the source of the information.
A MySQL lesson that shows you the basics is explicitly not going to go in to details like prepared statements, sql injection and prevention and so on.
Just like you don't teach physics to a kid that you're teaching to walk.
If you're using w3schools as a source for cut-and-paste examples or even best practices then you're doing it wrong, think of it as the 'grade school' of web development. Good enough to get your feet wet, not good enough to build an enterprise grade web application.
https://developer.mozilla.org/en/JavaScript/Guide
http://www.w3schools.com/js/default.asp
The massive table of contents with words like "inheritance", "iterators" and "regular expressions" or the page with a hello world program and a button you can click to run it yourself?
Sure, the information may be imprecise or just plain wrong, but we have to remember that this is for absolute beginners. Merely having errors does not make w3schools worthless, and a lack of errors does not make alternatives better.
The material on W3Schools is split into bite-sized chunks, along with numerous examples, references, quizzes, try it yourself areas... None of the alternatives suggested are this well organized.
Just think what kind of HTML tutorial could have been created with the time and effort it took to build w3fools.com.
By letting beginners learn most stuff the wrong way, you're not helping anyone, and you put them behind in knowledge that is actually usable and good practice.
> The material on W3Schools is split into bite-sized chunks, along with numerous examples, references, quizzes, try it yourself areas... None of the alternatives suggested are this well organized.
Well organized misinformation is still a bad resource.
It's like saying, "Well, at least we have textbooks! Too bad half of them say the world is only 6,000 years old, but hey! No body's written a better text book than this yet!"
And how is it decent as a refresher and function reference, if it's just refreshing fallacies? Try using something that's actually accurate. In fact, MDC has a pretty decent xpath section: https://developer.mozilla.org/en/xpath
1) http://www.w3schools.com/xpath/ 2) https://developer.mozilla.org/en/xpath
pretty clearly show why W3Schools is capturing so much beginner mindshare.
From 1), it's trivially clear where to start: the link is labeled "Start Learning XPath Now!", and even if you skip that, below there's a linear list of topics. When and if I do click on the "start" link (or the first item in the ToC), I'm greeted with what is very clearly the first part of a walkthrough. Going through the sections, it's all pretty clearly marked, chunked up into easily digestible pieces, etc. Perfect for a first glance through the topic, even though I'll definitely admit that in general W3Schools content leaves something to be desired.
Conversely, from 2), the Mozilla.org page, it's pretty difficult to figure out where I want to be clicking, assuming I know nothing. After I discard the "tools" section as probably irrelevant to learning from scratch about this, I'm left with the "Documentation" column. So far, so good.
The first item in that list says "Introduction to using XPath in JavaScript", which still sounds pretty good, except wait! At the top of the page, it says that XPath is primarily used with XSLT, but this tutorial gives an intro to XPath without XSLT, so that can't be right...why would the special case that doesn't match what people usually use this for be the first item in the documentation list?
And yikes, those other links don't really look like introductions to XPath, either, they look like special topics about XPath. The last link (http://www.xml.com/pub/a/2000/08/holman/) is probably the closest to what a beginner might want, but it's a lot of material, not the ~10 minute introduction to the topic that we'd really be looking for.
It's alright, though. If we poke around at the "Using XPath" link (https://developer.mozilla.org/en/Using_XPath), we find that "Mozilla" (yeah, I'm aware that's a wiki, but you know what I mean...) has a suggestion as to where to go to learn more:
This article does not attempt teach XPath itself. If you're unfamiliar with this technology, please refer to W3Schools XPath tutorial.
Sigh.
This is the biggest problem. When you're an absolute beginner, you don't know what's right and what's wrong, and if wrong things are being presented in the middle of right things, it's impossible to discern the difference. Accuracy should be of the utmost concern for people who are providing information to people who are at the beginning of their learning journey.
"Just think what kind of HTML tutorial could have been created with the time and effort it took to build w3fools.com."
Not a very good one. w3fools came together in about a week of on-and-off collaboration after several months of having an etherpad where people were dumping errors they came across. The effort to create a comprehensive HTML tutorial and then position it in a place where it could counter w3schools is many orders of magnitude larger.
reference.sitepoint.com is a much better reference for anything they cover -- easier navigation, better presentation, and most importantly, more depth and advice on important topics. In a fair fight, it would far outrank W3Schools.
The w3school is a perfect for what it is. Is it reference? No - they don't claim to be. Is it school for beginners? Yes - and the excellent school. The organization is very good, there are examples, etc.
Can somebody make better school which is wiki based? Yes.
They don't? http://gyazo.com/61a797188fa6045b23e6f5cf22006e1c.png