Ever since I got back from Oslo and NDC 2010 last Friday I’ve been very busy. First I had to prepare a presentation for the EPiServer user group that I held on Monday and then I’ve been swamped by work. Oh, and then there’s that little thing down in South Africa called FIFA World Cup 2010. It’s amazing how little you can get done each day if you also have to watch two or three football games.
Anyhow, I thought I’d write down a few of my impressions from this years Norwegian Developers Conference (NDC) while they’re still somewhat fresh in my memory. Below are my main impressions from NDC. If you weren’t able to attend I strongly recommend taking a look at the videos. Patrik Löwendahl has also written some nice summaries of some of the sessions that he attended.
Git is the shit
While I've been experimenting a little with Git and Mercurial I haven’t jumped on the bandwagon yet. Primarily because I haven’t been able to see how distributed version control systems could help me in the types of projects that I’m working on. This years NDC came to focus a lot on this topic for me. Partly because I went with Emil Cardell who’s been using and talking about distributed for quite some time now. Partly because me and Emil had a good discussion about GitHub versus CodePlex with Ben Hall and James Gregory the first night where the only real argument for CodePlex was that it provides a good way to expose single projects as each projects gets it’s own “portal”. And primarily because I attended James Gregory’s excellent introduction session to Git.
After all this talk about distributed, and especially the social aspects of using GitHub, I’m sold! I’ll most likely begin moving my small open source projects to GitHub (EPiMVP is already there) during the summer given that I can find the time.
Document databases are very interesting...
Document databases is another topic that Emil has been talking a lot about lately and that have somewhat peeked my interest. But I’ve been unable to find the time, or perhaps energy, to wrap my head around the topic. Therefore I took the opportunity to attend both Hadi Hariri’s session “CouchDB for .NET Developers” and Rob Conery’s session “I Can't Hear You - There's an ORM In My Ear: Effective Use of NoSQL In an ASP.NET MVC Web Application”. And I’m glad I did. I really feel I’m starting to get a good understanding of their benefits in terms of scalability and ease of use and I hope I can soon find a suitable project to take the technology for a spin. For instance, document databases could be perfect for building a highly scalable Page Provider for EPiServer CMS.
If you’re like me new to the topic I recommend you to listen to the Herding Code podcast with Ayende Rahien about Raven DB, a document database written in .NET.
...but choosing the right technology isn’t everything
After having spent a good part of the first day listening to sessions about document databases and discussing the topic in our little group (consisting of me, Emil and Stefan Forsberg) we had the pleasure of eating dinner with some really smart people. One of them were Sebastien Lambla and we asked him about his thoughts about document databases. He replied by asking us about a scenario in which we would use the technology and we came up with one. The next 30 minutes or so was spent in a very interesting discussion not so much about document databases but rather on why which storage mechanism we choose even mattered. I was a bit tired and slightly intoxicated at the time, but I think the discussion ended with us all agreeing that in many cases we should focus on adding customer value and choosing the simplest solution of all available. If we for instance need performance and scalability and think our database will be the bottleneck it’s still possible that a HTTP accelerator such as Squid or Varnish might be the cheapest and simplest solution.
OpenRasta – a resource-oriented framework .NET
Speaking of Sebastien Lambla we also attended one of his sessions where he gave an introduction to OpenRasta. OpenRasta is a .NET framework for building web applications, just like ASP.NET. In contrast to ASP.NET it really embraces the HTTP protocol, it’s highly extendable and perfect for RESTful web applications. And while it’s a full blown web framework (“replacing” System.Web) you can run it side by side with ASP.NET. I’m not sure I will get to use it in the near future, but just looking at it is an interesting learning experience!
The alpha geeks are moving to Ruby on Rails, again?
If you do a search for ndc2010 on Twitter you’ll find a lot of tweets about Ruby on Rails. To someone that didn’t attend the conference that might seem a bit odd considering that NDC is focused on Microsoft technologies. But there was actually quite a lot of focus on Ruby this year. Shay Friedman had a session titled “Riding IronRuby on Rails” and another one titled “Practical IronRuby”, Ben Hall had two titled “Testing C# and ASP.NET Applications with Ruby” and “IronRuby - A Brave New World for .NET” and Scott Bellware talked about Ruby for .NET developers (video here).
It all culminated on the last day with a .NET Rocks Smackdown (that’s a “panel discussion” in European) about ASP.NET MVC versus Ruby on Rails. The discussion was moderated by the .NET Rocks hosts and the panel was comprised of Rob Conery, Chris Hardy, Hadi Hariri and Scott Bellware. I found the discussion extremely interesting. At the time of this writing the recording hasn’t been published yet but I very much encourage you to listen to it once it’s available on the .NET Rocks site.
What I found particularly interesting was the different histories that RoR and ASP.NET MVC has. Whereas RoR was born out of a need ASP.NET MVC was born to stop the alpha geeks of the .NET community from leaving in favor of RoR. ASP.NET MVC was successful with that for a while, but there seems to be some momentum towards RoR again now, at least if you look at the tweets produced the days after NDC 2010 :-)
NDC is one hell of a conference
This was NDC’s third year and the second year that I attended. Last year was a real eye-opener for me and set me off on a route of discovery that lead me to find out so much about software development that I hadn’t thought about before. Naturally this year wasn’t quite as transformative but it was almost equally great in other respects. I got to talk to, and learn from some really smart people, consolidate some of my existing knowledge and dive deeper into technologies that I haven’t quite had the time to look at before. I truly believe that NDC is one of the best, if not the single best, conferences in the world for free thinkers within the Microsoft based development community. Scott Bellware has posted a great post about why. Do read it, and do attend next year!
Hopes for next year
I really, really, really, seriously, very much hope that I get to attend next year as well! Apart from my own attendance I also have a few wishes for next year:
- Ayende! Ayende Rahien had a few sessions last year and I really missed him on the speaker roster this year.
- Jeremy D. Miller is another speaker from 2009 that I missed this year.
- Even more British speakers. I’m not sure why, but many of the speakers that were new this year that I enjoyed listening to where from Great Britain. Another British speaker that I would like to see next year is Steven Sanderson, the author of the by far best book about ASP.NET MVC.
- More panel discussions. The ASP.NET MVC vs. RoR panel discussion was one of the highlights for me this year. I’d like to see at least one interesting panel discussion per day next year.
- Don’t interfere with midsummer! Last year the final day of the conference coincided with midsummer's eve, a holiday that is holy in Sweden. This year it didn’t and, me being a family man these days, I’m praying that it won’t next year either.
I’ll end this post by quoting James Gregory: “If there’s one conference you should go to next year, make it NDC 2011.”