The Source for Java Technology Collaboration
User: Password:



Cay Horstmann

Cay Horstmann's Blog

Microsoft Copies, then Patents Java Education Tool

Posted by cayhorstmann on January 28, 2007 at 09:34 AM | Comments (11)

BlueJ is a tool for teaching OO programming in Java that is very well regarded in the CS education community. Microsoft engineers who were familiar with the BlueJ "workbench" added a similar feature to Visual Studio, didn't give credit to the BlueJ inventors, and filed a patent application. Not the way to win the hearts and minds of the education community.

What is BlueJ?

BlueJ is a tool for teaching students about objects and classes. One of its key features is a "workbench" that contains icons denoting objects. New objects can be placed on the workbench by clicking on class icons. Methods are invoked by clicking on the icons.

???

Before I used BlueJ, my CS1 students kept asking "What is the difference between an object and a class?" Now they no longer ask--they know that classes are the factories for objects, and that objects execute methods. They know it not because I told them but because they experienced it. That makes a huge difference.

This functionality was first developed in BlueJ's predecessor Blue by Dr. Michael Kölling in his 1994 Ph.D. thesis and described in various published papers.

What did Microsoft Do?

In 2005, Microsoft added an "object test bench" to Visual Studio--see Microsoft's documentation or Dr. Kölling's analysis with side-by-side comparisons.

???

Microsoft then filed a patent on this feature.

There is a question whether people inside the Visual Studio development team were aware of BlueJ. I have met many Microsofties and Visual Studio users who seem to think that Microsoft is the only source of innovation in the universe—I once had a hard time convincing someone that refactoring in the IDE was not invented by Microsoft but was present in Eclipse years before Microsoft saw the light.

But the team that markets Visual Studio to educators is keenly aware of the competitive landscape. I had many conversations at the annual ACM CS education conference with Microsoft representatives about the various products, and they were well informed and certainly knew BlueJ. They are also relentless. I am a member of the College Board's development committee for the AP Computer Science exam, and not a year goes by without a request from Microsoft to the College Board to make the exam more Microsoft-friendly. (Visual Studio doesn't handle Java 5, which is currently used for the programming questions on the exam.)

Of course, Microsoft is a large company and the fact that one group knew about BlueJ doesn't necessarily mean that the company committed fraud by filing a patent without referencing it as prior art. But Microsoft is also a fabulously wealthy company, and it would have been an easy matter for them to do more research into prior art, had they chosen to pursue this with the same relentlessness as dogging the College Board.

What Now?

Now the cat is out of the bag. It's even on Slashdot, where it immediately degenerated into the usual rant on how the patent system sucks. I know it sucks, but to me, that's not the point.

My point is this. Dr. Kölling is very nervous that Microsoft might shut down BlueJ. Unlike Microsoft, he and his university are not fabulously wealthy, and even filing a simple objection with the patent office is a hardship. Microsoft wants to play nice in the educational community. Relentless but nice. To me, nice would mean that they apologize to Dr. Kölling, belatedly give public credit to him, and withdraw the patent application. I'll update this blog once they do that.

Update:According to this blog, Microsoft is doing just that. Over the weekend, they reviewed the situation, realized they made a mistake, decided to withdraw the application, and apologized to Dr. Kölling.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first)

  • Well, did the BlueJ team contact Microsoft already or vice versa?

    I may have overseen s.th., but I didn't find a quote that MS knows about that whole thing - at least officially. But if they do and insist on the patent, that would make me - and hopefully many others - very angry!

    Posted by: zero on January 28, 2007 at 10:57 AM

  • Cay, do you think that "spreading the word" about what's happening might help Dr. Kölling and BlueJ? I mean, keeping a professional profile, no rants, no useless discussions about patent policies. ;-)

    Posted by: fabriziogiudici on January 28, 2007 at 12:11 PM

  • zero: I don't know who knew what when, but I do know that there are now people at Microsoft who know the whole story and are in a position to fix it. My hope is that they will do the right thing, particularly if they know that many people are watching.

    fabriziogiudici: I do think that "spreading the word " is the most helpful course of action. Please, no rants about the general evils of Microsofoft or the patent system--post those on Slashdot :-)

    Posted by: cayhorstmann on January 28, 2007 at 12:52 PM

  • @cayhorstmann: why no rants when clearly the patent system is broken and Microsoft are full of shit ?
    Microsoft clearly copied the ideas behind BlueJ ... and please, don't tell me they don't know about it ... that would be a pretty stupid assumption.

    Posted by: bonefry on January 28, 2007 at 02:21 PM

  • @bonefry: yes, the patent system is broken, but I don't think we'll fix it soon, while having Dr. Kölling's rights being acknowledged is (hopefully) easier

    Posted by: fabriziogiudici on January 28, 2007 at 03:06 PM

  • http://blogs.msdn.com/danielfe/archive/2007/01/28/update-response-to-bluej-patent-issues.aspx

    Posted by: fcmmok on January 28, 2007 at 06:18 PM

  • Why anyone would want to reuse even a single feature of BlueJ is beyond me. I've yet to see someone who learned "programming" using it who was any good at his job...
    Thanks for the update fcmmok. I guess someone filed a patent application on something without first consulting the people who implemented that something into the product.
    Of course the /. kiddos won't be silenced by anything, but they're enraged whenever they're reminded of the very existence of Microsoft so that's no news.

    Posted by: jwenting on January 29, 2007 at 05:40 AM

  • Isn't it the case that nothing outside the US counts as prior art for a US patent application?

    Posted by: mthornton on January 29, 2007 at 06:45 AM

  • Looks like the situation is now under control: http://www.bluej.org/mrt/?p=23

    Posted by: gsporar on January 29, 2007 at 07:43 AM

  • yes, someone messed up on seeing a nice new feature in visual studio it seems and filed a patent claim without checking with the people that implemented it.

    Posted by: jwenting on January 29, 2007 at 11:05 AM

  • Good catch Cay. I've recently seen a demo related with VS 2005's Object Test Bench and thought about the BlueJ connection as well. Microsoft shouldn't be able to get a patent for this and give proper credits for Michael Kölling's work.


    As you well said, this is not the way to win the hearts and minds of the education community.

    Ogun TIGLI

    Posted by: otigli on January 29, 2007 at 04:59 PM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds