Full Stack F# – Teaser

The JavasScript in South Africa conference (JSInSA 2014) is nearly upon us (Saturday 31 May is the big day), and I will be presenting on Full Stack F# – From the Server to the Browser with Strongly-Typed Functional Programming. Here is the blurb from the conference website:

Microsoft's F# has come a long way since it was first developed as a project by Microsoft Research. Since then, it has become a first class citizen of Visual Studio, has Xamarin Studio support has been open sourced (accepting contributions), as well as achieving great popularity (Up to position 13 on the current TIOBE Software Index for May 2014).

Come and learn about the benefits of using a strongly typed functional programming language at all levels of the web stack (All the way down to the browser – with real time messaging provided by Signalr, as well as charts in d3js and highcharts.js).

With this in mind, I thought I would give a little bit of a teaser and introduction to the talk.

Background

The idea for the talk came to me on a lazy Sunday afternoon after watching Mark Seeman’s (@Ploeh) Pluralsight video on “A Functional Architecture with F#”. The conference twitter account (@JsInSA) had just tweeted that they were open to accepting proposals for talks and on the spur of the moment I decided to enter the topic. Obviously, as I am writing this post, the talk was selected for the conference and so I started to come up with an idea of what I wanted to demo. I knew that to keep it relevant to the conference target audience, I wanted to use FunScript (F# to Javascript compiler), and use F# on the server side, but I needed something that would look flashy and make for a good demonstration of the power of F#. I decided to create a web application that parses and provides some charting over twitter stream data, you can see a screenshot of the app running below, or you can go checkout the demo here (currently, it is tracking the following text on twitter – fsharp, csharp, dotnet, visualstudio - so if you don’t see anything, tweet using one of those words and then you should see something happen).

Getting Started with Full Stack F#

Assuming that you are using Visual Studio, to get started you will probably want to get the following Visual Studio extensions: