[Update: Microsoft is recalling the patent application, calling it a mistake. For a full update see the follow-up article. -Ed]
Michael Kölling is pretty ticked off right now. What would upset a mild mannered professor at the University of Kent? How about someone willfully using his work without attribution, and then filing for a patent on it that could prevent him from using it himself?
Kölling is one of the creators of BlueJ, an integrated development environment designed for teaching beginners how to program. It's based on an earlier language called Blue, which he, Bett Koch, and John Rosenberg came up with in 1994. One of the fundamental features of the system is an interactive way to instantiate and invoke objects called the "Object Bench". Here's one of the dialogs from BlueJ showing that feature:
In May 2005, Kölling noticed that Visual Studio had added a new feature they called "Object Test Bench" which looked very similar:
The BlueJ team objected, but not to the copying of their idea, which is encouraged in academic circles. The objected to the fact that Microsoft didn't give them any credit for it. At that time, Kölling wrote:
I don't care that they copied BlueJ - good on them, and good luck to them. But I care about attribution. I work at a university, and I strongly believe in honest attribution of sources. ... So I decided to post these screenshots here so that people can at least see and make up their own minds.
Dan Fernandez, Lead Product Manager of Visual Studio Express, asked around inside Microsoft and confirmed that the VS feature was inspired by BlueJ. In June 2005 he quoted internal sources as saying:
Object Test Bench ... was influenced by feedback from teachers who were used to working with BlueJ. The Class Designer was also a planned feature of the new “Whitehorse” functionality. We did tweak both of these features based on teacher feedback, which borrows from several teaching concepts these teachers already enjoy with BlueJ.
Such an admission was likely all that Kölling et. al. were looking for, and the matter would have been dropped at that point were it not for something Microsoft did shortly thereafter: It has recently come to light that in October 2005, Microsoft filed for a patent on the technology.
When informed of this application, Kölling was furious. He writes:
Let’s get that clear: four months after management were clearly aware of our prior work (and with developers being aware from the start), Microsoft knowingly filed a patent application claiming original invention of this mechanism.
Of course, this is only an application and and it may not be approved. The BlueJ authors clearly have a claim to prior art, but if MS is granted the patent it will be up to the authors to challenge it before a court. This prospect has Kölling worried:
Carrying through a court case in a foreign country against a company with pockets as deep as Microsoft’s (and enough lawyers to win a tug-of-war against a small country) is not everyone’s idea of a good afternoon. Certainly not where I work - a university.
So was this simply a mistake, owing to the immense pressure on employees in large software companies to file patents? Or was it something more sinister? We may never know. But as Kölling writes:
The fact of the matter is that the application has been filed, Microsoft are trying to get control of this interaction style, and they do so while being blatantly aware that they have copied the functionality from elsewhere.
As a result, a product like BlueJ, developed for the education community, that has helped thousands of students to learn programming, may be muscled out of existence by corporate greed.
Related articles: (Updated)