Upload

JavaScript: The Good Parts

GoogleTechTalks GoogleTechTalks·1,782 videos
146,872
312,586
Like     Dislike 29

Sign in to YouTube

Sign in with your Google Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to like GoogleTechTalks's video.

Sign in to YouTube

Sign in with your Google Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to dislike GoogleTechTalks's video.

Sign in to YouTube

Sign in with your Google Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to add GoogleTechTalks's video to your playlist.

Uploaded on Feb 27, 2009

Google Tech Talks
Web Exponents
presented by Doug Crockford
February 27, 2009

blog post: http://google-code-updates.blogspot.c...

JavaScript is a language with more than its share of bad parts. It went from non-existence to global adoption in an alarmingly short period of time. It never had an interval in the lab when it could be tried out and polished. JavaScript has some extraordinarily good parts. In JavaScript there is a beautiful, highly expressive language that is buried under a steaming pile of good intentions and blunders. The best nature of JavaScript was so effectively hidden that for many years the prevailing opinion of JavaScript was that it was an unsightly, incompetent abomination. This session will expose the goodness in JavaScript, an outstanding dynamic programming language. Within the language is an elegant subset that is vastly superior to the language as a whole, being more reliable, readable and maintainable.


Speaker: Douglas Crockford
Douglas Crockford is a product of our public education system. A registered voter, he owns his own car. He has developed office automation systems. He did research in games and music at Atari. He was Director of Technology at Lucasfilm. He was Director of New Media at Paramount. He was the founder and CEO of Electric Communities/Communities.com. He was founder and CTO of State Software, where he discovered JSON. He is interested in Blissymbolics, a graphical, symbolic language. He is developing a secure programming language. He is now an architect at Yahoo! and the world's foremost living authority on JavaScript.

Loading icon Loading...

Loading icon Loading...

Loading icon Loading...

The interactive transcript could not be loaded.

Loading icon Loading...

Loading icon Loading...

Ratings have been disabled for this video.
Rating is available when the video has been rented.
This feature is not available right now. Please try again later.

Top Comments

  • Hairlikecottoncandyy

    that's just straight up trolling.

    · 40

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Hairlikecottoncandyy's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Hairlikecottoncandyy's comment.
    in reply to 6580006247 (Show the comment)
  • John Stilley

    His constructor pattern at 28:19 blew my mind a little. Crap, I need to go refactor all the JavaScipt I've ever written.

    · 19

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate John Stilley's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate John Stilley's comment.

All Comments (232)

Sign in now to post a comment!
  • justgivemethetruth

    OK ... we need to learn Javascript ... BUT ... what is a good book to learn Javascript that does not push you off to some programming environment or library system that is just a layer on top of Javascript? Where is the best most complicated stuff out there to learn Javascript?

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate justgivemethetruth's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate justgivemethetruth's comment.
  • Daniel Tremblay

    Feel the love! I love JavaScript! There: I'm out with it.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Daniel Tremblay's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Daniel Tremblay's comment.
  • Ryan Hirst

    Minute 15 and you already put names to the things that completely baffle/infuritate me about my first run in with Javascript (Geogebra). And the GOOD. Loose typing. Finally. Yes, I want to operate on that. Just, let me say what I mean. The first time I tried to *broop* pass an object that I KNEW could be operated on if only.... and it PASSED... I was so happy I had to stand up and walk around. Finally. I hate being a prisoner of another person's mind.

    Hahaha transitivity table.

    Thank you.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Ryan Hirst's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Ryan Hirst's comment.
  • titegtnodI

    If you're arguing that Java is good for the designers who don't have a team of their own (hobbyists), then I can only agree with you. As a software engineer though, my primary choices would be C, Go, and Python (mainly for prototyping).

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.
    in reply to Alex Reidy (Show the comment)
  • titegtnodI

    Alpha Go, was slower than Java, now-a-days Go sees comparable speeds to C++. I will give you that Java games are often slower at the hands of the developers, a strong example is almost no Java games utilize OpenCL at all, meanwhile OpenCL shows some serious performance increases when implemented correctly. Any programming language or engine that lets a game-designer create something they've envisioned is very good as well (Java being a good example of that).

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.
    in reply to Alex Reidy (Show the comment)
  • Alex Reidy

    Can't deny that C can offer better performance than Java, but Go is slower than Java in most (if not all) benchmarks, and I imagine it's quite immature as a game programming language. I think Java games tend to be slower because the people coding Halo (for example) are some of the best programmers around - true C/C++ hackers. Java lets hobbyists make games.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Alex Reidy's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Alex Reidy's comment.
    in reply to titegtnodI (Show the comment)
  • titegtnodI

    I run most games at 200fps+, I don't run any Java games at more than 30fps (Tested on Windows, Linux, and FreeBSD). Java isn't really designed for heavy loads, it's designed to be extensible and portable, hence the JVM. I can't speak for C++ as I don't really like the language, I prefer C and Go.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.
    in reply to Alex Reidy (Show the comment)
  • Alex Reidy

    Java is actually a fantastic language for game development: Its garbage collection is generally faster than manual GC in C++, and it's much easier to use.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Alex Reidy's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Alex Reidy's comment.
    in reply to titegtnodI (Show the comment)
  • titegtnodI

    Java pretty much is the industry standard for making games these days. I can't argue Java isn't good for prototyping games though. It's when they release said game, with a heavy load, and high memory usage, and never ever ever use another language to improve their game.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate titegtnodI's comment.
    in reply to Trelek22 (Show the comment)
  • Trelek22

    Any language that interests the learner enough and minimizes pitfalls to help with the development process is not a bad example for game development. Just because its not the industry standard does not mean that valuable concepts cannot be realized from making games in Java. If someone wants to learn to program games in Java, there is absolutely nothing wrong with that, and as long as they get a firm grasp on the 'why' things work, the transition to C++ will be relatively easy.

    ·

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Trelek22's comment.

    Sign in to YouTube

    Sign in with your YouTube Account (YouTube, Google+, Gmail, Orkut, Picasa, or Chrome) to rate Trelek22's comment.
    in reply to titegtnodI (Show the comment)
  • Loading comment...
Loading...
Loading...
Working...
Sign in to add this to Watch Later