Happy F# Day!
Last year, I wrote a post called “Happy F# Day”, explaining why I thought F# needed a “birthday” that we could celebrate as a community.
Here we are one year later! I’m going to promote that date (April 12th) again, and use it an excuse to review what has happened in the last year in the world of F#.
And a lot has happened in the last year. Here’s my personal take. Apologies in advance to anyone or any project I forget to mention – there is so much going on!
First, my (entirely anecdotal) impression is that F# is now being perceived as more mainstream, and that interest in F# from C# developers (and others too) has increased slowly but steadily throughout the year as more and more developers have become exposed to it.
There is an interesting phenomenon happening at Xamarin. Whenever one of our engineers starts working with F#, they tend to embrace it and stay there. – Miguel de Icaza
Just to take two recent examples, Miguel de Icaza promotes F# on reddit and gets upvoted. And the viewing figures for F# videos at fsharpConf are in the 20,000 to 40,000 range – pretty impressive I think.
F# seems to be represented at almost every .NET conference now, and last year saw the first specialist conferences: F# Exchange in London (with the second one happening in a few days), F# Gotham in New York City, and the global, online, fsharpConf.
Stack Overflow did a developer survey this time last year. According to those developers F# is the best-paying .NET language in which to program and also the most loved. Sadly, it’s only 3rd in lovability this year but still one of the best paid! :)
The launch of companies like Jet, with its decision to use F#, and Tachyus (“we are using 100% F# to build the back end of our platform”) also helped to show that F# is no longer a risky choice.
Another reason for the wider acceptance of F# is that the F# tooling is becoming very solid. For example:
- The (now indispensable) Paket had its v1 release just under a year ago.
- Ionide rapidly become the solution for those who prefer Atom or VS Code as their editor. And emacs and vim got some love too!
- Web development in F# got a lot of attention, with Suave becoming very popular (even promoted by Scott Hanselman), Freya 1.0 being released, and a major release of Websharper. The new Fable FS-to-JS project is getting a lot of traction too.
- Other tools and libraries in the F# ecosystem continued to improve, including Visual F# PowerTools, data science with FsLab, property based testing with FsCheck, documentation using FSharp.Formatting, presentations with FsReveal, builds with FAKE, distributed programming with mBrace, concurrent programming with Hopac, logging (Logary), profiling (PrivateEye), cloud IDE (Cloudsharper), and many, many more. Apologies if I missed your favorite!
- And of course, F# 4.0 was released, which also marked the shift to a fully open and collaborative development process.
Of course in the .NET world, the big news has been Microsoft’s embrace of open source and cross-platform code. Soon, we hope, F# will be running on all platforms using CoreCLR, fully supported by Microsoft!
Microsoft gave F# some love at this years Build and even sat David (from the F# team) next to Mads (from C#)!
The Xamarin team have always been great fans of F#, supporting it as a first class language. And now that Xamarin Studio has a free Community Edition, there are no barriers to F# developers who want to build mobile apps.
On the educational side of things, the F# Software Foundation became a proper non-profit at the end of 2015, and with all that paperwork out of the way (thank you Reed!), could start doing things. The FSSF started a mentorship program in March, and just recently launched a speakers program.
Also fsharp.tv got funded via Kickstarter, and Pluralsight doubled the number of F# courses it offers – more evidence for rising interest in F#.
I’ll also add a shameless plug for a very useful F# book that came out this year: “Machine Learning Projects for .NET Developers” by Mathias Brandewinder.
As always, the F# community was amazing. The number of people blogging and tweeting about F# seems to be growing all the time.
Testing the just-phrased hypothesis that any tweet with an #fsharp hashtag gets a like or a retweet.
— Dima (@UniqueDima) January 29, 2016
This really hit home for me when I saw the amazing number and quality of the posts for the F# Advent Calendar 2015 in English and Japanese.
Community for F# continues to do sterling work – it seems like they are hosting an F# video every few days!
And of course, where would we be without the essential F# weekly.
My heartfelt thanks to all the people who have created the blogs, videos, tools and code mentioned above, and the many hundreds of other people who have made the F# community so great.
And of course, a special thanks to Don Syme, who this year was awarded a very well deserved Silver Medal from Royal Academy of Engineering.
This was a great year for F#. I have a feeling that next year will be even better.
Happy F# Day!