Comment by einhverfr

11 years ago

I think you have to define "they" here when you say "they understand the value of open source."

There are a lot of people at Microsoft who really do understand the value of open source. When I worked there ten years ago, there were plenty who did. When I wrote interop papers as an outside consultant in 2007, I worked with a unit that did.

But Microsoft also has a bunch of real problems that make it hard for them to realize this value, and so their options in going into it are somewhat limited. They can't pivot and become a services company because their whole Microsoft Partner network would be turned upside down. So they enter services in some key areas where their partners can't. It's a very delicate process, and it means for many on the administration side, the value of open source software for Microsoft is not as high as it would be for some other firms.

Nonetheless this is huge. Open sourcing the VB.net/C# compiler effectively means the possibility of an Linux port, which means that .net has the possibility to become write once, run anywhere even if the whole class libraries are not open sourced yet. This is a gamble for Microsoft because it reduces the barriers to moving from Windows to other platforms (Linux, OSX, BSD, etc).

Outside of my 9-5 work, I've probably deployed nearly as much C# code (via Mono) under Linux as I have under Windows. In a few ways it's been very nice, in others a bit frustrating. I think that if MS Dev-Div buys out Xamarin, we'll see where things are really headed here. It will either be a new era of OSS tools from MS, or back to the old "kill it for cross platform in v.Next" ...

I'm hoping that the tooling and integration gets a lot better in *nix, but nod sure how the Mono license (MIT iirc) and this new C# license (Apache) will jive together.

Personally, most of my new dev for the past couple years has been in node.js (which has its' own niceties and quirks).

  • > I'm hoping that the tooling and integration gets a lot better in *nix, but nod sure how the Mono license (MIT iirc) and this new C# license (Apache) will jive together.

    The MIT license is a lot more permissive than the Apache license. However I see no reason that you can't have different components under each license which work together harmoniously. If nothing else, the MIT license can be easily changed without consulting other contributors because of the sublicensing grant.

It's obvious to me that they see their future as providing an integrated toolset between development and the cloud. They want to build tools that let you push code direct to Azure, and they're becoming more agnostic about whether or not that is a microsoft stack code or other code.

They renamed it from Windows Azure to Microsoft Azure to remove the windows connotaiton - specifically mentioning that 15% of all Azure deployments are Linux OS. So I would say that this is where they see the future, although there are still some very byzantine sales processes to go through to buy enterprise azure, because of the existence of the partner network. In that sense, they're almost like the car manufacturers forcing you to buy through a dealer for their direct-to-consumer products.