I read the express.js source quite a few times. I wanted to reason out how one goes from raw node to something like express. I found it well written, but to really understand it I found myself making toy versions of each functionality.
http://www.nickstefan.net/blog/view/express-under-the-hood