I installed the Visual Studio 2008 Feature Pack today – which, by the way, you will not find if you use Check for Updates on the Visual Studio 2008 Help menu – and noticed this paragraph in the setup agreement:
What’s this all about? Microsoft has not said so, but it seems likely to be part of the company’s war against OpenOffice. The efforts of Sun and others to improve OpenOffice, along with all the XML standardization brouhaha, prodded Microsoft into delivering the most significant Office upgrade for many years. One of its intentions was to increase the differentiation between Microsoft Office and OpenOffice. The strategy would not work if some future OpenOffice just copied the feature, hence the license.
The unintended consequences concern me.
Until now, you could pretty much use the out-of-the-box UI components in Visual Studio and not worry about licensing. That has now changed. According to Microsoft if you use any element of the Office user interface, for which the feature update supplies new classes, then you have to agree to a separate license.
Is this a burden? Well, the licensing page is now out of date, because it says “The program does not involve code”, but the feature pack provides what it calls “MFC C++ library source code for the Microsoft Office Fluent User Interface.“ However, Microsoft says that the license is free and covers:
…applications on any platform, except for applications that compete directly with the five Office applications that currently have the new UI (Microsoft Word, Excel, PowerPoint, Outlook, and Access)
What does it mean, to “compete directly”? It sounds like the sort of thing lawyers could have fun with. Further, if you read the license details and FAQ, it is clear that you take on a further obligation, which is to comply with Microsoft’s Office Design Guidelines, and even to update your application if Microsoft changes them:
Your Licensed UI must comply with the Design Guidelines. If Microsoft notifies you that the Design Guidelines have been updated or that you are not complying with the Design Guidelines, you will make the necessary changes to comply as soon as you reasonably can, but no later than your next product release that is 6 months or more from the date you receive notice.
OK, so let’s say you are developing some software for a customer. You deliver the app; customer pays you. Now Microsoft brings out Office 2009, changes the guidelines, and says you must update the app, even though the customer is happy with it as-is. Who will pay? I guess you would need to agree beforehand; but it is a disincentive to using the fluent UI.
Presuming you do not want to sign up, avoid all the CMFCRibbon* classes. Microsoft has helpfully commented these with a paragraph that says:
License terms to copy, use or distribute the Fluent UI are available separately.
Would any of this stand up in court? I have no idea, but I’d be reluctant to sign up or to use these classes lest I might have to find out.
7 thoughts on “Microsoft’s Office UI patent trap: watch out with that MFC update”
“Would any of this stand up in court?”
Maybe in US courts.
However the problem is that patenting UI is a quite silly stuff, because how one arranges something is totally irrelevant.
I think logically it makes no sense neither, just look at how easy you can use GUI elements in www pages. And people arent sued in court for having creative solutions.
Maybe it would be better for the world if Microsoft goes away, they have become too big and hinder innovations now.
“Well, the licensing page is now out of date, because it says ‘The program does not involve code’, but the feature pack provides what it calls ‘MFC C++ library source code for the Microsoft Office Fluent User Interface.'”
I believe that this is a deliberate choice of wording on Microsoft’s part, indicating an intent to exert control via patents rather than by copyrights. With this approach, Microsoft can gain control over any UI that appears similar to their own, regardless of whether it’s using their source code or not. Note that they’ve never said that the license is on the CMFCRibbon classes; it’s always on the “Fluent UI”, for which, as far as I’ve been able to find, there is no precise definition. This is also likely deliberate, since it’s in their best interest to keep the exact definition of the “Fluent UI” vague; any definition they provide would only limit them when they end up litigating it in court. Being vague will put pressure on most companies to err in favor of agreeing to the license rather than take the risk of fighting their legal team.
I think the bottom line is that whether or not someone uses the new MFC classes does not strictly determine their legal risk. What matters is whether, in Microsoft’s opinion, the product looks similar enough to what they think they can get a court to decide their patents cover, and whether they consider the product enough of a competitive threat to make it worth calling in their lawyers.
By packaging these components together with MFC, they’re making it very easy for developers to inadvertently get caught in the Fluent UI license. It’s fairly clever, in an evil way, and it spreads a cloud of FUD over anyone making applications that might look similar to MS apps.
where’s the CMFCRibbon Radio button??
If someone made their own control that looked like that ribbon control, I don’t see how they can be sued since it’s their own creation.. =/ Whether it is intended to look similar or not they made it and not Microsoft. Microsoft are becoming like nazis…
Daniel: “Whether it is intended to look similar or not they made it and not Microsoft.”
If MS has a valid and applicable patent over the underlying concept of a ribbon UI, then they can control any implementation of it.
The problem is that MS has not asserted that they actually have such a patent, so it’s very unclear exactly what they’re claiming to grant a license to.
If you wish to decide whether Microsoft’s claim on a ‘Ribbon’ UI patent is valid or not, see http://perceptionofsnow.blogspot.com/2001/07/switchflip-user-interface-orebopl-ide.html
The key problem is this patent held by Microsoft:
There are some ongoing litigation that maybe prevents them from patenting whole UI at the moment, but they’ll probably buy some judges and do as they please.
The best way is to simply ignore the ribbon completely.
Comments are closed.