Video: Douglas Crockford, “An Inconvenient API: The Theory of the Dom”

By YUI TeamOctober 20th, 2006

Update 20 October 2006: This video was originally posted with no link to the slide deck that Douglas uses in the talk. That deck is in PowerPoint format and can be downloaded here.

Douglas Crockford is Yahoo!’s leading JavaScript Architect. He has written extensively on JavaScript and has been among the protagonists of the JavaScript developer community for more than a decade. Douglas is the discoverer of the JSON data format and a frequent contributor to YUIBlog.

At Yahoo!, Douglas has been teaching a series of classes on the JavaScript programming language. These classes bear his unique style and perspective and benefit from the depth of his insights into the language and its application in the browser. We’re beginning to make some of this content available internally on video and thought we would share it here as well. Please note that this is “user-generated content”, not something created by the fancy and expensive studio where they make The 9 — this is the work of Yahoo! engineers simply trying to get interesting, free perspectives out there about the discipline of frontend engineering.

As always, Douglas’s ideas and perspectives are his own, and the many flaws in videographic craftsmanship are mine.


  1. Three really good video’s. I normally never watch video’s, because information exchange rate is normally very low, navigating video’s is poor (you don’t get a track list). But these three video’s are really worth it.

    One question though. Are the slides by any change available online?

    Also one addition. I found out IE’s method HTMLElement.cloneNode also clones event attached with HTMLElement.attachEvent. This does not happen with HTMLElement.addEventListener. So if you use cloneNode, afterwards you need to detach the copied events to prevent memory leakage.

  2. Any chance of posting the slides?

  3. Sorry for not including the slides on the initial post. They are available here. -EM

  4. How can i download the videos and watch it in other players?

  5. Regrettably, Yahoo! Video does not currently support playback in external players. -EM

  6. These videos are flash, how can I save the streamed .swf files of these videos?

  7. Douglas Crockford, Theory of the DOM…

    Douglas Crockford presents “An Inconvenient API: The Theory of the DOM” in a three part video series at Yahoo!. Depending on how you look at things this is either really exciting or really depressing :-)
    Javascript has been making a monste…

  8. Yahoo video …. I understand eating your own dogfood, but come on. Flash must be the most unportable media format in existence.(excepting ActiveX of course)

    Since there was a Save Video option, which I assumed would let me save the video in a sane portable format, I had to signup. So I created a yahoo Id, what a horrible experience that was. And the Save Video link keeps redirecting to the flash player. Gah! Talk about Yak Shaving with nothing to show for it.

    Could you maybe post these videos in a standard format in a more accessible place?


  9. With regards to type=”text/javascript”, Douglas says that this attribute is ignored when the script is in an external file, and recommends not including that since the official mime type for JavaScript is not currently supported in any browsers. However, the W3 HTML 4.01 spec states that this attribute is required. The only reason, then, to include it would be to remain “valid”.

    Do you forsee any problems with continuing to specify the type as text/javascript?

  10. Requiring an ignored attribute is not the only mistake from the W3C.

    If you leave the attribute off, every make of browser will do the right thing. That is the real standard, and ultimately, the only standard that matters.

    Strunk said “Omit needless words.” Vigorous writing is concise.

    text/javascript is not an approved MIME Media Type, nor is it ever likely to be one. Do I foresee problems? Naturally.

  11. [...] …hier gibts Videos als Dreiteiler vom Mr. Crockford zu “Theory of the DOM” [...]

  12. The flash video format keeps crashing my browser. I could watch the video for about 20 minutes and then things really started to slow down. I thought it was a problem with my browser (FF 1.5). So I upgraded to FF 2.0 and the video still crashed it.

    Crockford’s presentation is great and it will help a great deal if it is available in an alternate format.


  13. I attended the talk at Yahoo Hack day. I sure wish I could attend the entire series of classes!

  14. [...] Douglas Crockford’s An Inconvenient API: The Theory of the Dom – 3 videos: 31, 21, and 26 mins. Yahoo!’s leading JavaScript Architect, he has written extensively on JavaScript and has been among the protagonists of the JavaScript developer community for more than a decade. Douglas is the discoverer of the JSON data format (tags: DOM Videos) [...]

  15. [...] I expect Crockford to be an excellent moderator – I always enjoy his wit, and he definitely knows his stuff. If you want to see him in action in advance, and learn a ton about the DOM in the process, watch his three-part 78 minute presentation called “An Inconvenient API: The Theory of the Dom” hosted on our YUI Blog. [...]

  16. It is our honor to have Douglas Crockford served as our moderator of Browser Wars Discussion. If you enjoy his video, you would enjoy our Feb 28 event.

    Browser Wars: Episode II Attack of the DOMs

    A world-famous movie like Star Wars can’t survive in history without a soundtrack. A world wide web event like Browser Wars won’t shine without a theme song. Our theme song is the soundtrack from the movie High School Musical – We’re All In This Together. This song is chosen to express the fact that Web Builders and Browsers must work together to make innovations for the future.

    What: Browser Wars: Episode II Attack of the DOMs
    When: Feb 28, 2007 Wed 6:00pm
    Where: Yahoo Building C, 701 First Avenue, Sunnyvale , California 94089
    Who: Douglas Crockford, Architect at Yahoo & Founder of JSON (Moderator & Host)
    Chris Wilson, Group Program Manager of the Internet Explorer Platform at Microsoft
    Mike Shaver, Director of Ecosystem Development at Mozilla Corporation
    Håkon Wium Lie, CTO at Opera & Founder of CSS
    Lou Gervais, Founder of Silicon Valley Webguild & Technical Development SIG (MC)

    Required Registration:

    Our Theme Song: We’re All In This Together from High School Musical Movie Soundtrack

    6:00pm Registration/Networking
    Exhibits/Complimentary Refreshments
    7:00pm Session I – Technical Presentations
    Chris Wilson – IE
    Mike Shaver – FireFox
    Håkon Wium Lie – Opera
    7:30pm Session II – Browser Wars Discussion
    9:00pm Q&A/Giveaways

  17. [...] This morning I’ve been watching a series of videos put out by Yahoo! regarding Javascript. While I consider myself pretty adept at Javascript these days, the first video gives you a great intro to some of the basic concepts of Javascript. For example: [...]

  18. [...] created by Yahoo! JavaScript Architect Douglas Crockford (“Advanced JavaScript” and“An Inconvenient API: The Theory of the Dom”). Today I’m happy to announce that Douglas’s more foundational talk “The [...]

  19. [...] door Yahoo! JavaScript Architect Douglas Crockford (“Advanced JavaScript” and“An Inconvenient API: The Theory of the Dom”). In deze presentatie, die eigenlijk bedoeld is als het begin een 3-delige cursuscourse  [...]

  20. Excellent videos, I like it.

  21. [...] Video: Douglas Crockford, “An Inconvenient API: The Theory of the Dom” [...]

  22. The links to videos no longer work. :(
    I was only able to watch the video embedded here, how do I get hold of parts 2 and 3.

  23. I cannot find video 2 and 3. Are they hosted at some other place? i would appreciate if you could point me to the new location. thanks -Sagar