Microsoft launches .NET Foundation to expand open source efforts

Microsoft has recently embraced open source software projects more and more, which is something that would be unthinkable at the company just a few years ago. This week during BUILD 2014, the company announced a new effort, the .NET Foundation, that greatly expands the number of the company's programs to the open source software community.

The official announcement states that Microsoft wants to have the .NET Foundation "serve as a forum for commercial and community developers alike to strengthen the future of the .NET ecosystem by promoting openness, community participation and rapid innovation." As its first step towards that goal, Microsoft has released 24 .NET related programs to the open source community, under the Apache 2.0 license.

One of those programs is Microsoft's new .NET Compiler Platform that goes by the code name "Roslyn". It has a number of APIs designed to expose the Microsoft C# and Visual Basic .NET compilers via a "compiler as a service" design.

Microsoft Open Technologies will continue to develop and support all of the projects that are a part of the .NET Foundation. Third party company Xamarin will also contribute six of its own projects to the .NET Foundation.

Source: .NET Foundation | Image via Microsoft

Report a problem with article
Previous Story

Microsoft's anti-malware team to have new adware rules July 1

Next Story

Microsoft showed off new Windows 8 car concept during BUILD 2014

10 Comments

Commenting is disabled on this article.

Dotnet cross platform support is sketchy at best compared to established languages like C, C++, Java, Python, etc. Then there's the thorny issue of patents, which I'm not comfortable with considering Microsoft's aggressive assertion stance.

If you're exclusively developing on Microsoft platforms, it probably won't be a problem. But in today's world of multi-platform patent unencumbered and, free and open source technologies, I don't see the point in investing time and resources into proprietary and vendor lock-in platforms like Dotnet.

simplezz said,
Dotnet cross platform support is sketchy at best compared to established languages like C, C++, Java, Python, etc. Then there's the thorny issue of patents, which I'm not comfortable with considering Microsoft's aggressive assertion stance.

If Microsoft had a problem with it then they'd be all over the Mono project, which is also open source by the way. (Extra bonus, you can also use other languages with it too, including C++ and Python.) Runs on pretty much everything under the sun too, not sure how that classifies as "sketchy" or "vendor lock-in." Not sure why you say Java is ok, when it's got all sorts of patents too, but Microsoft's obviously the evil one.

simplezz said,
Dotnet cross platform support is sketchy at best compared to established languages like C, C++, Java, Python, etc. Then there's the thorny issue of patents, which I'm not comfortable with considering Microsoft's aggressive assertion stance.

If you're exclusively developing on Microsoft platforms, it probably won't be a problem. But in today's world of multi-platform patent unencumbered and, free and open source technologies, I don't see the point in investing time and resources into proprietary and vendor lock-in platforms like Dotnet.

If anything you should stay far away from Java, as it's the only one where a company has been friviously sued over use of an open source impl of it. No one's ever been used sued for using any version of .NET.

Microsoft doesn't really know what it's doing with .NET, which is a shame because it's really good.

There's so many small issues that makes you wonder if Microsoft actually cares about it, like Windows Forms using the wrong font for interfaces (It uses the font from Windows 95), and stuff like WPF not having a native interface on Windows 8 (While it does on XP, etc.), but then you see stuff like Visual Studio using it heavily, so it's like some teams want it and others don't.

Max Norris said,
If Microsoft had a problem with it then they'd be all over the Mono project, which is also open source by the way.
Just to add to this, Icaza who was behind Mono and Gnome is part of the .NET Foundation too.

Regarding original comment, a known Google rah rah guy supporting Java of all things as "patent free" over .NET/C#, why is that not surprising... Looks like he's never heard of the various open source licenses used by MS like the GPL, Apache, Creative Commons.

I love what's going on over at MS lately. If it's the doing of their new CEO or a plan since a year back or so, I have no idea, but it's great anyway.

If Microsoft makes it much easier to develop using .NET on other platforms, it can ironically help Microsoft products too. I mean, if a developer has to choose Objective-C just because it's by far the best supported language for iOS, it's excluding Windows Phone OS. However, if a developer has access to .NET both for iOS development and Windows Phone, it's likely that the developer will include Windows Phone in the day 1 release, simply because it'll make code easier to adapt. It's also likely that the developer *already knew .NET* which can be a HUGE advantage. While iOS devices tend to give the best profits, .NET tend to be among the most known platforms, since well before the iPhone got big.

It's great that Microsoft is facing reality and adapting rather than sticking the head in the sand and pretending nothing has happened in the mobile landscape lately. The old "If we can't beat them, join them." I think Microsoft has much to win by adapting better to reality.

Edited by Northgrove, Apr 5 2014, 9:45pm :

The great shift in Microsoft is that they focus on providing great infrastructure: devices, platforms and tooling. Having that is crucial to customers. That is where the money is.

Microsoft, and many of the employees, have been pushing towards making many of their Frameworks and APIs open-source for a couple of years now.

Notably ASP.NET Web Pages, MVC and Entity Framework and so on. TypeScript. Even some tooling like Web Essentials.

According to what was said in the "What's new in C#" session at Build they planned making the new compilers open-source from the first draft 4-5 years ago.

Community-supported projects, decentralization and less top-down are the future.

HawkMan said,
MS has been supporting open source for years...

I'd say Microsoft has been tolerant (rather than the outright hostile of the late 90s early 00s) of the open source community for a few years now. They are becoming supportive. This is pretty huge.