Ascending from Callback Hell with JavaScript Promises

Promises, everybody's favorite way of sanely managing asynchronous code, have recently landed native implementations in Chrome and Firefox. I'll talk about what they are and why they're great, and how you can avoid ever having rightward drift like this:

```
   foo(function(){
     bar(function(){
       baz(function(){
         quux(function(){
           console.log('help me');
         });
       });
     });
   });
```

I'll talk about what the native implementations bring to the table, and summarize some of the popular promises library already out there.