Last week saw the second Progressive F# Tutorials in New York held at the Dumbo loft, a great venue in Brooklyn literally under the Brooklyn Bridge.
The tutorials ran over 2 days with 2 keynotes:
- F# in an Open Source World – Don Syme, Microsoft Reseach
- F# Beyond Windows – Miguel De Icaza, Xamarin & Mono
F# is an open source language with a strong open source community and in his keynote Don talked about how companies and individuals are leveraging F#.
Miguel’s keynote focused on F# in Mono, and how it is now a built-in language in Xamarin Studio allowing F# to target Mac, Linux, iOS, Android and a host of other platforms.
Tracks
The core of the Tutorials is 4 x 4hr deep dive tutorials spread across 2 tracks catering for both beginners and more experienced F# users. This year I teamed up with Rachel Reese and Mathias Brandewinder for 3 sessions on the beginners track.
F# Koans
The first beginner session was the F# Koans with Chris Marinos which is a great introduction to the language. The F# Koans are a set of failing tests that you implement progressively to learn new aspects of the language.
[<Koan>]
let ModifyingTheValueOfVariables() =
let mutable x = 100
x <- 200
AssertEquality x __
In the example above you would write in the expected value for x.
Try F#
In this session lead by Rachel Reese we worked through tutorials on the Try F# site while discussing commercial uses of F#, particularly in Finance
Machine Learning
This session introduced F# in the context of Machine Learning, exploring data sets using a CSV type provider and the REPL. Mathias covered Naive Bayes using a set of text messages to classify as Ham or Spam, while l walked through a Decision Tree based classifier applied to a dataset for the Titanic:
Pacman Kata
The last session of the day was a Pacman Kata which culminated in creating your own behaviour for the Ghosts (or Pacman) inside a WPF version of the game using an API developed by Mathias.
Calling and Extending the F# Compiler
Tomas Petricek and Don Syme gave a deep dive session on the F# compiler. Tomas provided a set of samples that show how to embed the F# compiler into your own applications. During the session I began embedding the F# compiler into my open source spreadsheet project Cellz, so that as well as spreadsheet functions you can write F# expressions inline too:
Next up
The next Progressive F# Tutorials event will be in London on Oct 31 – Nov 1 where we will be returning to the Crypt.
If you’re interested in coming along to the New York event next year Skills Matter have a great early bird discount on at the moment.