One of the things that's irksome to me is when Comedy Central's Daily Show staff takes a break and inevitably something really controversial happens and I lack the lampooning perspective brought by Jon Stewart and his writers. I suppose I should be more understanding now, since the same thing just happened to me while I was on vacation last week.
I refer to the IBM/TurboHercules tussle, which has been brewing for some time, but jumped into the public's attention span on April 6, when FOSS software advocate Florian Mueller fingered IBM as violating its 2005 patent pledge to the open source community. That pledge listed 500 patents over which IBM would not sue any open source developer.
So when two of those 500 patents were listed on a March 11 letter from IBM to TurboHercules SAS as "a non-exhaustive list of IBM U.S. patents that protect innovative elements of IBM's mainframe architecture and that IBM believes will be infringed by an emulator covering those elements," Mueller was, to say the least, ticked.
The thing is, Mueller may have jumped the gun on his accusations that Big Blue was giving the finger to the open source community.
Here's the backstory: the Hercules project is "an open source software implementation of the mainframe System/370 and ESA/390 architectures, in addition to the new 64-bit z/Architecture. Hercules runs under Linux, Windows (98, NT, 2000, and XP), Solaris, FreeBSD, and Mac OS X (10.3 and later)."
Basically, Hercules is an emulator that lets uses run mainframe applications on a non-mainframe platform. IBM is very much interested in keeping it's proprietary software and hardware mainframe combination locked up, unfortunately, so its casting a wary eye on the TurboHercules commercial entity.
TurboHercules SAS makes use of the Hercules code and markets the emulator product as a "disaster recovery alternative." You don't buy their product to avoid using IBM's hardware, but rather have it in place in case something goes wrong with your mainframes and you need to get up and running in a hurry.
Historically, IBM doesn't seem to have had any problem with Hercules, which is licensed under the Q Public License. In fact, Hercules was originally featured in one of IBM's own Redbooks (though, oddly, that information was later removed). And it is well-documented that IBM developers have been active participants in Hercules development for years.
What IBM seems to have a problem with is the commercial use of Hercules within the TurboHercules business. TurboHercules offers a turnkey solution (shipped on an HP Proliant DL380G6 server running Windows Server 2008 R2 Enterprise Edition) and a software-only product. It appears that both offerings use a binary version of pure Hercules code, compiled for Windows Server 2008, so the QPL seems to apply to the commercial version, too.
So, the question becomes, did IBM take a patent swing at a company using open source software?
The answer is, not really.
First, it's very important to note that the IBM letter to TurboHercules does not appear to be any sort of legal threat. Apparently, in an earlier letter on November 18, 2009, TurboHercules was "surprised at [IBM's] suggestion that our TurboHercules product--which merely relies on Hercules open source emulation software to run z/OS on Intel-based servers--might infringe certain IBM intellectual property."
Uh, I'm not a software engineer or a lawyer, but it seems pretty disingenuous to think that IBM wouldn't suspect a hardware emulator of its proprietary mainframe platform of infringing something. Even if TurboHercules' (and the underlying Hercules open source project's) code is clean, would you really be surprised that IBM raised some questions?
Continuing, the list of patents and patent applications that Mueller is upset about was actually given by IBM to TurboHercules at the French company's request, also in their Nov. 19 letter to IBM: "If you believe that the Hercules open source project infringes any IBM intellectual property, please identify it so that we can investigate that claim."
TurboHercules' President Roger Bowler (and creator of Hercules) then added an additional request: "In the unlikely event that IBM does believe that the Hercules open source project infringes any IBM intellectual property, we kindly ask you to add any such property to the portfolio of patents that IBM has already pledged for the free use of the open source community."
In other words, we don't think we're infringing, but if you think we are, can you make those patents part of the open source pledge, too. On the whole, reasonable to me, as it appears Bowler is covering all his bases. And it does have the appearance of making IBM look like the neighborhood kid who won't share his toys.
But here's something Mueller forgot to mention: what started this whole discussion in the first place was a July 29 letter from TurboHercules to IBM France asking for a licensed version of IBM's mainframe z/OS for TurboHercules' customers.
"Specifically, we would like you to consider making available to your mainframe customers a license for IBM operating systems on the TurboHercules platform. TurboHercules S.A.S., as the commercial entity, would provide support for a complete turnkey system based on these licenses. The pricing, conditions and limitations of that license would be at the sole discretion of IBM on reasonable and fair terms."
Looking at how all of this unfolded, it seems clear that IBM, rather than randomly trying to shut out TurboHercules, is instead declining a request to grant licenses to TurboHercules customers for technology IBM believes belongs to IBM in the first place. Their patent list is a straightforward answer to TurboHercules' "why won't you?" question.
Once the answer was received, TurboHercules wasted no time in getting an anti-trust complaint filed against IBM to the European Commission. That complaint was announced on Bowler's blog on March 23, 12 days after IBM sent the patent list to TurboHercules.
The dates are mentioned because there's an interesting sub-text going on here. While the latest IBM letter is dated March 11, TurboHercules claims that it did not receive the letter until March 25. So, if anyone claims that TurboHercules filed this antitrust complaint with the EC as a response to this patent list, they are wrong. The complaint was filed against IBM's alleged behavior in locking up its mainframe package.
Regarding the antitrust complaint, we'll need to see how it shakes out. What's of more interest to the community of course is whether IBM is planning on breaking its 2005 patent pledge.
I don't believe that's the case. TurboHercules wanted a list of potential infringements, and IBM obliged. At the end of the day, this was probably no more than a case of someone in Legal forgetting to cross-check the list of 500 no-sue patents. Or maybe IBM did, but were figuring it didn't apply to how TurboHercules was using IBM's alleged IP. Plus, so far the exchange between IBM and TurboHercules has fallen well short of any direct threat of patent litigation.
IBM could have made their point and avoided a whole lot of PR flack by just leaving those two patents off the list, regardless of what they believe is right, so at worst they're guilty of leaping before they look. But not guilty of breaking a promise.
As for the larger antitrust issue, and the even larger this-is-why-patents-are-stupid issue--that's a discussion for another time.