News

Build your own Windows!

There were a lot of significant announcements from Microsoft this week. Most of them revolved around the next version of .NET and the associated tools, so you can be forgiven if you missed one of the more significant changes: the company has tweaked the licensing for Windows CE 5.0.

For a while now, Microsoft has been licensing Windows CE source code under one of their numerous "Shared Source" programs. Embedded application developers using Windows CE could download the actual source code and tweak it to work with their particular hardware and requirements. Pretty much all of Windows CE is available under this program: the kernel, GUI, file system, device drivers, and more. All in all, there are over 2 million lines of code available in this program.

But under previous iterations of this particular Shared Source program, any company that changed or improved the Windows CE source was requird to share its changes with Microsoft -- and therefore indirectly with competitors. If you came up with a neat new way to improve the file system and your device's performance, for example, Microsoft might well roll the code changes into the next release of the platform and destroy your competitive advantage.

The licensing change is simple: licensees now maintain ownership of their derivative code, and aren't required to share the changes with Microsoft. Undoubtedly some will still do so, in the hopes that the changes will be rolled into the base distribution and available in future releases. But others will make their changes and keep them, and derive some advantage by doing so.

I don't expect to see this exact model adopted across all of Microsoft's products. There's no benefit to the company in fragmenting the PC Windows market that I can see, for example. Nor would I expect the Office source code to open up; ISVs can already customize Office and keep control of their changes through the numerous hooks for add-ins and customization. But the mere existence of the Windows CE 5.0 Shared Source program is a good sign; it means that Microsoft is viewing its overall market and relationships as assets, rather than simply trying to hang on to source code at all costs.

You can learn more about the program at the Microsoft Windows Embedded Developer Center.