HomeDigital EditionSearch Dotnet Cd
ASP.NET C# Certification Exams The CLI Data Access Editorials Extending .NET Fundamentals Interoperability Interviews Migrate Mobile .NET Mono .NET Interface Object-Oriented Programming Open Source Optimization Product/Book Reviews Security Source Code UML Visual Studio .NET

Everyone knows I love Microsoft. And as hard as it may be to believe, in the whole world, there is only one little thing that rubs me the wrong way about our friends in Redmond.

It is, in some ways, a very minor thing. In others, it cuts right to the quick of what .NET is all about. In short, I suspect that Microsoft's patent (CLICK HERE!) on .NET will ultimately be used to prevent the implementation of fully CLR-compatible CLIs on other platforms.

What this means is that current efforts such as Mono and Portable .NET may be at least partially illegal because Microsoft has standardized only a portion of the Frameworks classes and technology available under the CLR on Windows.

The bits that Microsoft has not standardized are not trivial little bits of the platform that sit off in a corner, unused. They include:

  • System.Windows.Forms
  • System.Data
  • System.Web.Forms
  • System.Web.Services
So CLI implementers who want to create platforms that share with Microsoft's CLR a common approach to GUI, data access, Web applications, and (perhaps most important of all) Web services, will be forced to copy bits of the CLR not covered by the ECMA CLI standards. Unfortunately, Microsoft specifically cites these APIs as a part of their patent.

The exact legal status of these APIs has been debated for quite some time. I believe, however, that Microsoft's own Dr. James Miller (program manager for the Microsoft Common Language Runtime and one of the principal inventors of .NET) recently cut through all of the confusion during a discussion on the academic Shared Source CLI discussion list (dotnet-sscli@di.unipi.it).

It began when Giuseppe Attardi posted to the list, saying he was concerned that Microsoft's recent patent application would hurt research and standardization. Surprisingly, Dr. Miller responded that Microsoft and its partners are making the bits of the .NET patent that have been standardized available "royalty-free and otherwise RAND (reasonable and nondiscriminatory terms)."

Sensing an opportunity to resolve the question once and for all, I leapt in. "What about the nonstandardized APIs, such as System.Windows. Forms, for example," I asked? Here is his response (slightly abridged):

Microsoft has a commercial product, the CLR, and we treat it as we do any commercial product. It is covered by patents, copyrights, trade secrets, trademarks, whatever the lawyers dream up next. Then there's a standardization effort that covers a specific pair of technologies, whose scope is stated and agreed on by the appropriate standards organization. What's standardized is clearly stated in the standard itself. If it's standardized, you know the rules. If it's not standardized, you know the rules. What's unclear?

I guess what is unclear is that Microsoft continues to claim it supports Mono ­ despite Dr. Miller's comments that strongly suggest that portions of both Mono and Portable.NET are in violation of their patents! Could it be that Microsoft sees it to be in some way advantageous to have people think .NET is a standard ­ along the lines of J2EE, perhaps ­ without having to go down that particular road for real?

Rhys Weatherley, founder of the Portable.NET project and ­ to my mind ­ a true visionary, offered up a clarification on the list for Dr. Miller. He suggested that, because some of the Windows APIs upon which the .NET APIs are based have existed for many years without patents ­ the enforceability of the patents Microsoft now claims could be legally questionable.

Dr. Miller did not reply.

About The Author
Derek Ferguson is editor-in-chief of .NET Developer's Journal and author of the book Mobile .NET (Apress). He is also chief technology evangelist for Expand Beyond Corporation (www.xb.com), a worldwide leader in mobile software for enterprise management. derek@sys-con.com

All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.

  E-mail: info@sys-con.com