This week I had the pleasure of getting to attend the DotNetFringe conference. This was hosted in Portland, OR (a place I had never been) and it was an outstanding conference. Thank you to all of the organizers for putting on such a great event.
I have been a long time fan of OSS and I’m always looking to learn about new ways of doing things. One of those things that I have been thinking about lately is what are the next big changes in software development, specifically for .Net usually. What is the next IoC container for .Net applications? After watching a talk on Reactive Extensions by Amy I continue to be convinced that those who really understand functional programming and state management will be making the systems that I want to work on in the future.
I’ve been playing in Clojure for the last year or so and it has really changed the way I see software. Early this year I started porting all of my build scripts to FAKE (F#) and I can see how powerful F# is and the beauty it brings. I’m also watching with rapt attention the developments on the client side in terms of react.js and the various ClojureScript projects that take this model to the next level. These projects seem to really take something that is normally quite messy and make it simpler. My ability to reason about my F# and Clojure projects is an order of magnitude better than my OO projects from 3 years ago (because my current OO projects have larger doses of a functional aspect to them).
I think that this all dovetails nicely with the discussion around different forms of state management on disk as well. Looking at tools outside of the traditional RDBMS and looking at Graphs and Document databases.
State brings with it a lot of difficulty, its one of the reasons why I like working on Websites more than Native applications. But with these new tools coming about, maybe I should give it a second look.
Thanks again to the entire team running DotNetFringe!