Microsoft opened up parts of the Windows CE source code to students, researchers, and other academics 2 years ago. This year, responding to requests from its partners, the software giant opened up virtually all the source code for the most recent Windows CE version, Windows CE .NET (formerly code-named Talisker), to commercial entities as well. Windows CE .NET powers portable and connected devices, such as the Media2Go portable media player, PDAs, and various embedded solutions. But as you might expect, gaining access to the source code for any Windows version, even a Windows CE OS, comes with a price. Here's what you need to know about the Microsoft Shared Source initiative.

What You Can Do
Under the new Shared Source licensing terms, Microsoft's hardware partners can view and modify the Windows CE .NET source code, then create and sell products that take advantage of those changes. Such changes will often be product-specific, of course. A company making a portable media player, for example, probably won't benefit from changes that a company making a Windows CE .NET—based sewing machine made, for example. However, some changes fall at a much deeper level and can benefit far more users. For example, the people behind the ARM platform supplied Microsoft with several changes that highly optimize Windows CE .NET on the ARM platform. These changes will benefit all companies using the ARM platform.

What You Must Do
Companies that modify Windows CE .NET source code must supply all changes back to Microsoft, and the software giant will be able to roll those changes into Windows CE .NET if it desires. Companies that make changes can request that Microsoft withhold the changes from other companies for 6 months. This stipulation gives the originating company time to market its own solutions, giving it market momentum.

Microsoft's decision to more fully open the source code to Windows CE .NET might be a bit restrictive, but it's still a step in the right direction. If you're building devices based on Windows CE .NET, examine the Shared Source program to determine whether you might be able to make changes to the underlying product and contribute any improvements to the wider Windows CE .NET community. The Share Source program is an interesting opportunity to reap some of the benefits of open-source development while maintaining the intellectual property rights of the underlying platform. The problem, of course, is that some companies won't be interested in helping competitors or Microsoft.