Is Shared Source .Net a big deal? Joel and Miguel weigh in

Is Shared Source .Net a big deal? Joel and Miguel weigh in

Summary: Microsoft and a number of .Net developers trumpeted the Redmond software vendor's announcement this week that it would release the .Net source code under a Microsoft Shared Source license as a huge deal. As the dust is settling, other parties are beginning to weigh in. And some software experts are not quite as jazzed as the inner Microsoft circle.

SHARE:

Microsoft and a number of .Net developers trumpeted the Redmond software vendor's announcement this week that it would release the .Net source code under a Microsoft Shared Source license as a huge deal.

Is Shared Source .Net a big deal? Joel and Miguel weigh inAs the dust is settling, other parties are beginning to weigh in. And some software experts are not quite as jazzed as the inner Microsoft circle.

Joel Spolsky (the former Softie of "Joel on Software" fame), head of Fog Creek Software, disputed the notion that the move by Microsoft was all that revolutionary. Spolsky explained, via an e-mail message:

"Microsoft releasing the source code to the .NET libraries may seem very cutting edge, but it's really just going back to doing something they've done since the beginning of time.

"You have been able to get source code to Microsoft's C libraries going at least as far back as 17 years, probably since the very earliest days of Microsoft's C compiler (1987 or so, I'd bet). I remember sending away for it on 3.5" floppies, at no extra charge. Once they went to CD-ROM distribution they just started throwing it on the CD-ROM. You've been able to get source code to the Microsoft Foundation Classes (MFC) for C++ since it started shipping in the early 1990s. The alternate C++ libraries, ATL and WTL, also come with complete source and always have, since day 1.

"In fact the fact that you couldn't get source code to the .NET foundation libraries until now is more the exception than the rule. You've ALWAYS been able to get source code to the C libraries and the C++ libraries from Microsoft, so this 'new' move is neither a brave new world nor any kind of unusual reaction to Open Source... it's just a standard thing that compiler vendors have always had to do if they wanted people to use their libraries. The more interesting story is ... why did they wait until now when they've always given out source with other programming languages?"

Speaking of open source, Miguel de Icaza, Vice President of Engineering at Novell, was unhappy that Microsoft didn't go further and release .Net under a real open-source license, instead of the neither-here-nor-there Shared Source one.

De Icaza blogged:

"I still believe that there is a good business case for opening more stuff under the more liberal MS-PL (Shared Source) license.

"And of course, beyond the Microsoft ecosystem, there is the Mono ecosystem, where we could leverage that code if it were open source :-)."

De Icaza, who is working closely (under the auspices of some, unspecified business relationship) with Microsoft on the Linux port of Silverlight, known as "Moonlight," noted that Microsoft had its reasons for releasing the .Net source under Shared Source's MS-RL license:

"Am not sure why Microsoft did this, there have been a few theories around this, but my own guesses are:

"* Scott (Guthrie) and many people reporting to him understand developers (Scott did ASP.NET). Scott being in charge of .NET probably has made this organization be more Web-y, in that they understand that developers are more effective if they can 'View Source.' So it might be a natural cultural shift. Scott and his team are behind the Microsoft/Novell collaboration on Silverlight for instance.

"* Large .NET users probably already had access to the source code, and probably had access to under a myriad of customer-specific NDAs or licenses and this was hard to work with, and hard for the organization to manager. This could be license consolidation and streamlining of the process to get people access to the source code.

"* Getting access to the source code alone was probably very cumbersome. This is probably why the focus of the release is on the simplicity of getting the source code for debugging (the most important scenario presented so far).

"* Sun and Java: it is possible that some customers were getting cozy with the ease of access to Java source code to the class libraries and this had some mounting pressure on Microsoft. Some of the statements are very similar to what Sun used to make about Java before they agreed to open source it."

As expected, De Icaza warned those working on Mono (the open-source implementation of .Net) and other open-source projects that they should make sure to refrain from looking at the .Net source in order to avoid any charges of code contamination.

"People that are interested in continuing to contribute to Mono, or that are considering contributing to Mono's open source implementation of those class libraries should not look at this upcoming source code release," he said.

What's your take on why Microsoft opted now to make the .Net source available for viewing?

Topics: Software, Enterprise Software, Microsoft, Open Source, Software Development

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

14 comments
Log in or register to join the discussion
  • My opinion is exactly as it is written in the article

    My thoughts exactly:
    ?Microsoft releasing the source code to the .NET libraries may seem very cutting edge, but it?s really just going back to doing something they?ve done since the beginning of time."
    Releasing the source of .NET libraries is the same as releasing the source of C runtime or MFC. It is very useful for developers. If something does not work right in the library then developer can see why and maybe find the workaround easier. However, I do not see any reason for the "buzz" about the microsoft "opening the source". It is not news at all.
    paul2011
    • Right

      Essential for developers to have access to code.
      Richard Flude
      • Well, I am not sure how escential the source code. I have never looked at

        the source code for Linux libraries as they are well documented in general. I guess it IS good that anybody that wants to can look at the source code, so that if there ARE problems in the behavior, either the code or the documentation gets fixed. But, in the MS case, they actually WANT a lot of undocumented behavior that at least some people are using to make it very hard for competing products to be compatible.

        So, maybe we need volunteers that do NOT work on competing projects that would be willing to just document all of the various behaviors of the code. Or, is that also illegal according to the license you must sign? Can you use what you learned looking at the code to write documentation of the behavior?
        DonnieBoy
        • Helps when you have a problem

          "...if there ARE problems in the behavior, either the code or the documentation
          gets fixed."

          Right by people that can identify the problem in the source and provide a patch.

          You can spend days trying things with a machine level debugger or minutes/hours
          using a source level debugger to diagnose a bug that might be in a library. Many
          of these bugs you can fix yourself with source.

          Documentation tends to cover expected behaviours, the source documents actual
          behaviour.

          Large MS customers have had access to source for a long time, they know it's
          value. Finally MS is sharing with everyone else (under a license that suits them).
          Richard Flude
    • Well, in the whole saga of the battle between MS and Free Software, this is

      very significant. It may be that this is exactly what MS did in the past, but, they are trying to put a whole different spin on it, and the stakes are higher than ever before. So, it IS big news in any regard.

      But, it is good that you and others are calling it for what it is.
      DonnieBoy
  • The reason I won't be touching this with a bargepole:

    This is a reference only license, no altering or extending, I don't want to be accused at some later date of stealing MS code.

    As someone working on cross-platform FOSS code this is, at best, useless to me and most likely a hazard to be avoided.
    odubtaig
    • That's a fair and honest reason.

      I assume you are using Mono. How's that working out for you?

      Do you think Micosoft should not release this code in order to prevent placing people such as yourself in this situation, or do see it more that your are choosing not to view it because of your personal beliefs?
      TheTruthisOutThere@...
      • There are many sayings about assuming, none of them good.

        As it is, for the time being, I primarily program in C and assembly, it's hard to get a decent matrix transformation with the SSE registers using only intrinsics.

        This does not, however, mean that there is no code of any relevance to my line of work in that source code. As it is, it's best if I just don't look at it so I can't be (believably) accused of copying. I just don't think it's a good idea to look at any 'look but don't touch' releases if you're thinking of releasing code as open source.

        Not that I think I'm big or important enough that MS would even pay attention to me, but as remote as the risk is I don't like it.
        odubtaig
      • M$ might actually like that

        For all we know, Micro$oft is looking for a way to substantiate new accusations of copyright/patent infringement. It's hard to tell since the company is willing to try dirty tricks to bring down open source.

        Maybe it's better to play safe and watch your six.
        mannyamador
        • You are right, they had to open it anyway, this make them look more open,

          AND, the other big reason, it may help them substantiate copyright infringement.

          But, you are wrong about the patent part. Patents are already public and do not depend on specific source code like copyright.
          DonnieBoy
  • Hot air

    A big stink about nothing!
    Ole Man
  • What about security?

    One of the big claims that FOSS has is that their communities review the code and submit patches and fixes back into the project. This provides the source code to every Black Hat guy that wants it, but only to any White Hat guys that aren't afraid of copyright contamination. Also, when the community DOES decide to help MS out and send in a patch or a fix, how have the compiler and language groups in the past performed in terms of accepting this feedback from the community?

    What worries me most about this is that they've put enough visibility on the releasing of this code that the Black Hats might be given an unfair advantage in this case due to their choice of licensing.

    Help me out here, cause maybe I'm just missing something.
    bmadsen@...
  • RE: Is Shared Source .Net a big deal? Joel and Miguel weigh in

    Some proponents of open source community, will find a flaw in virtually anything Microsoft would offer. The fact of the matter is that .NET development is soaring and it's a way a better platform than Java...
    kalodev@...
  • RE: Is Shared Source .Net a big deal? Joel and Miguel weigh in

    Let's hope Russell doens't attain booted [url=http://www.nfljersey-eshop.com/san-francisco-49ers-jerseys]49ers jerseys[/url] off the obviously indicate large numbers overly earlier...without-doubt helps to keep the [url=http://www.nfljersey-eshop.com/]buy jerseys[/url] actual en[url=http://www.nfljersey-eshop.com/green-bay-packers-jerseys]packers jersey[/url] tertianing
    makrekwe1701-24353657765681894460463552399314