This document discusses patterns and practices for building real-world, event-driven microservices. It recommends that microservices be built using the F# programming language to gain benefits like increased productivity, expanded feature sets with discriminated unions and type providers, and more readable and concise code. It provides guidelines for building microservices functionally by avoiding state changes and side effects, isolating side effects, and using an external service to control the microservices' lifecycles.