An Ode To W3Schools
jonkuperman.com
jonkuperman.com
> They Appear Affiliated With The W3C
> For those in the know the W3C is the World Wide Web Consortium, it is an international organization that governs the web. W3Schools rides off the notoriety of that name despite being unaffiliated. Is that really a complaint? How many _Java_Script developers are out there that think this is an issue?
I think this is my biggest issue with W3SChools and he just kind of brushes it off.
Masquerades of this kind have always been a pet peeve, such as how all Blue Moon materials try very hard to present it as a microbrew, when its a Coors product. People think they're supporting some small company, and Coors is intentionally duping them.
JavaScript, by the way, was a name change based on a mutual co-marking deal. W3School's name is not.
> [about Wikifying] Again, I’d love to see it happen – but that doesn’t mean it should happen.
Funny, I just edited the MDN today. It is a far better resource, wiki-fied, with no ads, and Mozilla is always looking for helpers. If you'd love to see it happen, help it happen.
https://developer.mozilla.org/en-US/
"It's the Web. You drive."
(In traditional HN fashion I'd like to write an Ode to the MDN post, alas I haven't got the time tonight!)
To me, W3 is simply a popular abbreviation for WWW, like "dub dub dub". When you think about it, at 9 syllables WWW has probably the highest word-length to syllable ratio out there.
They may not be the most accurate or comprehensive, but the low barrier to entry is EXACTLY what newbies are looking for.
Imagine if you were using a calculator to help calculate dimensions for a house. But unknown to you, 1 in 20 calculations you make came out with an answer that was 10% out. Is that calculator useful because 95% of the time you get the correct answer, much faster than you could have found it yourself?
It's really surprising to me, with abusive tactics like that, that Google hasn't penalized their page rank.
In my book, that's unforgivable and they won't get any slack from me until they fix it.
Of course magic quotes caused problems with excessive escaping in DB fields leading to some developers explicitly de-escaping values before adding them to the DB.
And looking a little closer, even in the most reputable sources, you can found XSS and especially CSRF vulnerabilities aplenty.
People should not get security advice from a beginner's tutorial anyway, even if it covered XSS, it would have tons of other problems.
I refuse to use the site. This behavior should not be encouraged. If you would like an alternative, I highly recommend the Mozilla Developer Network. (https://developer.mozilla.org/en-US/)
_Webdev Begins_
Sitepoint
Slightly outdated, but perfectly succinct and accurate reference to HTML, CSS with EXCELLENT notes on common pitfalls. All new webdevs should start here.
* http://reference.sitepoint.com/
Things that you must learn about CSS * box model
* floats
* positioning
* margin collapsing
Eloquent JavascriptAn easier to read book on JS.
* http://eloquentjavascript.net/contents.html
MDNTheir resource on Javascript is a must read basic reference for all new JS developers.
* https://developer.mozilla.org/en-US/docs/JavaScript
_Webdev Returns_How that you have a basic, but solid understanding of HTML, CSS and JS, you should start learning the more advanced stuff:
More practice on CSS positioning
Google css positioning, read anything besides the w3schools results, such as this:
* http://www.alistapart.com/articles/css-positioning-101/
Vertical Alignment * http://css-tricks.com/what-is-vertical-align/
Stickyfooter * http://lazylegs.info/articles/sticky-footer.html
Shrink-wrapping floats * http://haslayout.net/css-tuts/CSS-Shrink-Wrap
How to deal with IE * http://haslayout.net
_Webdev Rises_HTML/CSS/JS design patterns
* http://www.alistapart.com
* http://css-tricks.com
* http://addyosmani.com/resources/essentialjsdesignpatterns/book/
* http://ui-patterns.com
Browser inconsistencies reference * http://www.quirksmode.org
* http://caniuse.com
HTML5 * http://diveintohtml5.info
* http://html5doctor.com
CSS3 * http://css-tricks.comOften I see people link to MSDN or Mozilla's developer network when asked for how to learn web development, and all I think to myself as I see that is that if it were me, I would just quit. The content is explained in a way that's just not user friendly for someone who wants to learn for the first time.
For comparison sake:
https://developer.mozilla.org/en-US/docs/HTML/Element/articl...
http://www.w3schools.com/tags/tag_article.asp
With the exception of the "try it yourself" link, the MDN page has everything the W3School's page has, and then some, as well as being more accurate as it contains version numbers, links to the spec, as well as related usage notes.
link: http://www.google.com/reviews/t screenshot: http://cl.ly/image/2l2r3f3y1a3x
If you want to learn about the history of the Holy Roman Empire then Wikipedia is great. The relevant primary sources are numerous, and many of them are probably written in languages you can't even read. But if you want to learn about web development, the primary sources of documentation are few, easily found, and authoritative.
If you want canned solutions to your problem, look to StackOverflow. W3Schools can die in a fire.
The thing that is more annoying than w3schools is that if you tell Google to always exclude w3schools results from your searches, it won't. So I have to manually append "-w3schools" to every.webdev.search.I.do.
The HTML quiz[1] they recommend to prepare for the certification test includes questions like:
5. What is the preferred way for adding a background color in HTML?
* <body background="yellow">
* <body style="background-color:yellow">
* <background>yellow</background>
(hint: none of them) 10. How can you open a link in a new browser window?
* <a href="url" target="_blank">
* <a href="url" new>
* <a href="url" target="new">
(hint: two of them)[1]: http://www.w3schools.com/quiztest/quiztest.asp?qtest=HTML
target="_blank" opens a link in a new browser window every time.
target="new" opens a link in a browser window called "new". If a window of that name exists it uses it, if it doesn't exist it creates a new window.
(Assuming the browser doesn't override or circumvent the opening of links in something other than the current window)
Incidentally while the company was a total sweatshop the job turned out to be a fantastic opportunity. I was able to work with a broad array of technologies in a professional setting and build my professional network. I am now a senior developer for a fantastic company that's helping make the world a better place.
It's that it's so consistently mediocre, and at the same time, so prevalent.
We need not accept this. The task that they're trying to achieve can be done so much better.
For naysayers that believe that better options exist in the space for newbies, perhaps they could provide links to these resources.
W3SCHOOLS
AN INTERVENTIONhttp://www.impressivewebs.com/web-development-search-results...
Then people can post corrections and examples.
They can disallow links if they are worried about spam.
For instance , i want a fast sum up of regexps with Javascript : the W3School shows a short table with the main keywords , that's all i need. It's like a cheat sheet.
MDN is verbose ,badly written , accurate maybe, but i dont want 50 exemples on Proxies or Generators , i dont care about them.
Now i agree , the name is confusing , there are errors , but until folks at Mozilla learn to write a usefull resource , i'm not going to read their wiki.
2 other good refs : the blackberry javascript ref is great, and the MS javascript ref is good too. Mozilla JS ref is just dreadfull.
There is good reason why W3School is popular, because it written for humans.
For example:
- http://www.w3schools.com/tags/canvas_drawimage.asp
- https://developer.mozilla.org/en-US/docs/Canvas_tutorial/Usi...
In my experience, wiki programming/documentation resources, with a handful of exceptions, are horrible, abandoned places.
Most are are made into wikis because they didn't have enough content in the first place, and there was some misguided notion that the users will just "jump in" and create it.