JavaScript Wizardry from Douglas Crockford

As a computer scientist who cut his teeth with Lisp, C, and Java, I’ve been skeptical of JavaScript for years. As a result, I kept my distance and remained ignorant of JavaScript’s deeper features. All of that changed when I found Douglas Crockford‘s videos. Crockford is brilliant, practical, and inspiringly candid about JavaScript’s shortcomings. I highly recommend the following videos to anyone who wants to understand the history, present and future of JavaScript, the world’s most prevalent, and most hated, language.

Though I disagree with ECMA’s goal not to break existing JavaScript content, since it ties the web to a burning platform, I am more confident in the future of JS and the future of the web knowing that Crockford has a hand in it. He’s a computer scientist’s computer scientist.

the big picture: origins, future directions

deep into functions

In which we meet closures, scope, patterns, macros, “the strangest artifact in computer science”, and more.

Anything you can write with variables you can write without variables. You can use a function closure instead to do the same thing… Suppose we had a language in which we didn’t have variables, and in which we didn’t have assignment, and we didn’t have named functions, could you still do recursion? And it turns out you can. Here is the strangest artifact in computer science. It’s called the Y Combinator… If you can figure this out, you can call yourself a computer scientist… In terms of increasing your powers as programmer, this is the stuff to be playing with. You can get really, really deep.