Open Source and .NET at MonkeySpace 2012

I flew to Boston last week to attend MonkeySpace, a community-driven event dedicated to open source software projects in the .NET technology ecosystem. The Mono stack is obviously a prominent part of that landscape, but the conference attendees came from a wide range of technical backgrounds—reflecting the diversity of the broader .NET community.

I enjoyed many of the talks that were given at the conference, particularly Chris Hardy’s introduction to iOS 6 features, Michael Hutchinson’s MonoDevelop tip walkthrough, Aaron Bockover’s overview of the Vernacular localization system. The MonoGame session, which was presented by Dean Ellis, also included one of the highlights of the event: an XNA demo running on the ARM-based Raspberry Pi Linux computer.

Dean Ellis showing a MonoGame demo on the Raspberry Pi Linux computer

Videos of the conference sessions will eventually be published online and made available for download. You can, however, already get the slides and code samples from many of the sessions. Nic Wise, who sadly wasn’t at the conference, put together a helpful blog post with links to a bunch of the conference material.

Mono 3.0

Miguel de Icaza used the MonkeySpace opening keynote to announce the release of Mono 3.0. The news was warmly welcomed by the conference attendees. Mono 3.0 introduces compatibility with C# 5.0, including much-anticipated support for the language’s new asynchronous programming capabilities. Mono 3.0 also has a number of important enhancements under the hood.

Miguel introducing Mono 3.0

SGen, the generational garbage collector, has seen further improvement and is considered ready for widespread adoption. Mono’s compilation architecture was overhauled, allowing the various C# profiles to be supported in a single, unified compiler. IKVM was adopted as the default code generator, replacing Reflection.Emit. For more technical details about Mono 3.0, you can refer to Miguel’s blog post, the official release notes, or the excellent coverage by Sean Gallagher at Ars Technica.

Open source and the .NET community

Mono 3.0 adds several libraries and frameworks that Microsoft has released under open source software licenses, including Entity Framework and the Razor HTML templating library. Microsoft’s decision to make these libraries available under suitable terms is a big win for the community.

I had an opportunity to meet several noteworthy figures from Microsoft at the event, including F# luminary Don Syme and Bob Familiar, the regional Microsoft evangelism chief. I’ve recently worked with Bob in my capacity as a Xamarin evangelist, so it was a pleasure to meet him in person. Microsoft seems to increasingly understand the importance of fostering and engaging with the open source software community around .NET.

GitHub’s Phil Haack, who I had the pleasure of meeting at the conference, wrote a great blog post last week that captures the importance of collaboration. He highlights the important role that Xamarin, the Mono project, and the open source software community can play in helping .NET and C# achieve their full potential.

A slide from Miguel's keynote

Phil’s blog post also describes MonkeySquare, the non-profit organization that backed the MonkeySpace conference. Phil is a member of the MonkeySquare board, alongside Scott Hanselman, Joseph Hill, David Nielsen, Dale Ragan, and Louis Salin. If the success of the MonkeySpace event is any indication, I think that MonkeySquare will have a very bright future. Dale, who served as the MonkeySpace event organizer, did a fantastic job.

MonkeySpace is the first event that I’ve attended since joining Xamarin as a developer evangelist. I’m looking forward to meeting even more developers next week when I fly to Redmond for Microsoft’s BUILD conference.