Book Sketch

Over the past couple of months, I’ve been getting more involved in the Node.js community: writing more Node code, building apps, and getting familiar with the ecosystem.

As a developer, it’s really interesting getting familiar with a new language / framework / community. There’s a lot to learn: the language, ecosystem, tools, best practices and idiosyncrasies.

When it comes to mastering these, there’s really no substitute for experience and time. And, while I’m not exactly “at home” in Node yet, I’ve been reading through various resources trying to educate myself more, and reach that nirvana-esque state of development where everything comes naturally.

As I’ve been going along I’ve been putting a small reading list together, which I thought I’d share. Here’s my Node reading list!

Books

I read a lot of tech books. While some people learn best through hearing or trying something, I tend to learn best through reading.

With that in mind, here are my favorite Node books.

First up is Douglas Crockford’s classic book, Javascript: The Good Parts.
It’s widely considered to be the best text on modern Javascript, as it covers exclusively the parts of the language that you should be actively using.

Javascript is a big language, and it has a lot of quirks. This book teaches you in a very clear and concise way exactly what language features you should be using, and why.

I’ve read this book several times over the past few years, but after getting more involved with Node I’ve come to realize how critical it is for any Javascript developer.

When you’re spending a lot of time writing server-side Javascript, you’ll be a lot better off armed with the knowledge from this book. There are a lot of language “gotchas” which make knowing the language very well a necessity for good Node development.

The next book I’d recommend to new Node developers is The Node Beginner Book. It’s a very simple and straightforward introduction to Node for developers who’ve primarily used Javascript on the front end, and never really messed with it as a backend language before.

What I really enjoyed about this book is it’s tone: it’s leisurely, enjoyable, and incredibly useful for new Node developers. It covers all Node basics, and gives you a good feel for basic usage. It’s definitely worth buying and reading over a weekend.

Sites

Another great way to get a good “feel” for a new language / framework is to keep up with popular sites.

How to Node is a popular Node community blog which publishes articles on a variety of Node related topics:

  • How to do something in Node.
  • Common gotchas.
  • What something is.
  • Why something works the way it does.
  • Introduction to a specific tool / concept.

I’ve found many of the articles extremely simple and useful — you might too!

NPM Awesome is a really great blog written by Alex Gorbatchev in which he reviews various npm modules.

I find NPM Awesome to be a great resource for learning what new Node modules are coming out, what’s good about them, what’s bad about them, and more generally: what stuff I should look into using.

It’s quickly become one of my favorite resources for discovering cool new stuff on npm and finding ways to sneak it into my projects >:)

Mailing Lists

There’s really only one mailing list you should subscribe to, and that’s node weekly. It’s a weekly email list that does an amazing job of finding relevant npm modules, node articles, and generally interesting node information.

It’s 100% worth signing up for, no question.

[Disclaimer: Stormpath has sponsored node weekly in the past. Because it is awesome.]

Podcasts

I usually do a lot of driving in the Bay Area (going from event-to-event), and have gotten in the habit of listening to a few podcasts to make the commuting more bearable.

nodeup is the only real Node podcast I’m familiar with — but it’s pretty great. The show covers:

  • Node core development.
  • Node modules.
  • Chatting with various Node developers.
  • Thoughts on various programming techniques / strategies.

Overall, I’d say it’s a really great podcast (particularly if you’re interested in learning more about Node tools and practices). The only downside (to me) is that episodes are roughly an hour each, which is longer than I want to be in the car.

It’s very casual, however, and easy to listen to.

Exercises

Although I don’t normally do exercises, I’ve spent some time playing around with various hands-on Node resources.

node school is without a doubt, my favorite hands-on Node resource. It’s an interactive command-line-driven lesson / tutorial in which you’re given some instruction, then sent off to write your own Node programs which it’ll then verify for correctness.

Not only are the exercises incredibly fun, but also very well written and sufficiently challenging.

If you’re going to give node school a try, I suggest you block off several hours of time to sit down and go through the exercises without any distraction.

Wrap Up

I hope this list has been of some help — if you have any other recommendations, please leave a comment below!

And if you’re interested in easy user management for your Node app, please checkout Stormpath or jump right in with our Node.js 7-Minute Tutorial .

Happy Hacking!
-Randall