For September we’re very honored to host Daniel Mohl, Microsoft MVP, who will be discussing Windows Phone 7 Development with F#. Keep an eye here for more details.
The Next F# SIG meeting will be 6:45 on July 20 at the Microsoft Office in Southfield, MI. I’ll be hosting a simultaneous Skype feed for those who join us remotely.
Chris Marinos, Microsoft C# MVP, will be joining to discuss the F# Koans which are a way of learning F# via a series of programming problems.
Kudos to all the fine folks who organized the Lansing Day of .Net. What a truly excellent tech event.
For the July F# SIG meeting we’re pleased to have Chris Marinos joining us to discuss the F# Koans.
From Chris’ blog:
Based on EdgeCase’s fantastic Ruby koans, the goal of the F# koans is to teach you F# through testing. The F# koans are part of the functional-koans project which is a collaboration among Clojure, Haskell, Scala, Python, and Scala developers to create a koans projects for functional languages.
I’m looking forward to working with Chris to learn more about F# via the Koans. Feel free to join us via Skype if you can’t get to Southfield.
July 20, 6:30 PM at the Microsoft Southfield Michigan Office.
I’ve got a few excellent F# books which are surplus for me. If anyone wants them, just drop me a line via Twitter DM or post a comment or do something. I’m going up to Lansing Day of .Net so if you want these books, let me know and I’m bring them with me. Great books but they’re just surplus for me right now:
Expert F# (NB 1st Edition of the book. Some of the material is a little outdated but most of it is good.)
Foundations of F# (Again superseded by a later edition but again basically sound and well worth using as a starting point).
So I’ve been considering the question of how to get more people to adopt F# (and functional in general) for their production work. One thing I think all of us need to realize is that we’re unlikely to get our companies to drop C# and their investment in that language overnight. Too many dollars sunk into that particular language to make it go away quickly. That doesn’t mean it won’t ever go away—it just isn’t going to happen tomorrow.
The better question in my mind is how we get companies to realize there are some real benefits to coding in functional. And given discussions with other developers, I think the answer is relatively simple; to paraphrase my friend Joel Hawkins, it’s the old question of how you move a camel into a tent when the door is too narrow. You start out by getting him to squeeze his nose under the tent wall and then work in from there.
Those of us who advocate for F# and functional programming in general need to figure out what that “camel’s nose” can be in our organizations. Some have suggested using unit testing as a starting point. Others have suggested coding certain libraries in F# to replace existing C# libraries. I know most of the objections I’ve heard to adopting F# (and functional) are the same objections that I heard when people started using C++ and then Java. ”It’s too hard to learn” they’d say or “I can’t find other developers to maintain that code”.