If you read about Microsoft's patent number 6,727,830, "Time based hardware button for application launch," issued on April 27, 2004, you're probably thinking that now you've heard everything. A patent on double-clicking and on holding down an application button? How can the Patent Office issue such a patent, since you can probably think of several instances of prior art off the top of your head?
Here is the abstract, explaining the patent:
A method and system are provided for extending the functionality of application buttons on a limited resource computing device. Alternative application functions are launched based on the length of time an application button is pressed. A default function for an application is launched if the button is pressed for a short, i.e., normal, period of time. An alternative function of the application is launched if the button is pressed for a long, (e.g., at least one second), period of time. Still another function can be launched if the application button is pressed multiple times within a short period of time, e.g., double click.
Microsoft listed 8 prior art documents, each slightly different from theirs. But then you find a long list of what they asserted was unique to this patent. It drones on a while longer, but although they expend a great many words, what they have patented is simply this:
Linux systems are full of software which implements the claimed behavior. Double-clicking is found everywhere. The "hold the button for different behavior" can be found in places like the CD player. The patent specifies a "limited resource" computing device, so they are talking about PDA-type systems. The simple fact is that all computing devices are "limited resource," however.
I asked my right-hand man on Groklaw, Dr Stupid, if he could think of any prior art and he had no trouble in about 10 minutes coming up with these possibilities:
The general concept of short press and long press doing different things is not new at all - many embedded devices use it. What the patent is about is a particular use of this concept for launching programs on a device. That is, clicking once on the icon launches the program with one command line parameter, and a double-click a different command line parameter. Or a hold down is yet another.
The very old FVWM window manager for Linux has a 'maximize' button which works like this:
- Click-and-hold: stretches the window vertically.
- Single Click: stretches the window but does not cover the taskbar or button bar.
- Double Click: stretches the window to cover the entire screen.
So you have normal action, hold-it-down action, and double-click action. It's still shipped with SuSE and most distributions to this day, I believe...
To me, it fails the 'not obvious' test. Another one that I wonder if it might be relevant is here:'If you wish, you can distinguish single, double, and triple clicks. A double click means clicking a mouse button twice in approximately the same place. The first click generates an ordinary click event. The second click, if it comes soon enough, generates a double-click event instead....'
What about some prior art of a hardware button launching an application and doing something different if you hold it down? All right. What about the address book button on the Palm Pilot? A short click launches the application, but a long click starts to beam a specified entry.
I have a manual here for a Palm III, dated 1998-1999, that describes this behaviour. I wouldn't be surprised if older models did the same thing. On page 86, for example, it says:
"To Create a New Address Book Entry
"1. Press the Address Book application button on the front of your organizer to display the address list.
"2. Tap New."
There is an icon for the Address Book application button that looks like a telephone receiver. Then on page 139 of the manual, it says:
"Tips on beaming information
"You can press the Address Book application button for about two seconds to beam your business card."
It shows the same icon. Is this not "Alternative application functions are launched based on the length of time an application button is pressed"? Without analyzing this patent in great depth, certainly we can agree there are patents issued that should not be issued, and the real question is: why does the Patent Office issue them? And why do companies want them?
The answer to the first question is simple: they are understaffed and there is a general policy that you do your best and later the courts can determine if the patent was valid or not.
Why do companies want them? I asked that question of patent attorney Dan Ravicher, head of PubPat, the organization that is dedicated to going after patents that were wrongly issued, and also asked about this specific patent, and here is what he told me:
When I read those claims, I was like, sure, nice try. I doubt Microsoft would ever assert this patent. But, there is still value in building up a portfolio because many valuations are based purely on the objective factor of how many patents or how many claims one has, despite the fact that a wide swath of them are useless. The valuation experts aren't that sophisticated, yet.
A patent, in other words, is an intangible, and you look good to valuation experts if you have a big pile of them.
Does that mean there is no danger? Should something be done? He told me that until Microsoft begins to assert the patent, which so far it seems not to have done, the best thing is just to monitor it. "If Microsoft begins to assert this patent specifically, then we'll review the situation and make a decision about how best to protect the public," he says.
Of course, if anyone wishes, Microsoft might license to you for stone cold cash. A spokesperson for Microsoft says:
"We havenít had any internal discussions recently about this particular patent. This patent relates to functionality utilized in Microsoftís Pocket PC. As with most of our patents, we would consider licensing it for others to use on commercially reasonable terms if another company asked for a license. Doing so would be consistent with our December 3, 2003 policy statement. Microsoft receives dozens of patents every week. We donít speculate on what products may or may not infringe patents."
They are aware, of course, that the FOSS community have no patents, or not enough anyway, to work out cross-licensing deals, so I believe the purpose of accumulating the new patents is to make GNU/Linux cost more, due to royalties they intend to extract for their patents. Or alternatively to price FOSS developers out of the marketplace. Then there are all the patent lawsuit possibilities. I have no doubt that they are building up their patent portfolio for a purpose.