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.
Two self-proclaimed “Server Huggers” will take you along their journey of how they overcame their apprehension of Cloud technologies to level up their IT Skills. In other words bringing clarity to the role of the IT Professional in a cloud world. This two part demo heavy session provides practical real world examples of how to replicate and extend an existing on premise infrastructure to the next generation of Server and Cloud - opening the door to simple, predictable and scalable IT solutions that put the IT Professional back in control. Part Two: Find out the real world difference between using your own big room of blinky lights or extending to the cloud.