Given a sufficiently strong type system, you can model your problem domain in such a way that invalid states become unrepresentable. This is one of the corner stones of encapsulation, but requires a lot of effort in mainstream object-oriented languages. In functional languages like F# and Haskell, on the other hand, this is possible using a purely declarative approach to types. Once your types can guarantee that only valid states are representable, Property-Based Testing becomes a breeze.
In this talk, we'll look at using the powerful combination of F# types and properties to address an example problem.
One in 4 virtual machines in Azure run on Linux, and that means several customers are already running enterprise-grade Linux solutions on Azure. In this session, you'll see a demonstration of the key features you use and need, like Azure Resource Manager and Linux virtual machine extensions, and best practices for running Linux and open-source software solutions based on several customer deployments.