It is all over the .NET world. Today, scottgu announced that Microsoft would be making their base class library implementation source available for free (not open source or free as in freedom or free software) to developers to look at. Details are at scottgu’s blog.
It is a damn shame about the terms of the Microsoft Reference license. This means that if I want to use a bit of the source, that I cannot. For example, I want to customize DataGridViewTextBoxCell’s Paint implementation, I cannot copy the bits of the Paint implementation of DataGridViewTextBoxCell implementation and base classes to tweak my changes. I CAN read what they did, and use this new knowledge in my implementation, but any copy/paste is not allowed! Most programmers I talk to do not understand this. This is going to be a copyright nightmare for most development organizations.
We talked a bit about copyrights and open source at the SRT Solutions open house a couple of weeks ago. I was amazed when all of the programmers I talked to said “huh?” or “really?” when I said that using code they found on the Internet or a blog is a copyright violation unless that code has an express license released with it. This means much of the code at codeproject.com is not available for reuse, only for reading. This means code posted to most blogs. Of course I’m talking about the United States of America, which is where I, and all these programmers, live and work.
Programmers: Look for a license. If there isn’t one, contact the author. Ask them to release the code they put on their blog under the public domain, or creative commons license, or a permissive (BSD, MIT/X) open source license.
If you got the code from a website which specializes in programming examples, such as codeproject, contact that author. Ask them what the license is.
If you are using sample code from a vendor, make sure you are clear on what the license is. Remember, if it is not explicitly stated, then you have ZERO right to reuse that copyright code. I’ve run into to Microsoft sample code releases like this.
Finally, if you are a copy and paste programmer, you may want to turn off this new Visual Studio 2008 source code feature.