Actually, the source that will be released is not the source for the.NET platform. The.NET platform is a seperate, commercial product. This shared source implementation is a seperate code base that is based upon the same set of standards. The commercial.NET just shipped Beta 2, wheras this implementation will not be available for a few more months. Your fears of fixing Microsoft products are unfounded, since they are two seperate code bases.
I've used C# for almost a year now in its beta form, and I can tell you that it is in no way a "Java/C wannabe". Its quite a nice langauge that takes off right where java left off. It definately has some Java influence, but there are a lot of nice features in it that Java doesn't have. For instance "delegates", which are essentially type-safe function pointers. For those concerned about speed or optimizations, you can mark sections of code as "unsafe" and delve down to the pointers just like you used to in C++. It allows user defined events to be fired by objects, and other objects to subscribe to and recieve these events. Attributes provide a nice way to insert meta data into your code. The foreach construct provides a quick way toiterate through a collection. There are many good features in this langauge, its definately worth checking out.
This is not at all like Sun's approach to Java. Unlike Sun's approach to Java, Microsoft has chosen to use an established standards body to create specifications for this technology. Anyone can create a conforming implementation, without being required to submit to any of Microsoft's licensing terms. In addition, the CLI is designed to support multiple programming languages. Functionally, the CLI standard provides basic runtime services for server, client, and dedicated devices alike, while the C# language provides a well-matched way to use these services.
This product is not the.NET platform that is released for windows. The.NET platform is a commercial product, and a seperate entity. The shared source implementation is based upon the same standards as the.NET platform, but it is a different code base. Any bugs appearing in the shared source implementation do not necessarially reflect bugs in the commercial implementation and vica versa.
Why bother "sharing away the source" now unless one thinks there will be big fanfaire and accolades that go along with it?
The source code to the.NET platform will not be available..NET is a commercial product, however a seperate product based upon the same standards will have its source code available. This is being done so that people can use it for educational purposes, and to base their own ports of the CLI on.
The task of coding this CLI and associated compilers has not been handed off to Corel. Microsoft is working jointly with Corel to produce this product. There are teams at both companies working together on this.
The specific "shared source" license that will be in place for this release of the CLI and compilers has not been drafted yet. It will allow for free use of the code for non-commercial and educational use. It may allow for free use of the code for commercial use. It will not be "hands off" as you say, and how to allow community contributions is still being worked on.
Extinguish what?.NET? Why would Microsoft extinguish a platform that they've virtually bet the company's future on?
Extinguish open source? Right......yep, I can see that RMS and ESR and Linus and all will just see this implementation and decide that they are so confused they must abandon open source and release a complete propriatary GNU system!
if the 'shared source' is only available for reference purposes, and developers are not allowed to USE the 'shared source' in their opensource projects then this could cause problems
This is not the goal of this release. As I say, the license has not been written yet, and won't be until closer to the release date, the code will be available free for non-commercial use and educational use. It will also likely be avaiable for commercial use. Porting will be allowed, encouraged even, and you will be able to base even your own propriatary.NET implementation on this code.
Having these tools does nothing to help interoperability, since that is all bound to the.NET API and internals
This is equivilent to saying that having a Java compiler and JVM on a varietly of different platforms does nothing to help interoperability because its all bound the the JVM API and its internals.
The CLI is the.NET equivilent of the JVM it allows managed code to executed on a variety of different platforms. This shared source implementation will be initially available for Windows and FreeBSD, but is available to be ported to any other platform. This does a lot to increase interoperability.
So by looking at MS source, would I then be 'polluted' (from a licensing standpoint) -- unable to write free software that's compatible with/works with.NET or whatever?
Absolutely not. One of the goals of this release is to have people like you be able to write their own.NET implementations, using this code as a starting point. The exact licensing terms have yet to be decided, but it will be free for non-comercial and educational use, and likely free for commercial use as well. It will definately be able to be ported and used as you wish without encumbering your ability to write.NET code!
Actually, this implementation would not work if it was released under the GPL. In fact, one of the goals of the implementation is to allow people who want to develop commercial ports to use this code a starting point. If the shared source implementation was licensed under the GPL this would be impossible.
The exact license that this will be released under is yet to be determined. However it will allow for free non-commercial and educational use. It will also likely provide for free commercial use. And it will allow for people to base ports off of this code.
This is not pure publicity. This implementation will be available for use by anybody who wants to use it non-commercially or educationally. It will be available for use for people who want to create their own ".NET"'s . It may even be available for people who want to use it commercially. This product will be in beta probably by the end of the year.
The exact license for the shared source implementation of the CLI and C# and EMCAscript compilers has not yet been determined. However, they will be mad in source code form free for non-commercial use and educational use. Porting this source to other platforms will be allowed. Commercial use may also be allowed. Using the source as a sample for building your own set of libraries and compilers to release under whatever license you please (open or not) will also be allowed.
Microsoft is not locking you into their APIs. In fact the shared source.NET implementation will consist of a C# compiler and the CLI (Common Language Infrastructure), both of which are currently in the hands of the EMCA for standardization. This means that they will be public standards, available for anybody to implement. You are not forced to use Passport either, in fact I have implemented sevral web services without Passport. The protocol for communication in.NET is SOAP over http, both of which are W3C standards, so Microsoft does not own that either.
Actually, the shared source implementation is based off a different code base than the.NET SDK. The commercial product is different from this shared source implementation, and is already in Beta 2, which shipped last week. The shared source implementation should be in Beta 1 by the end of this year. Of course community input will be accepted, but the exact method that this will happen has not been decided yet.
Did you know that Office XP contains the same smart-tags feature? I bet you didn't. Guess what? That one is disabled by default too. And Microsoft has not promoted it like you say they will.
For example, Mundie says forking code is bad. Here's the same thought translated into manager-speak: "Having multiple vendors competing to offer us the best product at the lowest price is worse than having one vendor who can sell the product to us at monopoly prices."
This is entirely untrue. Multiple vendors can compete without code forking. For instance, Corel's WordPerfect competes with Microsoft's Word....however they did not originate on the same code base and thus there was no fork. Another example is Linux competing with Windows NT, there was no code fork there either.
A few months ago an actual code fork did occur when Samba-TNG did split out from Samba. But their aims aren't to compete with each other. Samba-TNG is trying to make a completely Windows 2000 compatible implementation of the SMB protocol, while Samba was less interested in full Win2k compatibility.
This "translation" into "manager speak" is downright wrong. You may not agree with all of Microsoft's business practices, but not everything they say is related to these practices. Code forking is one of those things.
Even if you do end up on NT, you can still run the Win32 port of Apache and use PHP or Jakarta and JSP if you want to keep alive the chance of moving back to a *nix platform at some point in the future.
Exactly. I wish I still had the link, but I read that in Florida they are pushing for the death penalty for an 11 year old boy. That child better be protected by the first ammendment also.
Actually, the source that will be released is not the source for the .NET platform. The .NET platform is a seperate, commercial product. This shared source implementation is a seperate code base that is based upon the same set of standards. The commercial .NET just shipped Beta 2, wheras this implementation will not be available for a few more months. Your fears of fixing Microsoft products are unfounded, since they are two seperate code bases.
I've used C# for almost a year now in its beta form, and I can tell you that it is in no way a "Java/C wannabe". Its quite a nice langauge that takes off right where java left off. It definately has some Java influence, but there are a lot of nice features in it that Java doesn't have. For instance "delegates", which are essentially type-safe function pointers. For those concerned about speed or optimizations, you can mark sections of code as "unsafe" and delve down to the pointers just like you used to in C++. It allows user defined events to be fired by objects, and other objects to subscribe to and recieve these events. Attributes provide a nice way to insert meta data into your code. The foreach construct provides a quick way toiterate through a collection. There are many good features in this langauge, its definately worth checking out.
This is not at all like Sun's approach to Java. Unlike Sun's approach to Java, Microsoft has chosen to use an established standards body to create specifications for this technology. Anyone can create a conforming implementation, without being required to submit to any of Microsoft's licensing terms. In addition, the CLI is designed to support multiple programming languages. Functionally, the CLI standard provides basic runtime services for server, client, and dedicated devices alike, while the C# language provides a well-matched way to use these services.
This product is not the .NET platform that is released for windows. The .NET platform is a commercial product, and a seperate entity. The shared source implementation is based upon the same standards as the .NET platform, but it is a different code base. Any bugs appearing in the shared source implementation do not necessarially reflect bugs in the commercial implementation and vica versa.
The source code to the .NET platform will not be available. .NET is a commercial product, however a seperate product based upon the same standards will have its source code available. This is being done so that people can use it for educational purposes, and to base their own ports of the CLI on.
The task of coding this CLI and associated compilers has not been handed off to Corel. Microsoft is working jointly with Corel to produce this product. There are teams at both companies working together on this.
The specific "shared source" license that will be in place for this release of the CLI and compilers has not been drafted yet. It will allow for free use of the code for non-commercial and educational use. It may allow for free use of the code for commercial use. It will not be "hands off" as you say, and how to allow community contributions is still being worked on.
C# hasn't been officially released yet. Beta 2 of the Microsoft C# compiler was released last week, but the final retail version is not done yet.
Extinguish open source? Right......yep, I can see that RMS and ESR and Linus and all will just see this implementation and decide that they are so confused they must abandon open source and release a complete propriatary GNU system!
That's because it hasn't been written yet ;-)
if the 'shared source' is only available for reference purposes, and developers are not allowed to USE the 'shared source' in their opensource projects then this could cause problems
This is not the goal of this release. As I say, the license has not been written yet, and won't be until closer to the release date, the code will be available free for non-commercial use and educational use. It will also likely be avaiable for commercial use. Porting will be allowed, encouraged even, and you will be able to base even your own propriatary .NET implementation on this code.
I work there, and I read slashdot. I also know quite a few people here that read it...
This is equivilent to saying that having a Java compiler and JVM on a varietly of different platforms does nothing to help interoperability because its all bound the the JVM API and its internals.
The CLI is the .NET equivilent of the JVM it allows managed code to executed on a variety of different platforms. This shared source implementation will be initially available for Windows and FreeBSD, but is available to be ported to any other platform. This does a lot to increase interoperability.
Absolutely not. One of the goals of this release is to have people like you be able to write their own .NET implementations, using this code as a starting point. The exact licensing terms have yet to be decided, but it will be free for non-comercial and educational use, and likely free for commercial use as well. It will definately be able to be ported and used as you wish without encumbering your ability to write .NET code!
The exact license that this will be released under is yet to be determined. However it will allow for free non-commercial and educational use. It will also likely provide for free commercial use. And it will allow for people to base ports off of this code.
This is not pure publicity. This implementation will be available for use by anybody who wants to use it non-commercially or educationally. It will be available for use for people who want to create their own ".NET"'s . It may even be available for people who want to use it commercially. This product will be in beta probably by the end of the year.
The exact license for the shared source implementation of the CLI and C# and EMCAscript compilers has not yet been determined. However, they will be mad in source code form free for non-commercial use and educational use. Porting this source to other platforms will be allowed. Commercial use may also be allowed. Using the source as a sample for building your own set of libraries and compilers to release under whatever license you please (open or not) will also be allowed.
Microsoft is not locking you into their APIs. In fact the shared source .NET implementation will consist of a C# compiler and the CLI (Common Language Infrastructure), both of which are currently in the hands of the EMCA for standardization. This means that they will be public standards, available for anybody to implement. You are not forced to use Passport either, in fact I have implemented sevral web services without Passport. The protocol for communication in .NET is SOAP over http, both of which are W3C standards, so Microsoft does not own that either.
Actually, the shared source implementation is based off a different code base than the .NET SDK. The commercial product is different from this shared source implementation, and is already in Beta 2, which shipped last week. The shared source implementation should be in Beta 1 by the end of this year. Of course community input will be accepted, but the exact method that this will happen has not been decided yet.
Did you know that Office XP contains the same smart-tags feature? I bet you didn't. Guess what? That one is disabled by default too. And Microsoft has not promoted it like you say they will.
Taco's from Holland, Michigan.
For example, Mundie says forking code is bad. Here's the same thought translated into manager-speak: "Having multiple vendors competing to offer us the best product at the lowest price is worse than having one vendor who can sell the product to us at monopoly prices."
This is entirely untrue. Multiple vendors can compete without code forking. For instance, Corel's WordPerfect competes with Microsoft's Word....however they did not originate on the same code base and thus there was no fork. Another example is Linux competing with Windows NT, there was no code fork there either.
A few months ago an actual code fork did occur when Samba-TNG did split out from Samba. But their aims aren't to compete with each other. Samba-TNG is trying to make a completely Windows 2000 compatible implementation of the SMB protocol, while Samba was less interested in full Win2k compatibility.
This "translation" into "manager speak" is downright wrong. You may not agree with all of Microsoft's business practices, but not everything they say is related to these practices. Code forking is one of those things.
Even if you do end up on NT, you can still run the Win32 port of Apache and use PHP or Jakarta and JSP if you want to keep alive the chance of moving back to a *nix platform at some point in the future.
Perhaps 2.4.3 on 4/3?
Ummm....releasing the 2.3.x series at about this same pace?
Exactly. I wish I still had the link, but I read that in Florida they are pushing for the death penalty for an 11 year old boy. That child better be protected by the first ammendment also.