Chapter 13. Asynchronous and data-driven programming
This chapter covers
- Programming asynchronous workflows
- Exploring data using F# Interactive
- Defining meaning of types using units of measure
- Processing and visualizing data
We’ll begin with a quote from an interview with Bill Gates in which he talks about the type of programming tasks that he’s interested in and describes the typical scenario when writing the application:
Go grab data from the web, don’t just think of it as text, bring structure into it and then [...] try out different ways of presenting it, but very interactively. [...] Write a little bit of code that may have your specific algorithm for processing that data. [Gates, 2008]
This describes exactly what we’re going to do in this chapter, and as you’ll see, the F# language and its interactive shell are excellent tools for solving this kind of task. We’ll call this approach explorative programming, because the goal is to explore a massive amount of data and find a way to gather useful information from it. We’ll spend most of the chapter working with F# Interactive, because it gives us a great way to “write a little bit of code” with our “specific algorithm for processing that data” and immediately execute it to see the results.