The Language - Syntax is different than most imperative - Took days to grok basic syntax - Felt productive w/in a few weeks - Can use all of .Net framework - Interop sometimes awkward - TDD is great - Light stubs, no explicit interfaces
Deployment - Pre-existing Windows servers - server-farm for listeners - internal-tools for api - Templates exist for TeamCity - Operationally equivalent w/ all other .Net warez
Tooling - Visual Studio - F# Power Tools are great - Rename, import, navigate to - ReSharper mostly absent - Weak refactorings - F# dotnetcore is not ready for prod
Learning - Some strong resources - fsharpforfunandprofit.com - Pluralsight vids \m/ - Good Google hits - Still growing in our proficiency - Language still has untapped potential
Who might like F#? Likes FP and… - .Net - ops equivalent, all libs - Strong types - no wild dynamic code, sum types - Safety - immutability by default, total functions - Type inference - modern convenience - Expressive functional constructs - pipes, function composition, auto curry, pattern matching
What now? - Finish Prism BC - Determine if there’s enough org interest to support this and future F# projects - Move F# from “investigate” to “avoid” or “adopt” - Profit