Five Patterns to Help You Tame Asynchronous JavaScript | Hacker News Reader