Best Practices: When to (NOT) Use Asynchronous Programming
code.jonwagner.com