The parting of Linux and Mono

As .NET's sun sets, its open-source counterpart Mono may be fading on Linux, too.

On Wednesday, I wrote about the coming of HTML5, and how it could affect the future of desktop app development on the Linux platform. What I didn't realize--really--was that at the same time, Microsoft was previewing Windows 8 at the D9 conference, which featured... HTML5 (among other things).

For an open source guy like me, that was kind of awkward.

[ Windows 8's 'immersive' UI: What we know so far ]

Specifically, the new Windows 8 interface is a more tile-based interface that relies heavily upon HTML5 and JavaScript. Here's how Julie Larson-Green, Corporate Vice President, Windows Experience described it:

"Today, we also talked a bit about how developers will build apps for the new system. Windows 8 apps use the power of HTML5, tapping into the native capabilities of Windows using standard JavaScript and HTML to deliver new kinds of experiences. These new Windows 8 apps are full-screen and touch-optimized, and they easily integrate with the capabilities of the new Windows user interface. There’s much more to the platform, capabilities and tools than we showed today.

"We are excited to bring an innovative new platform and tools to developers and see how their creativity jumpstarts a new generation of apps. Windows 8 apps can use a broad set of new libraries and controls, designed for fluid interaction and seamless connectivity. Apps can add new capabilities to Windows and to other apps, connecting with one another through the new interface. For example, we showed today how a developer can extend the file picker control to enable picking from their own app content or from within another Windows 8 app, in addition to the local file system and the network."

Quick, did you catch what was missing?

If you are a Windows developer, I'll bet you did: there was little to no mention of .NET technology in the Windows 8 hoopla, and quite a few Windows developers are more than a little angry about the whole thing. Microsoft's response has been for everyone to wait and see what happens at the SHARE conference in September. As you might imagine, that has done little to mollify most observers.

Someone who saw this coming was Scott Barnes, Microsoft Silverlight Product Manager, who basically started the whole debate last summer about the future of Silverlight, the Windows Presentation Foundation (WPF), and .NET with a July broadside about Microsoft's "shiny object syndrome" and then a series of tweets and blogs in September lamenting the death of WPF.

So now, there's a whole lot of .NET developers out there who are wondering what they are going to do with all their experience. If I were a smart aleck, I would suggest they come to the Dark Side of Linux and work on Mono (and yes, we also have cookies).

True, that is indeed my standard mode of operation, but in this case I must suppress my natural smart-assery because I am not sure where Mono stands with Linux.

Here's where things are now. The SUSE business unit of Attachmate says that Mono will remain a part of SUSE Linux moving forward, and yet they turned around and fired the US-based Mono team, which presumably included Miguel de Icaza, who came to Novell when they bought Ximian in 2001. This has led many people to question just how far SUSE is really going to push Mono.

Meanwhile, de Icaza has formed his own startup, Xamarin, which will keep working on Mono and commercial .NET stacks. But here's something interesting: the Xamarin home page highlights .NET development for iOS and Android, not Linux. There's a cursory mention of "bringing your favorite .NET languages to the platforms you want to target," but that seems like Xamarin, like SUSE, seems to be hedging it's Mono bets.

Given the ruckus that Barnes and other .NET developers raised last year, it may be possible that Attachmate decided to cut continued Mono development, having seen the writing on the wall that HTML5 is indeed going to be a big part of interface development. That makes Xamarin's choice of platforms clearer: .NET for mobile platforms is the one area that is expected to continue, according to Microsoft, which has explicitly stated that Windows Phone 7 will remain focused on .NET, WPF, and Silverlight tools.

(Now you can see why the Windows developers are so upset. Imagine working on apps for the most widely used platform on the planet and then being told your favorite toolset may only build apps for Windows Phone 7. Ugh.)

If this is Microsoft's ultimate plan, then Xamarin is being particularly savvy. If .NET experts are going to have to make a choice, they are either have to stick with Windows 8 and learn more HTML5 and JavaScript or shift to a mobile platform. I can easily see where iOS and Android being a lot more attractive than WP7. Since, you know, they're actually platforms that are selling.

What we could see, then, is a migration of .NET-skilled developers coming to open source Mono--but not necessarily Linux. SUSE could make a play and grab some of these people, but if the overall desktop market is really moving towards HTML5 (or crazily, Flash and Air), SUSE may hold back.

If this is how things shake out, these are signs that, more than ever, web-based apps on desktop and nettop machines are going to be the rule rather than the exception. Native apps will never go completely away, but their importance may be diminished as the interfaces they run on shift towards web-based technologies.

ITWorld DealPost: The best in tech deals and discounts.