Every Node-newbie should read and understand the chapter on Control Flows (http://book.mixu.net/ch7.html), particularly the async for loop. This tripped me up with my little node app (http://urlpipe.com) before I refactored it to use recursion (and then eliminated the problem by using Redis Pipelining).
But it still strikes me as one of those "think differently" parts of Node