I've been using Node for over three years. In the beginning I looked for callback helpers like Async and tried everything I could find. Like many I settled into using vanilla callbacks. It has not been a problem.
Back then I checked into promises and they looked promising (sorry). The simple examples looked great. But then I read a number of write-ups about promises and they would quickly make them appear complex and painful to learn. Even blogs saying "Promises look complicated but here's a simple explanation" would then quickly present complex explanations.
I've just started using selenium with the node driver. This solution pretty much forced me to use promises. In one day I now feel comfortable with them and look forward to trying them in my apps. But this is the key point: I still don't understand the last half of the promises tutorials and they still look complex to me.
I used javascript as a front-end developer successfully for years with little idea what closures and other advanced topics were and I didn't care. I learned the subset that worked for me and I was happy. Actually I think this flexibility is one of the strongest features of JS. Even with my current limited understanding of promises I am now using them effectively like I did javascript. I'm writing lots of selenium code with promises and love it.
I think there should be introductory cookbooks that just tell you how to chain lines using `then` and put the error-catching `then` at the end. The hardest part would be explaining how to get library functions to return promises. There could be a cookbook for that also.
If I had a cookbook that just told me what to do and what benefits I'd get then I would have used promises years ago. I would have learned them in depth while using them, which is the only way I learn anything in depth.
http://kolodny.github.io/blog/blog/2014/04/23/future-proof-y...