X
Tech

Developer hearts and minds

As I careened among sand dunes at Oceano park in a colleague's 1968 Toyota Land Cruiser, tearing up steep slopes and spinning around bowls in a fashion that, were I to stop, might cause me to tumble sideways into a ditch, I couldn't help but wonder about Microsoft's motivations for signing a deal that will help to promote Novell's SUSE Linux distribution. Okay, that's not really true.
Written by John Carroll, Contributor
Christophe's 1968 Land Cruiser
As I careened among sand dunes at Oceano park in a colleague's 1968 Toyota Land Cruiser, tearing up steep slopes and spinning around bowls in a fashion that, were I to stop, might cause me to tumble sideways into a ditch, I couldn't help but wonder about Microsoft's motivations for signing a deal that will help to promote Novell's SUSE Linux distribution.

Okay, that's not really true. The subject occupied about a thirty second comment, and what really occupied my thoughts was trying to keep sand out of my eyes and mouth. Besides, Dana Gardner pretty much identified the reasons in a brief blog post - plus poll - describing how Microsoft just became one developer's hero by furthering the goal of making it easy to write .NET applications that run on both Windows and Linux.

That poll is fairly interesting. Granted, self-selecting polls have issues, and the stats changed a bit over the course of the day (the Visual Studio ranking was around 70% when it only had a 1/3rd as many votes, versus where it was when I last checked it, which was around 50%), but one thing is still very clear: the notion of building applications in Visual Studio that deploy to either Linux or Windows interests developers greatly, even though "use of open source tools" or "write a Java application" are viable alternatives.

That doesn't surprise me in the least, because it reflects something I've been harping on almost as long as I've been writing articles for ZDNet. Microsoft makes really good development tools, and futher, .NET is really good technology.

If developers were given the option to use Visual Studio to build their applications for Linux, a lot of people would jump at the chance (not everybody, so please don't pipe up in the Talkbacks with "I won't," as if YOUR example is enough to obviate completely any trend).

I pointed out in my previous post that Linux is more a threat to traditional Unix than Windows. That makes sense, as Unix skills are more directly transferable to Linux than to Windows. Given that, a Microsoft strategy that makes it easier for people who target a Unix operating system to use a Windows development technology helps to get those developers on-board with the "Windows way of doing things." Furthermore, it seems a lot of people are open to using Microsoft tools to target Linux.

This creates an opportunity for Microsoft to attract people in the Unix domain to the Windows domain - or at least gain a lot of influence in the technologies they use for development - while selling developer tools to companies that write applications for Linux (which is a credible share of the server market) and making Microsoft developer technologies even more valuable to the Windows shops that already standardize on it. They get to make their .NET applications target Linux, essentially at no additional cost (well, apart from testing, though that may be less of an issue as Microsoft and Novell work more on "interoperability"), adding that platform to the many platforms (all currently Microsoft's) upon which some variant of .NET currently runs.

Will Microsoft port Visual Studio to Linux? I doubt it. Would Microsoft make it easy to write applications that can run on Mono - or a runtime they release atop Mono to support .NET 3.0? Highly likely, at least in my opinion (and no, I don't happen to have any red phone that dials straight to the Microsoft competitive strategy team even though I work for Microsoft, so take this as "my opinion").

Lest this sound like a one-way benefit for Microsoft, let's not forget that enabling Linux to tap into the huge pool of Windows developers benefits the Linux platform. Furthermore, Visual Studio and .NET ARE very good products, and making it easier to use them atop Linux is good for the platform.

I've described Mono, Novell's open source .NET runtime, as a "bridge" over which Windows developers might walk. Clearly, however, bridges are bi-directional, and Windows developers can walk across that bridge to the Unix programming domain just as easily as Unix domain programmers can walk to the Windows side.

Obviously, both sides in this agreement hope that the flow will go more their direction than the other. Consider, however, another possibility, which is more in line with what normally happens when bridges are built. The bridge merely serves to accelerate traffic across the bridge in BOTH directions, leading to a flow that increases visitation to both sides

Basically, the .NET bridge could end up increasing applications for BOTH Linux and Windows, letting the good ideas in both cross-pollinate the other. That already happens with .NET ports of technology common in the Unix world. That can accelerate if Microsoft commits to spreading .NET to Linux. It would give them a lot of influence in the cross-platform market for applicaton development frameworks, while at the same time benefiting the platforms to which it spreads.

Win-win, in my opinion.

Editorial standards