The wait is over and the prayers of many have been answered! From Scott Guthrie's blog this morning:
Today I'm excited to announce that we'll be providing [the source code to major parts of the .NET Framework] with the .NET 3.5 and VS 2008 release later this year.
[Source: Releasing the Source Code for the .NET Framework Libraries - ScottGu's Blog]
I know that this news is going to make a lot of people VERY happy indeed. :)
There is much debate about whether open or shared-source projects truly deliver enough benefit versus the cost of potentially giving away the crown jewels. However, I think it safe to say that it's generally universally accepted that it's a heck of a lot easier to successfully build apps and systems on top of a framework if you're able to peer down into the framework to see what's going on inside.
Remember the old days when we used to write apps on top of Borland's TurboVision, OWL and Visual Component Library or Microsoft's MFC and ATL? It was immensely useful to be able to single-step down into the framework in many cases.
Whilst we published portions of the BCL in the Shared Source CLI (I highly recommend the SSCLI/Rotor book to better understand what's going on in the CLR itself), you now get to delve around within a significant superset of the .NET Framework library's source code:
- .NET Base Class Libraries
- System, System.IO
- System.Collections
- System.Configuration
- System.Threading
- System.Net
- System.Security
- System.Runtime
- System.Text,
- etc...
- ASP.NET
- Windows Forms
- ADO.NET
- XML
- WPF
Keep your eyes peeled for follow-up details of this news :)