Open.NET — .NET Libraries Go "Open Source"
An anonymous reader writes "whurley just posted a blog about Microsoft's announcement To Make .NET Libraries available under a crippled 'Open Source' program using their new Microsoft Reference License. The post includes the official pr doc from Microsoft as well as several points about how this really isn't open source. One example: If a developer finds a bug in the code, rather than fixing it themselves and submitting a patch to the community they'll be encouraged to submit feedback via the product feedback center."
they'll be encouraged to submit feedback via the product feedback center
In some ways I'd rather see these things organized "under one roof". As long as the product feedback center is responsive I don't think this is going to be a big deal for most.
Dedicated Cthulhu Cultist since 4523 BC.
Seriously, most of us capable of seeing the negatives don't need help from the poster to see them. All those who don't see these licenses as not completely open source aren't going to have their minds changed by mini rants.
"Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
Being exposed raises some serious issues regarding the future employability of the "exposed" developers.
Lacking <sarcasm> tags,
You can already see all the source of the .NET framework using Lutz Roeder's Reflection tool. I use this all the time to see how the innards of functions work when something goes screwy with .NET.
If you're interested you can check out the free tool here: http://www.aisto.com/roeder/dotnet/
they'll be
encouraged to submit feedback via the product feedback center
I do not think that word means what you think it means
Nowhere in Microsoft's announcement do they in any way claim that they are releasing anything as open source. But hey, don't let that stop you from attacking Microsoft for not doing something they never claimed to do nor have any obligation to do.
This doesn't seem that odd to me. Anyone else know of a major open source project where your patch of the day is guaranteed to end up in main line code?
If you see the code and then create something remotely like it, MS will sue your ass off. .Net
This way, the more people who see the code will become "Tainted" for clean-room rewrites of parts of
Brilliant!
(This is the "Embrasse" portion of the plan to kill of Mono.)
Obama's legacy: (N)othing (S)ecure (A)nywhere and (T)error (S)imulation (A)dministration
The Microsoft announcement says specifically and repeatedly that this is not "open source" and explains why they chose not to use such a license. They seem to understand the term a lot better than "whurley" does.
What I'm listening to now on Pandora...
A few suggestions:
Okay, yes, I was just pulling words out of the thesaurus at the end there....
When .NET was announced as a platform independent language, I always struggled to imagine Microsoft developing the framework on anything other than Windows. Can you imagine Microsoft developing class libraries for Linux, or Apple Macs? Surely the world would end.
.NET framework will be developed for other platforms. And once that happens MS can help nuture a happy little band of developers, all sucking up MSDN licenced tools.
So this move is a fairly wise one by MS. There's now a chance that the
So they encourage you to report things to them rather than distributing a patch yourself. So what? Trolltech does this, MySQL does this, Sun does this, Mozilla does this; in fact virtually every significantly-sized open source project encourages you to fix problems through their own channels rather than throwing a patch around yourself. It's just good sense.
I am trolling
I think it's like a "swirly" where someone sticks your head in a toilet while it's being flushed, except a "whurley" is where you do it to yourself.
I read Slashdot for the headlines, because the headlines, unlike the articles, are usually original and never duplicated
Rememeber IBM? They used to be the gigantic Evil Empire everyone thought would either become the overlords of humanity, or implode gloriously in a blazing fireball of liberation.
Instead they became just another business, later honorably defending (their contributions to) the Linux source code against the wretched SCO. Their interests have become more aligned with that of their customers.
I think Microsoft has less wiggle-room to remain viable than IBM did when they lost total domination over their market (because MS's business is mainly about using restrictive copyright licensing to make sure they're the only ones controlling the software on PCs, which quite different from what IBM's business is) but something similar is happening, however slowly and painfully.
Microsoft knows, to some degree, that in order to remain relevant it must give people access to the guts of its software. The software market has become far too complex for the ancient ways of floppies-in-a-box style business to work. However, as their Open.NET idea shows, they're still trying to keep as much control as possible, for as long as possible...
The original 1991 team that developed the Microsoft Foundation Classes 1.0 (to go with the first Microsoft C++ compiler, and even before the first C++ Visual Studio) was planning to go completely "closed source." It makes sense from a library point of view to close access to the implementation, and only offer the interfaces in header files. However, I was one of the folks on that team that felt that since this was the first "thin" wrapper on the C Win32 API, it was more important to show just how thin that wrapper was, and to offer visibility into the MFC implementation. It wasn't "open source" but it was "source provided as documentation." You could still build MFC on Borland's Win32-ready compiler, in fact. Since I myself was fairly experienced with Win32 but not with C++ (as was the target market), I felt this was a reasonable compromise.
Before you throw eggs at me, let me point out that I then left that group before they invented CDocument and all the ugly MFC hell that has become associated with bloat. Before CDocument, it was essentially a reasonable alternative to STL with some HWND wrappers. Afterwards, the command-routing and OLE-managing framework turned almost any MFC app into a real rats' nest of unmaintainable spaghetti. I still wrote apps in MFC, but I have less and less stomach for it, in the rare instances I must develop Win32 at all.
[
The biggest issues I have seen with the transition to .net are in the richtextbox, the printing model and the IDE itself.
.net you need more, there is no flow control and you have to manage your code backwards (try a deeply nested set of for loops with conditions and pagination) which would be simple in procedural code is a nightmare here.
Try adding an RTF box onto a form and messing with a selection (for instance setting it to bold), the old method would allow the other font attributes to remain, now you change the font styling for the entire selection: bold italic font size etc.
Without calling back to the COM interop or recursing each character on a hidden control you are screwed.
Printing is geared towards the developer being given a piece of paper to print on and informing
It is too easy for the IDE to trip itself up and get in your way, from freezing for minutes on end to just getting things wrong (errors when reopening a form you know the code is valid for).
The actual core language is wonderful, but there are lots still wrong with the interface and libraries.
liqbase
Applying this 'truth in advertising law' to misleading Slashdot headlines would be the first step....
Please sign petition to restore sanity to our banking system!!!
http://financialpetition.org/
I was wondering how slashdot would report this story. I knew that they would give it negative spin because it's not open source, but I didn't think they would actually try to suggest that Microsoft claimed that this was open source and then bash them for not meeting that claim.
.NET libs into VS 2008, including downloading the appropriate source from Microsoft's site on demand. There are other goodies as well.
Microsoft fully acknowledges that this code is to be released under MSRL, "Microsoft Reference Licenese", which Microsoft does not claim to be an open source license (it is not one of the Ms licenses that were submitted to OSI).
But the code is still valuable as it eases debugging. This similar to Microsoft's providing the source code to ATL, MFC, and their CRT. Much of this code was already available under Rotor2, but now we get lots more code, including WinForms and WPF, and more will be rleased in the future.
And it's not just code, but Microsoft including integrated debugging of
See here for detaitls:
http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx
-- "I never gave these stories much credence." - HAL 9000
Ignoring the flame-bait and complete ignorance... The *reference* implementation for .Net which is remarkably similar to the production version is here:
.Net is pretty damn open. Remove your heads from your asses.
http://www.microsoft.com/downloads/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en
It contains the C/C++ source for the CLR, CSC and C# source for the Framework that compiles on FreeBSD, Windows and OS X. There are PPC/ARM/x86/x86-64 ports in the code.
It can and will be run anywhere.
Being able to see the source means that you can take the present tool kit and work around any bugs in a deliberate manner. Whereas without the ability to see the code you have to hope that the bug is what you think it is.
.NET. .NET Framework does not depend on the obscurity of the .NET Framework source code" in one of their press releases.
I would go one step further and say that it also lets you understand the behaviour of the framework where the documentation is inadequate or missing. I can see this being very useful, especially for those of us who like to fool about with less-commonly-used parts of
I also think that in the larger view, this is a great indication of shifting mentalities at Microsoft. I was pretty surprised to read "The security of the
"...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
That was in the theoretical world. In the real world, looking at the source and then using that to get implementation ideas is a good way to get sued. Yeah, you probably would have a really good case that you didn't actually copy any Microsoft code into Mono, but the suit itself might bankrupt you. For instance, look at ReactOS. I'll bet they have a completely clean implementation (in that no one working on the project has seen any of the source) of the Win32 API, even though it isn't strictly necessary. This is simply to avoid legal problems.
"Does anyone else have the impression that the Microsoft Permissive License is nothing more than a means of showing source, hoping that others will copy it into some product and thereby be liable of some infringement and be sued?"
Around Slashdot? Of course. But if you take off the tinfoil hat you might realize that no major competitor is going to be that stupid and the small fry don't have enough money to pay MS legal fees for a month. No matter how evil you imagine MS is, they aren't going to sue if there's no profit in it.
No offense intended, but I'm not sure how a post like this got modded so far up. Are we passing out tinfoil hats at the door now? (I know, I know. I must be new here.)
.NET language, everyone's writing apps to run on Windows, etc. Microsoft all over the place.
.NET devs to see/debug through the .NET libraries, making developing using their stuff more attractive to some subset of the developer community, or
Let's take as a given that Microsoft would like all developers to be using their technologies. In their perfect happy world, every developer is using Visual Studio as their IDE, their language of choice is a
In pursuit of that goal, is it more logical that they would make this move to:
A) Allow
B) Begin an intricate long-ranging litigation scheme against something like Mono, that even fewer developers than the subset in (A) know much about, that in no way is currently posing any kind of threat to their dominance (such as it is), on the off chance it might bear some kind of fruit years down the line?
Shit, Bond villains don't even bust out plans like the scenario you've concocted.
Sure, MS is greedy. Sure, they don't hold sacred the principles of freedom that you do. Sure, they may be evil -- but they're a generally *sensible* kind of evil, the kind that isn't building an elaborate cannon that shoots heads of lettuce while guns are available.
"No-o-ow... who wants to fix our bugs for free?"
[chirp chirp chirp]
"Anyone?"
[chirp chirp chirp]
These guys crack me up. Really.
CUR ALLOC 20195.....5804M
Right, because you've used the not-yet-released feedback system, and can say that it doesn't work.
Out of curiosity, how much work have you done with Java and C#?
C# is to Java as Java is to C++ as C++ is to C on to infinity. To say that C# is just a copy of Java is about as much true and about as much false as saying Java is just a copy of C++. It is, and it isn't.
In each case you have a "new" language created based strongly on an old one, benefiting from the "mistakes" of the previous language.
The tricky part is, what's a mistake in the design of a language varies depending on your perspective and what you're trying to do it with -- and so the "evolved" language ends up better for some tasks and worse for others. Java addresses a ton of things that C++ doesn't do well (or require a much more seasoned C++ developer to do well), at the cost of becoming unsuitable (or at least, less suitable) for some uses, such as embedded programming or high-end game programming.
C# is that same kind of quasi-evolution from Java. It makes some things a lot easier to get right, but at a cost of giving up some of the things that are good about Java. The key here is that the differences between the two aren't as much in the base language's syntax as in the core frameworks/libraries that are built around them. That's what makes the chance to see more of what makes those libraries tick and why they made the design decisions they did interesting.
I think a lot of people misunderstand the purpose behind Microsoft doing this. This is to aid debugging by allowing you to see what that mysterious function is actually doing. The fact this then makes it easy for people to report bugs is a very welcome by-product.
Well, we could debate that, but it's irrelevant to the issue of C# as a fork of Java.
These actions are intended on hurting Mono while pretending they intend on "helping". Whats going to happen is they are going to go through the Mono code and find anyone who agreed to this licencse and see if they contributed to Mono.
.NET is NOT open source: It is pretending to be open source.
Its putting cheese in a mouse trap so they can do a SCO only for Mono, I advise nobody working on Mono go near this code. FOSS means the ability to see, modify and rediribute code,
Basically Microsoft is the "Intelligent Design" crowd of the software community, open source systems are growing in popularity and Microsoft knows they cannot destroy it from the outside (look at SCO) so they attempt to destroy it from within by pretending to be open like the "Intelligent Design" pretend to be scientific.
So Microsoft are attempting to skew the view of what open source is so they can attack it like the ID crowd attempts to confuse of what abiogenesis and evolution actually are so they can attack their little strawmen
How can you miss this? It's as clear as day! If you are working on the Mono project, stay away from the bait!
Make SELinux enforcing again!
Wrong.
"Open source" meaning "access to the source code" is a total misconception...much like people take "free software" to mean "gratis software" when it really means "libre software".
Try actually reading the Open Source Definition before making idiotic comments.
The rant used to be that it was "just about seeing the source code"... but now that they can actually SEE the source code... they whine about the license.
/feeding the trolls //have another cookie
No, it's always been about the license. However, one key component of the license just happens to be, seeing the source. There are several other major components.
Just meeting one criteria does not make it "open". Just "visible".
And I'm sure anonymous troll knew this, he just wanted to latch onto the topmost post he could find that even remotely fit his rant topic.
You, my friend, have obviously never taken a close look at ActiveX. Not only does the gun shoot lettuce, it's e. coli-laden lettuce, and it fires it straight out the back of the barrel down the shooter's throat. 8^)
Crumb's Corollary: Never bring a knife to a bun fight.
What issues are you talking about exactly? I've worked with .Net for six years and am unaware of "all kinds of issues"
.lic files becoming corrupted, loosing the ability to type non-word characters, source safe integration breaking, files in the .Net temporary directory getting locked, and projects loosing the ability to load DLLs. These are all design time problems, so my impression was they got a low priority and MS just decided to let us live with it.
Maybe he's talking about the IDE. I've run into lots of junk that hasn't been fixed for years. Things like
I've worked with .Net for six years and am unaware of "all kinds of issues"
.NET for 2 years. (I would add that I've never had those kind of problems with Java or just about anything else I've worked with)
What have you been doing? I've had all kinds of issues, from network connections being dropped even though they weren't, to the encryption libraies randomly (about one in 100,000 times) incorrectly encrypting a block, to projects that will only compile in release mode and not debug mode, to those stupid web projects that were broken from their inception, to code that runs find when compiled in debug mode but when in release mode (even with the same intermediate code) doesn't execute some of the blocks of code causing an error.
That's only the tip of the iceberg (especially when you include all the VStudio issues) and I've only been working with
thank God the internet isn't a human right.
Jesus fucking Christ, some people on Slashdot cannot hear the word Microsoft, a company of fifty thousand people with a shitload of diverse opinions, without thinking everything they do is part of some incredibly complex Machiavellian plan.
How about a simpler explanation:
Programmers: Hey Microsoft, we want the source code so we can step through it. Java already ships with library source and that's awesome.
Scott Gu: Sure, makes sense. Yo Ballmer, can I give them the source?
Ballmer: No, competition will learn our secrets for it.
Scott Gu: They already can see the source using Reflector, plus most of the runtime using the Rotor source. This would just let them debug easier thus making their life on Windows easier thus increasing the number of apps that run well on Windows thus increasing Windows sales.
Ballmer: OK then. I like more salez.
Ballmer: Developerz, developerz, developerz.
Scott Gu: OK, here's the source dudez.
Programmers: About fucking time! Thanks dude, this is great news for us.
Slashdot morons: It's a conspiracy! Didn't you see The Ring? Whoever sees the source dies seven days later.
Dejan
Back when Sun was first pushing Java, Microsoft tried to build a platform on top of it. Microsoft had, once apon a time, a product called J++ which was essentially Java with some neat new features such as delegates. J++ was designed by Anders Hejlsberg, who was brought to Microsoft from Borland primarily to work on J++ as Microsoft's next-generation platform.
Sun objected vehemently to Microsoft's extended version Java. I can't say I really blame them, since Microsoft should perhaps have worked with Sun to get these extensions adopted as features of the standard Java rather. Nonetheless, Microsoft was left with a plan to move to what they would later call "managed code" but no platform to build it on.
C# and the .NET VM are the fallout from this. It's no coincidence that the unique features of C# are quite similar to the new features Microsoft added to Java in J++. It's also no coincidence that Anders Hejlsberg is the lead designer of the C# language. While I agree that it's not really fair to call C# a direct "copy" of Java, it's certainly Microsoft's answer to Java; it's unlikely that C# would exist today had Sun allowed Microsoft to build their platform on top of Java.
This public, you can look, but you can't touch or redistribute source, is like spreading a virtual contagion of copyrighted code. The new copyright wars 75 years beyond the life of the author. This marks the dawning of a new open source project, no actual program, just the sheer bloody minded copyrighting of every imaginable line of code for open use or how ever many continuous lines of code or characters are required to achieve a legal copyrightable entity.
So is M$, yet again, trying to poison the source?
Chaos - everything, everywhere, everywhen
Look at the progress made by the open-source community, Microsoft is releasing source code for big projects - even if it is under undesirable licenses. The concept of open source has permeated Microsoft to the point where they feel they need to open up some to compete - a big victory, even if not complete, for the OSS community in general - IMHO: nice work guys/girls, keep it up.
I was crazy back when being crazy really meant something. (Charles Manson)