25 Jul 2015
The typing system is another example of a JS language feature that works very differently than one might naively expect, which this video does a great job highlighting.
The answers to why this behavior occurs can be found over on Stack Overflow
Ryan Dahl’s original Node.js presentation
This is where it all started. If you’re going to be writing Node.js you should watch this video before you do anything else.
Ryan’s thesis that traditional web frameworks do I/O wrong is the core concept behind why people use Node.js. It is essential you understand the Ah-Hah moment this represented to the web development community back in 2009.
Douglas Crockford Yahoo UI talks
One of the things I find most interesting in this talk is the history of the language and how it
was created and named. The way he describes prototypical object inheritance as differential
inheritance (just inheriting the differences) is something I think is helpful in understanding
he also shares a dislike of the
new keyword which is one of my most hated parts of the language
as well, precisely because I’ve been bitten badly by the bug he discusses.
watch to find out why. Also pay attention to his definition and description of closure. I think its
one of the harder parts of the language to articulate and he does it very succinctly. One last thing
to note is where he talks about returning the keyword
this, which is a very powerful trick of the
language and can help you to understand how JS libraries like D3 and JQuery are able to do things
like function chaining.
Flux and React
These next videos are designed to demonstrate some of the exciting new things going on with the UI element of web development. I chose to highlight React and Flux over other great frameworks like Angular or Backbone because I think the React/Flux paradigm feels closest aligned to the functional and event driven worlds that Douglas and Ryan talked about in the previous videos. I think they also have less under the hood magic going on when compared to something like Meteor.js, which makes it easier to understand.