Home > BlueJ, Miscellaneous > Microsoft patents BlueJ

Microsoft patents BlueJ

January 26th, 2007

Bj-Ms

Okay, okay. You know what it’s like with writing headlines: Short and catchy. Accuracy counts as a distant third.

This is my attempt at catchy headline writing. But the truth isn’t far off. It really should have said: Microsoft applies for patent for core BlueJ functionality.
And that’s really true. After blatantly copying BlueJ (without reference or attribution), Microsoft have now filed for patent for the functionality they knowingly copied from us.

Why? To sue us out of the market? To make us pay? Who knows. Sad fact is that this could destroy BlueJ.


The Background

BlueJ is an educational IDE for teaching object-oriented programming and Java to beginners. It is being developed at the University of Kent and Deakin University with support from Sun Microsystems. BlueJ is an academic project, started in 1998, and the software is, and always has been, free.

BlueJ competes with Microsoft’s Visual Studio in the education market. Not ‘compete’ in a commercial sense from our point of view, since we do not run a business, and do not make money from the distribution of BlueJ, but ‘compete’ in a business sense for Microsoft, since BlueJ adoption can theoretically mean lost sales for Redmond.

What’s worse (from the point of view of the Seattle giant): BlueJ is cross platform, and uses Sun’s Java Programming Language. This means that tomorrows developers might grow up working in an ecosystem where they are not locked into the Windows platform, and consequently have the choice to consider alternatives.

Java as a teaching language at schools and universities has been immensly successful, and BlueJ plays a part in this, with many hundreds of institutions adopting it as their teaching platform. Microsoft have struggled to counter this (with C# having entered the market considerably later than Java, and offering no compelling features that enticed departments to switch to it from Java). Their strongest push comes in form of the “MSDN Academic Alliance“, an initiative to get their Visual Studio environment adopted in schools by offering it free (or very cheaply) and offering free training to teachers.

Visual Studio then locks students into developing for the Windows platform, mostly in Visual Basic or C# (though other languages are possible).

So far, this is all the usual competing-for-marketshare game, and there is nothing really exciting about this. For us, the interesting story started in May 2005, when we came across the BlueJ feature copies in Visual Studio.

Feature copying

In May 2005, somebody pointed me towards a blog of Dan Fernandez, at the time “Visual C# Product Manager” at Microsoft (now “Lead Product Manager – Visual Studio Express”).

In his blog post, Mr Fernandez talked about a new Visual Studio feature, the Object Test Bench. This smelled as much like a straight BlueJ copy to us as old cheese smells like – well, old cheese. At the time, I wrote a short article on the BlueJ web site about this. (I won’t repeat the points of the article here – if you want to see whether you agree with us, read the article.)

In short: I didn’t really mind that Microsoft (or anyone else for that matter) copied our ideas, but I was a bit peeved that they claimed it as a new innovation of theirs and proudly presented this “newly developed” feature without attribution.

At the time, I wrote:

“Do I care? 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. Microsoft does not have a good track record on this. So I decided to post these screenshots here so that people can at least see and make up there own minds.”

 

My purpose at the time was just to get this statement out into the public domain, and that was that.


Fear of Microsoft

In the days following that article, several people commented on the case (documented at the bottom of the original article). Many remarked about a possible patent attempt by Microsoft:

“If they have or haven’t is no longer an issue. What should concern you is what if Microsoft patents this “innovation”, where would that leave you and the wonderful BlueJ project? Food for thought.” (DH Allingham)

and

“I echo the fears expressed by others that, lacking patent or copyright protection, you may find yourself overwhelmed by lawsuits from Microsoft, who seem completely willing to patent other people’s inventions and steal them away.” (T N Fields)

At the time, my response was (naïvely?) dismissive:

“Just a short comment on the patent issue: I don’t think we need to be worried about Microsoft possibly taking out a patent on this interaction style. Patent law defines a concept called “prior art”, which invalidates any patent application. Prior art means that if an idea or technique was published before the patent application, then a patent cannot be granted. This is clearly the case here.” (M. Kölling)

Now I may have reason to review my stated opinion.


Microsoft’s Patent Claim

Today, someone (thanks!) pointed me to a patent application by Microsoft for an “Object test bench”. The patent application, filed with the US Patent and Trademark Office, is here.

The patent claims the invention of “a facility” (the object test bench) that “receives an instantiated object, displays the instantiated object visually, receives a command from a developer relating to the instantiated object, and provides a result corresponding to the received command. As an example, the facility invokes a method provided by the instantiated object or retrieves a value of a property of the instantiated object.

Now, you may or may not be familiar with BlueJ. In case you aren’t let me say this: this is an exact description of the core BlueJ functionality (interactive object instantiation and invocation) that we have implemented, distributed, and described in published work since the mid-90s. (In case you are familiar with BlueJ, read on a bit in the patent. The description gets more and more detailed, and the more you read, the more it resembles BlueJ in every small detail. It’s almost creepy.)

We have developed this functionality originally in 1994 for the original Blue system (the predecessor of BlueJ). Blue (and this functionality) was described in my PhD dissertation and various published papers. We have never explicitly claimed invention of this technique, although it was new to us at the time. But I have never undertaken an exhaustive search for prior art, so it is entirely possible that there are earlier implementations. Key concepts are influenced by a variety of other systems anyway, such as Smalltalk and Self.

So my earlier belief that I “don’t think we need to [be] be worried about Microsoft possibly taking out a patent” was clearly misguided.

Ethics

When I published my original article about the copying, I wrote: “Is it unethical? – I don’t know. It’s business, and business sometimes is.” I wasn’t too worried.

Dan Fernandez (of Microsoft, see above), whose blog started all this off, wrote a response to my article in his blog (14 June 2005). I was quite impressed: He was replying quite openly, seemed honestly trying to be fair, and even went to the effort to investigate the situation within Microsoft. He quotes an (unnamed) internal Microsoft team member, including these statements:

“Object Test Bench, which evolved as a visualization of this functionality, was influenced by feedback from teachers who were used to working with BlueJ. “

“[feature tweaking] …borrows from several teaching concepts these teachers already enjoy with BlueJ.”

(You can read the full quote on Fernandez’ blog.)

He goes on to state:

“*My* interpretation of the above statement is basically that our academic customers wanted this because of the success of this BlueJ feature.” (D Fernandez)

It was already pretty clear that the actual implementors had taken BlueJ as a design template (since the interaction was copied so precisely step-by-step that those who would argue coincidence would also believe that Dali’s painting “The Persistence of Memory” was created by a coincidental splattering of paint on an empty canvas).

With Fernandez’ statement it was clear that Microsoft management (at least from then on) were also aware of this.

Now let’s look at the patent application. It is shown as “Filed: October 20, 2005″. That’s several months after Fernandez’ blog entry.

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.

To my nose, it doesn’t get much smellier than that. That stinks.

In the discussion in 2005, there was some quibbling about “invention” versus “innovation”, and whether Microsoft had really claimed that they invented (or innovated?) this feature. (Fernandez stated that MS had made no such claim.)

Now, with the patent filing, the situation is clear. Filing for patent is claiming original invention. Microsoft managers know it’s not true. They are lying. It stinks.

What Does It Mean?

So why are they doing this, and what does it mean for us?

What it means if this application goes through is quite clear: The big Goliath in Redmond can stop us from distributing BlueJ, or demand license payments, and sue us for infringement damages. (A sentence at the end of the patent application reads almost like an ad for applying for a license: They state explicitly that “the facility can integrate into any IDE other than VS”. Now there’s a great new idea. And they immediately make clear that their patent covers all those cases as well.)

We clearly have a claim to “prior art”, but once MS has the patent, it is down to us to challenge it before a court and demonstrate our case.

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.

Why have they done this, when they clearly know that their case is without merit?

Well, I can only guess. Possibly reason might be:

  • They hope that people just don’t notice. They file unjust applications on the (quite realistic) chance that in many cases valid objections won’t be filed, because people are not aware of their claim.
  • They hope that people who have opposing claims do not have the expertise, time, money, or means to object.
  • A Microsoft employee submitted this to his/her (unknowing) supervisor, because of the immense pressure on employees in large software companies to file patents. They might have hoped that the supervisor does not notice, they fulfill their patent quota, and keep their job.

In reality, I don’t know. Your guess is as good as mine.

But 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.

I’m not too happy.

Report post

Share and Enjoy:
  • del.icio.us
  • Digg
  • Reddit
  • Facebook
  • StumbleUpon

mik BlueJ, Miscellaneous , ,

  1. M$ at it again
    | #1

    Micro$oft is at it again.

    Started with dumpster-diving for the source code for BASIC,

    NOW BlueJ, and even into Modular Component Operating Systems (read: Linux).

    Been noted in the past how big business has pushed a new patent with a date predating an already approved patent by a little-guy and then invalidating his patent just to steal IP.

    Micro$oft, the company cliaming how it wants to protect everybody’s IP.

    Report comment

  2. Momma
    | #2

    MS is the devil! Somethin must be wrong with their Medula Oblumgotta.

    Report comment

  3. | #3

    $oftware Patents… what an ugly thing..
    I hope Micro$oft won’t be able to steal your BlueJ technology.. And I hope it will stop stealing whatever technology it finds..
    Does BlueJ work well? I’ve never used it, but if the answer is YES then we have a proof that Micro$oft didn’t make that system :/

    Report comment

  4. Neil Murphy
    | #4

    MS has withdrawn the patent without a fuss as soon as they were notified, that’s not bad. The reality is today that because we allow software patents, and the US Patent Office allows very general patents, then a company like MS almost HAS to patent everything that seems reasonable to do so, otherwise competitors and patent trolls will do so.

    As long as they respond promptly to a notification of prior art (as they have done so) and don’t misuse the patent once they get it (not sure what MS do here) then that’s a reasonable compromise.

    I do think we need to scrap software patents though, they don’t contribute to innovation and they do contribute to shutting down innovation.

    Patents exist to better society as a whole (Not make people rich) by encouraging invention by ensuring the owner gets a fair reward. In the case of e.g. Pharmaceuticals where the cost to bring a new drug to market is hundreds of millions of dollars, then a reasonable patent is useful. For software where the development costs are minimal and easily open to individuals, patents are not necessary or reasonable.

    The same applies to copyright, where we now have copyright lasting decades in order to protect Disney’s revenue stream, not to enhance society.

    Report comment

  5. | #5

    This is awful :( I use BlueJ all the time since I’m learning Java, and its a great piece of software. I really hope you stop them from doing this.

    Report comment

  6. Fley
  7. | #7

    “We clearly have a claim to “prior art”, but once MS has the patent, it is down to us to challenge it before a court and demonstrate our case.”

    I realize that this is a non-issue now since Microsoft has decided to withdraw the Patent Application, but I wanted to take a second to clarify some common misconceptions about the Patent Process.

    First and foremost, there was something a little easier (easier than going to court at least) you could have done once you found out about the Patent Application.

    The Patent Office actually has a provision allowing anyone, at any time, to submit prior art. Statute 35 USC 301 (www.uspto.gov/web/offices/pac/mpep/documents/appxl_35_U_S_C_301.htm#usc35s301)

    Also Rule 1.501 (www.uspto.gov/web/offices/pac/mpep/documents/appxr_1_501.htm#cfr37s1.501)

    Now I realize the laws and rules are semi-vague on how to initiate this process, but section 2202 of the MPEP should give you the exact procedures (www.uspto.gov/web/offices/pac/mpep/documents/2200_2202.htm#sect2202).

    Basically, you write into the Patent Office referencing the publication and stating the reasons you think the Patent should not be granted. Any person can do it. This has pretty much always been around and nobody uses it.

    I realize you would have to send in a physical letter and stuff, but it is certainly better than trying to fight the patent in court. Plus, it looks like you could have just printed out this post and sent it in.

    Second, just because a patent application has been published doesn’t mean that they are going to get the patent. Pretty much everything submitted to the Patent Office gets published eventually whether it is a good application or a bad one. In the end though, the actual patents are usually quite different than the publications that proceeded them.

    Lastly, “the name of the game is in the claims” -Federal Circuit Judge Giles Rich

    Just because the specification of a Patent Application talks about the world, it doesn’t mean the world is getting patented. Lots of times, the title, abstract, and even large parts of the specification, have little to do with the eventual, actual, patent. The issued claims are the binding part of the patent in most cases.

    Sorry for the long post.

    Report comment

  8. kdweeb
  9. David Dowson M255 07
    | #9

    It is unlikely to be effective but could I suggest that Brits sign the e-petition to the Prime Minister relating to Microsoft overcharging UK users for the Vista OS.
    Relevant web site is
    http://petitions.pm.gov.uk/VistaOvercharge/

    Report comment

  10. | #10

    A lot of people seem to be responding to this as though they missed the fact that the patent application has been withdrawn.

    I understand why MS did this (protection from frivolous lawsuits), but victims in similar situations won’t be so lucky. BlueJ has fared well in this situation because of its popularity and publicity.

    I’m happy the situation has settled favorably. I wanted to stay in academia and continue working on Green, but Dr. Alphonce wasn’t able to take me on as a Ph. D student. I wish you all the best. I’m in industry now; maybe I’ll see you again at OOPSLA.

    Report comment

Comment pages
Comments are closed.
Protected by Akismet. Blog with WordPress.
The views expressed in this blog are not necessarily those of the University of Kent. Conditions of Use and Guidelines | blogs.kent