Microsoft to open source more of .NET, and bring it to Linux, Mac OS X

Microsoft to open source more of .NET, and bring it to Linux, Mac OS X

Summary: Microsoft is porting its server-side .NET stack to Linux and Mac OS X, and is making more of that stack available as open source.

SHARE:

Microsoft is planning to open source the full server-side .NET core stack and to take that open-sourced .NET core to Linux and Mac OS X, alongside Windows.

connectscottgu

Microsoft officials announced the company's latest .NET programming-model plans on the opening day of the Connect(); developer-focused event on November 12.

In April 2014, Microsoft announced plans to open source a number of its developer technologies, including ASP.NET, the Roslyn .NET compiler platform, the .NET Micro Framework, .NET Rx and the VB and C# programming languages. Microsoft officials said they planned to make these technologies available via a newly created .Net Foundation.

Today, the company is adding more pieces of .NET to its open-source list under the MIT open-source license, including the .NET Common Language Runtime (CLR), the just-in-time compiler, garbage collector and Base Class libraries. Microsoft also is pledging to work with partner Xamarin -- which has made .NET available on other platforms -- to "bring together the Mono runtime work and our work and converge them over time," said Soma Somasegar, the Corporate Vice President of Microsoft's Developer Division.

Microsoft will port the core server-side .NET runtime so that it runs across Windows, Linux and the Mac. This will allow developers to build ASP.NET 5.0 applications that can be deployed and run on Windows, Linux and/or Mac environments. (Microsoft is still expecting most .NET developers to deploy their server-side apps on Windows and Linux, but is providing Mac compatibility mainly for the development environment choice, officials said.)

Microsoft is using GitHub for hosting the core framework porting and open-sourcing work.

"We want to have a comprehensive and complete dev offering for folks working on any kind of application," Somasegar said.

Microsoft's next-generation server-side Web-development framework, ASP.NET 5.0, already has been shown running on Linux and OS X.

Microsoft is not planning to open source the client side .NET stack, which means it won't be open sourcing libraries specific to the client such as Windows Presentation Foundation (WPF) and Windows Forms, Somasegar confirmed. (Yes, WPF is back, and a new version of it will be part of Visual Studio 2015, due out next year, Microsoft officials have confirmed.)

Microsoft is kicking off work on these new open-sourcing and porting initiatives today, but the fruits of the work won't be available until some time in the coming months, officials said. 

Microsoft and Xamarin are annoucing a new "streamlined experience" for installing Xamarin from Visual Studio, as well as the addition of Visual Studio support to Xamarin's free Xamarin Starter Edition product. (Starter Edition is for "indie" developers with five or fewer employees who want to build iOS or Android apps using C#.)

Microsoft is not planning to open source the client side .NET stack, which means certain pieces like the Windows Presentation Foundation (WPF) and Windows Forms won't be going open source, Somasegar confirmed.

Topics: Open Source, Apple, Linux, Microsoft, Software Development, Windows

About

Mary Jo has covered the tech industry for 30 years for a variety of publications and Web sites, and is a frequent guest on radio, TV and podcasts, speaking about all things Microsoft-related. She is the author of Microsoft 2.0: How Microsoft plans to stay relevant in the post-Gates era (John Wiley & Sons, 2008).

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

74 comments
Log in or register to join the discussion
  • and Java is done for

    This pretty much kills java's story for us. we were considering it, but now we can safely abandon all ideas about java and stay with C# and offer support for windows/and linux backends. this is really good.
    neonspark
    • Only if MS actually follows through with it.

      It is still possible for them to make it unusable. As yet, there has been no mention of what license it will actually be released.
      jessepollard
      • Generally, Microsoft's use of Open Source has been very open

        It took them a while, but they generally have open licenses with very few encumbrances. Most of their stuff is either MS-PL or Apache licensed - both of which are very open. They also provide patent indemnification to their customers (though for that, I expect you have to be a paying customer).
        Flydog57
        • They should release the core of Windows to OS, as well

          Make everything that's in Windows 10 x64 'home' (or whatever it's called) free, open source software. All the pieces that go into 'pro', 'enterprise' and 'server' they can keep and sell.
          x I'm tc
          • Why would they do that?

            Serious question. How does that benefit anyone?
            Michael Alan Goff
          • Office

            Google has proven that the operating system has no value. The open source market has proven that programing languages, libraries, and IDE's have not value. The only thing of value is Office. Not just a basic word processor and spread sheet but something that has the ability to do anything you want and all tightly integrated with each other and other functions like slide shows, etc. Anything that will help sell Office has benefit.
            MichaelInMA
          • In the 1990s, Microsoft proved there was no value either

            Because developers would not port their apps to competing operating systems, only what was dominant.

            Most developers understand why - more work for less profit. Not because they were selfish nasties that didn't care about niche customers, because they weren't selfish nasties and programming, then or now, requires time, effort, and skill - more of those than it does to sing in front of a microphone, that's for sure.
            HypnoToad72
      • The article says it will be the MIT

        open source license, which is actually a freer license than Linux uses, because you can do ANYTHING you want with the source, including keeping your changes proprietary.
        baggins_z
        • GPL allows you to keep your changes proprietary.

          You just can't distribute binaries to others though.

          You CAN distribute binary patches if you want. It will be those you give the binary patches to that will be making the changes.
          jessepollard
          • Yep. It's less free

            than MIT, which says you can keep your changes proprietary and still distribute the binaries.
            baggins_z
          • You want the freedom to beat people to death with their own code.

            Or the freedom to be selfish, if that's what you want.

            The GPL is about keeping the code open, which I consider to be a price worth paying.
            Zogg
          • GPL is too restrictive.

            GPL lets you tell people what they can do with their code. MIT doesn't. Which is why it's better IMO.

            More freedom is always better than less.
            rstat1
          • The price of "civilization"....

            "More freedom is always better than less."

            You have a childishly naive notion of "freedom", then. Civilization is built upon cooperation, which means that societies have collectively renounced the "freedom" of individuals to take whatever they want whenever they want it by enforcing things called "Laws".

            So if you truly believe that "more freedom is always better than less" then I suggest that you relocate to a lawless nation somewhere - and see how long you last.

            The GPL simply tries to enforce cooperation, as opposed to people who demand the freedom to be parasites.
            Zogg
          • A more diplomatic way to put it

            "More freedom is always better than less."

            Not always. Freedom always has a positive connotation, while restrictions don't. However, restrictions have their purpose. In fact, any license is defined by it's restrictions. No restrictions means no license.
            bmonsterman
          • This is all of course utter nonsense

            The GPL doesn't "simply" anything. I say this with long experience in Creative Commons.

            The problem with code licenses with a lot of conditions, provisos, and quid pro quos is that such code demands that it only be used in combination with other like minded code.

            That makes it very, very difficult to combine GPL code with Apache code, for instance. You can move Apache code into GPL, but not vice versa. And this is true of a whole host of licenses.

            This turns software developers who just want to do cool stuff into a bunch of lawyers who have to parse the direction code is traversing; version control experts and librarians who need to preserve a fork of their original code under its original license in order to satisfy the various legal scenarios; and negotiators who have to sit at the table with other allegedly "free" partners, and see if they can agree on a license that is mutually compatible.

            This isn't freedom, except in Stallman's mind, the user's. But the user never cared about source code in the first place! (And certainly doesn't care if it is an Apache license or the "Don't let Microsoft sell vouchers for this!" GPL 3.)
            Mac_PC_FenceSitter
          • There's no "of course" about it.

            But there's no point arguing about it. We'll just have to agree to disagree.
            Zogg
          • Civilization is being mindful and supportive of others,

            e.g. the opposite of what selfishness and greed are.
            HypnoToad72
      • Maybe if you followed the sources provided in the article

        You wouldn't be wondering.
        ZackCDLVI
    • Maybe in your situation

      Maybe in your situation of using C# and considering Java but there's a whole lot of Java shops with no motivation to switch.
      Buster Friendly
    • Why? The .NET Runtime isn't entirely unlike a JVM,

      and numerous set-top devices, even blu-ray players, use Java.

      Java isn't dead.

      And, as was noted by some, Microsoft's record of following through isn't consistent. In the past, such attempts to "embrace and extend" had more to do with what are known as "walled gardens" today... what's truly changed? Apart from lesser freedom for customers, since it's easier to customize a desktop OS than a phone OS - like, say, installing a usable firewall...
      HypnoToad72