Wednesday, May 14, 2008

Introducing Google Doctype



The open web is the web built on open standards: HTML, JavaScript, CSS, and more. The open web is a beautiful soup of barely compatible clients and servers. It comprises billions of pages, millions of users, and thousands of browser-based applications. You can access the open web with open source and proprietary browsers, on open source and proprietary operating systems, on open source and proprietary hardware.

Google has built its business here, on the open web, and we want to help you build here too. To that end, we are happy to announce the formation of an encyclopedia for web developers, by web developers: Google Doctype.

In its current (beta) form, Google Doctype contains dozens of articles written by top Googlers on topics important to all web developers: security, performance, caching, DOM manipulation, CSS styling, and more. It contains over 8,000 lines of JavaScript code: Google's own battle-tested JavaScript library, released today under a liberal open source license. And it contains the beginnings of a test-driven reference of the open web: a reference of every element, every attribute, every DOM method, every CSS property, all backed up by test cases.

Well, not quite every property; at least, not yet. We're still working on filling in a few of the details about the world's largest development platform ever, and we need your help. And so we humbly offer this fledgling encyclopedia under a Creative Commons Attribution license, and we invite the web developers of the world to contribute to it. Sign in with your Google account and edit any page, any article, anywhere. Create new ones, update old ones, and help expand the world's understanding of the open web.

31 comments:

  1. Very cool. I look forward to the future of this and I will perhaps add some references of my own! thanks for your hard work

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. Let me start by saying it seems like a great resource, and I appreciate the time and effort that I'm sure went in to getting this up (not to mention writing all of that code in the first place). One issue though, having to include a 20 line copyright notice any time I use some code seems a bit overboard. It's one thing to require attribution if I'm republishing something or downloading an entire script; it's another to require it when I cut and paste 10 lines of code.

    ReplyDelete
  4. The sample code is stored in Subversion; instructions on downloading it are here: http://code.google.com/doctype/downloading.html

    I will endeavor to make that more clear in each of the individual articles that reference sample code.

    ReplyDelete
  5. Oh, I will absolutely be using this. Thanks to all involved!

    ReplyDelete
  6. Amazing tools. I left my Organizational Behavior class this evening...after giving a group presentation on Google. I logged in to see what was new, after the Doodle4Google vote. Thank you Mark Pilgrim for giving me a foot in the door of something big. My father would be proud of me, at one time he was a Fuller Brush Man.

    ReplyDelete
  7. Thats a cool tool. Congrats.

    ReplyDelete
  8. I don't see how these 8000 lines of code do anything besides bloating the application and causing compatibility problems.

    How can one make a simple two-column page with tree widget *so complicated*? It doesn't have to preserve any state, it doesn't have to do partial updates of the content pane.

    Why don't you use standalone pages (with normal non-javascript links) and dynamically load subtrees of the index in the left column?

    ReplyDelete
  9. very cool news for developers

    ReplyDelete
  10. Wikipedia of Code. I don't like how the examples open in the same page, it breaks the convinence of it.

    ReplyDelete
  11. brilliant - thanks a bunch

    ReplyDelete
  12. google rules by serving !

    ReplyDelete
  13. Very cool, fills up a need that every web developer has.

    However, on the Doctype homepage it is stated that all content falls under a Creative Commons 3.0 BY license, but the footer at every page still states '(c)2008 Google'. That's a bit confusing imho...

    ReplyDelete
  14. That will do!

    I love how the css properties include browser compatibility notes and everything! Thanks! It will definitely help.

    ReplyDelete
  15. Good stuff, Looking forward to browsing through the stuff. The only thing I find funny is that Mark Pilgrim calls Safarai a tier 1 browser? Huh? In what way?

    ReplyDelete
  16. Wow. THANK YOU!

    The resources on XSS alone make this invaluable. It's an excellent guide for web developers!

    It's amazing that it takes a Google to make this information comprehensive and easily accessible, with explanations in plain English! There's a lot of information out there on this topic, but usually confined to summaries, that can be uh, summed up as, "validate input".

    Thank you - did I say that already? Thank you for all your hard work.

    ReplyDelete
  17. This has great potential, but editing appears to be broken. I edit a page while signed into my Google account and get either a 500 error or an update collision error (when clearly there is no collision).

    ReplyDelete
  18. Wow! It has potential but there is definately a lot of building to do. We'll see where the growth is in 2-3 months.

    ReplyDelete
  19. Looks promising but... the layout is really awful, and doesn't seem like it could grow to a wikipedia level, mainly because the layout is really forced.

    The first articles are to google centered,I can understad that, but by example, if you say how to do that thing, and it relays to some google code, include the code in the page it self is really awkward, maybe a different page for that google code library would be better and the "how to do that" page could be named "how to do that with google library", but where would you fit that in the fixed hierarchy?.

    Looks promising but currently you lack the freedom of others "Knowledge base solutions" a.k.a. mediawiki

    ReplyDelete
  20. Muy bueno siempre google imnovando

    ReplyDelete
  21. I tried to edit Javascript window.close and the system let me to write but not to check in. But I obtain an error about another user editing at the same time and check it in before. I neither see my changes nor other user's.

    Needs to get better.

    ReplyDelete
  22. I think it's great that Google is stepping up and building a cross-browser repository of web developer documentation. However, I am concerned that the documentation appears to be significantly incomplete and also has many errors. For example, the compatibility table for every single HTML element listed appears to be wrong, this is just one of many errors I spotted with only a cursory examination.

    In addition, the Google JavaScript library appears to be rather quirky and a lot of the code I looked at seems to be poor quality.

    While I hope Google Doctype succeeds in becoming a world class reference, but in its current state I cannot recommend either the documentation or the JavaScript library.

    I filed some of the bugs I found here, but there seemed to be so many basic problems that I couldn't justify a thorough review or the resources to test things myself and fix the docs.

    http://code.google.com/p/doctype/issues/list

    ReplyDelete
  23. This comment has been removed by a blog administrator.

    ReplyDelete
  24. This is excellent! Finally the developers of the world are uniting for a great cause which will make all of our lives easier. Look forward to learning and contributing.

    ReplyDelete
  25. @Brad Fults: i have the same problem. It either takes ages to update a page (easily around 2-3 minutes) or i get 'collision errors'.

    ReplyDelete
  26. Dear Mr. Pilgrim,
    could you perhaps make doctype required reading for people coding at Blogger? From what I have seen so far they seem to be pretty clueless.

    Alternatively point them to my blog for some introductory reading.

    Of course they would already know about their lamentable shortcomings if they read their own "somethings broken" forum.

    ReplyDelete
  27. why I have this error?
    403. That’s an error.
    Your client does not have permission to get URL /p/doctype/wiki/Welcome?tm=6 from this server. That’s all we know.

    ReplyDelete