Here are some resources for learning javascript and node
- JS for Cats
- Smashing Node.js
- Node - Up and Running
- Real-Time Web with Nodejs I haven't tried it so I'm not sure how good it is
If you do start doing some asynchronous javascript work of any sort the following are very useful
A very short list of some of the good modules out there
- Express - Web framework like Sinatra https://github.com/visionmedia/express
- Request - Http requests https://github.com/mikeal/request
- Q - Promises https://github.com/kriskowal/q
- Optimist - Options parsing for command line apps https://github.com/substack/node-optimist
- Anything by Substack https://github.com/substack https://github.com/substack?tab=repositories
- Bunyan - Logging https://github.com/trentm/node-bunyan
- Restify - web framework for building APIs https://github.com/mcavage/node-restify
- Passport - Authorization/Authentication http://passportjs.org/
- Mocha - Test runner suite (http://visionmedia.github.io/mocha/)
- Chai - test assertion library (http://chaijs.com/api/assert/)
Streams are one of the most powerful features of node.js. If you are processing large amounts of data and you are not using streams, you are probably doing it wrong.
- Basic Streams Overview
- [New streams api examples] (http://strongloop.com/strongblog/practical-examples-of-the-new-node-js-streams-api/) In
node version 0.10
node.js switched to a new style of streams. These examples from strongloop are very useful in understanding how streams work innode version 0.10
- Node Stream Adventure Good interactive tutorial about working with streams in node.js
In JavaScript, as in all languages, there are good design pattersn for your code *Essential JS Design Patterns