This document discusses best practices for developing cloud services on Windows Azure. It recommends: 1. Storing state in Windows Azure storage and using loose coupling between components through queues to improve reliability given unreliable networks and hardware failures. 2. Versioning schemas and using rolling upgrades to minimize downtime when deploying updates. 3. Separating code and configuration, using configurable logging and alerts, to aid in debugging when things go wrong in the cloud.