IBM has issued another statement on the TurboHercules imbroglio. This one is reported by the Linux Foundation, but comes from Dan Frye. Dan Frye heads IBM’s Linux Technology Center and was actually at the top of my mental shortlist of likely voices of sanity over there. (Full disclosure: Dan kept me supplied with IBM Thinkpads for a couple of years as a thank-you gesture.)
The good news is that Dan says IBM will stand by the letter of its 2005 pledge. Furthermore, the second sentence of Dan’s pledge leaves no room for doubt that Hercules is a covered project. This is in flat contradiction to whatever brainless droid the Wall Street quoted yesterday on IBM reserving some right to decide that Hercules is ineligible. It also contradicts the previous implication that IBM is prepared to go to court over those two patents.
The bad news is that Dan leaves open the possibility that IBM may sue over the other close to 200 patents. I think it’s important not to overreact to this; his statement was clearly immediate damage control rather than a final ukase. The effect is that IBM now looks as though somebody with a clue has woken up to how much reputation damage their previous blunders have done them.
My guess is that the matter is now being debated (or soon will be) at a level higher than Frye or either of the pair of clowns who had previously made IBM’s posture look so very wrong. This might, still, blow over.
But IBM should hear this, loud and clear: the letter of your pledge is not enough. You cannot simultaneously hold yourself forth as an ally of open source and conduct patent warfare against an open-source project. Betrayal stings; we won’t abide it, and I wouldn’t argue that we should even if I thought I could win that argument. If you try to have this both ways, you will enrage the community more than if you had been a frank enemy all along.
Understand that our intransigence on this score this is only partly on behalf of Hercules itself. We detest the patent weapon, even in the hands of a sometime ally, because we fear it so much. What IBM does in this matter will set a precedent for the behavior of others; if IBM chooses to set the wrong precedent, it will make enemies of us.
Redoubtable hacker Chip Salzenberg wrote me last night with the subject line “You have ascended”. I quote in full:
Long time no chat. Hope you are well. In fact, I don’t have to hope, because I just read this in a book:
Raymond in his brilliant The Cathedral and the Bazaar  …
That’s all well and good, and I know enough authors not to be excessibly impressed by publication.
Thing is, this book is by Fred Brooks. As in, Brooks’ Law.
Oh My Lack Of God.
Do you have a halo now, or maybe a relic to protect you from feature creep?
After boggling for a few minutes, I wrote back:
I can almost top this. Donald Knuth once sent me a bug fix. For INTERCAL.
Hmmm.. Now, where did I stash that Amulet of Yendor?
If you found the preceding exchange cryptic, you
need to get out more are probably a normal human being with, like, a life. How sad for you.
Yesterday I blogged about the escalating dispute between IBM and TurboHercules SAS. I said, and will repeat now, that the central issue for the open-source community in this matter is not the antitrust allegations, but rather the fact that IBM has raised a patent threat alleging that Hercules violates its intellectual property. And especially, that IBM in doing so has cited two patents that were explicitly listed in its 2005 pledge to the open-source community.
IBM has now made matters worse. Much worse.
Sadly, Florian Mueller’s scream of outrage (IBM breaks the taboo and betrays its promise to the FOSS community is not an April Fool’s joke. IBM has done what it swore not to in 2005 – picked up the patent weapon and aimed it to block an open-source project.
I was thoroughly briefed on this about ten days ago by Jay Jurata, a lawyer working for CCIA (Computer and Communications Industry Association), which is even now bringing an antitrust action against IBM over the matter. Assisting him was Jay Maynard, an Armed & Dangerous regular who happens to be the lead of a project called Hercules.
Hercules is an open-source emulator for IBM mainframes. Words cannot easily describe my degree of bogglement the first time Jay brought it up an a Linux laptop in my presence and I saw the unmistakable arcane runes of a 360 boot sequence – and in an old-school band-printer-style font, too. Now, after 11 years during which IBM nodded when its own employees used and contributed to Hercules, Big Blue has brought down the hammer.
The just-released and much hyped iPad is Apple’s second foray into hawking a tablet computer. And all the reasons Steve Jobs would like us to forget that are, in fact, good reasons to remember the Newton and the fact that it never became more than an early-adopter status toy. It, too, was greeted with hosannahs by rapturous Apple fans and a bedazzled trade press back in 1992 – but who remembers it today?
No, not the Central Intelligence Agency. I refer to CIA.vc, a nifty free service that monitors commits on open-source repositories in real time and echoes notifications to IRC. And not really abuse, either – rather, I just implemented a way to make it do something else useful. Others might consider doing likewise.
Me, on the GPSD mailing list:
Once upon a time, I did not hate autotools. Yea verily, it was the morning of the world and all things (even autotools) seemed fresh and new). I’d say this innocence lasted until about, oh, 1995.
But autotools was a kluge. And it did accrete kluges and crocks around it, adding layers of complexity until it became sore difficult to tell which end was up. And lo, it became a festering pile of special cases and obscure semi-documented rules, leading to a combinatorial explosion of unplanned interactions and obscure lossage.
Like, say, the fact that our make check insists on running gps-makeregress twice and in spite of being a genuine autotools expert with fifteen years of experience bear-wrestling the sorry fscker I cannot figure out why it is doing this.
Oh, there’s a reason, all right. And if I were willing to quintuple the three hours I just spent poking at our build setup I’m sure I could find it. But that was three hours wasted as far as solving any real problem was concerned. Life is too short for such nonsense.
Autotools has reached the Chandrasekhar mass limit of software and become a black hole of suck that consumes endless hours of bright peoples’ time without any good result. It is well past time for it to die.
I’ve been doing some heavy work on the core code of gpsd recently, and realized it would be a good idea to explain the whys and wherefores to my co-developers on the project. After I wrote my explanation and reread it, I realized I had managed to generate something that might be relatively accessible, and perhaps even interesting, to people who aren’t intimate with the GPSD codebase.
I guess I’m aiming this at junior programmers and particularly curious non-programmers. It’s a slice of what software systems design — the thing that project leads and architects do — is like in the real world, where the weight of history is often as pressing as today’s requirements list. I think this note shows an example of doing it right, or at least not getting it too badly wrong.
If you find the technicalese in here difficult, it may be useful to refer back to some of my previous posts about this project:
GPSD and Code Excellence
GPSD-NG: A Case Study in Application Protocol Evolution
Why GPSes suck, and what to do about it
Dr. Richard Friedman’s Sabotaging Success, but to What End?, published 2010-03-22 in the New York Times, is about an instantly recognizable pattern — people who sabotage themselves so they can feel like martyred victims of an uncaring world.
The piece is insightful and even funny in a bleak sort of way, but as I read through it I felt an increasing sense that there was something missing from this story. I was nearly at the end before I realized what had been lurking unspoken in Dr. Friedman’s account. But the crucial clue had been there from the beginning, when he writes of one patient “In fact, her status as an injured party afforded her a psychological advantage: she felt morally superior to everyone she felt had mistreated her. This was a role she had no intention of giving up.” Where…now, where had I heard that song before?
I’ve been troping again. This time I found and repaired the TV Tropes page on Faster Than Light Travel. It had previously made a distinction between three subtypes of FTL drive: “jump”, “warp”, and “shortcut”. The “shortcut” category was confused and confusing, and I’ve renamed it to “portal” and fixed the definitions of both “portal” and “warp” subtropes.
I’m now looking for earliest occurrences and trope codifiers on these subtypes. I think I have one nailed down, but I can’t push the other two back very far. Instances and cites are solicited.
The Ides of March, 2010 may be remembered as the day the entitlements crash began. Social Security liabilities exceed inflow, and SSA has begun tapping its vault full of Treasury bonds. “Too bad” (as the AP story notes) “the federal government already spent that money…”
I’ve been enjoying the TV Tropes website a lot recently. Today I created my first full-fledged trope entry: the sonic stunner.
I’ve been wanting to migrate the GPSD codebase off Subversion to a distributed version control system for many months now. GPSD has a particular reason for DVCS; our developers often have to test GPSD sensors outdoors and aren’t necessarily in range of WiFi when they do it.
GPSD also needs to change hosting sites, for reliability reasons I’ve written about before. Though I’m a fan of Mercurial, I determined that moving to git would give us a wider range of hosting options. Also, git and hg are similar enough to make intermigration really easy – from SVN to either is 90% of the way to the other.
This blog entry records two problems I ran into, and solutions for them. One is that the standard way of converting repos does unfortunate things with tags directories. The second is that the CIA hook scripts for git are stale and rather broken.
I’ve had learning the computer language Haskell on my to-do list for some time. I’m actually stepping up to learn it now, thanks to a temporary lull in my other activities and a vicious cold that has left me disinclined to strenuous work. I may associate Haskell with the taste of zinc gluconate for the rest of my days; both have an astringent and medicinal quality and produce fervent claims of effectiveness about which I am moderately optimistic but which I have not yet personally verified.
Haskell is very obviously a language built by mathematical logicians for mathematical logicians. Category theory lurks behind it in the same way that the lambda calculus lurks behind LISP. The following is an effort to make Haskell’s way of carving up the world intelligible, written partly to clarify my own thoughts.
Hmm: On 24th February I wrote, in a comment on this blog:
Weâ€™re about to reach the end of the historical era that began when Bismarck first implemented state socialism in the 1880s. The changes will be huge and wrenching; I wouldnâ€™t even put the dissolution of the USA outside the realm of possibility.
Two days later, Mark Steyn writes this in Our own Greek tragedy:
The 20th century Bismarckian welfare state has run out of people to stick it to.
Coincidence or conspiracy? You be the judge.
In a previous post, How smartphones will disrupt PCs, I explained how and why I think small, ultra-portable, general-purpose computers that we’ll think of and use as “smartphones” are going to displace the PC. I promised then to explain why the software of these devices will be open source.
Go read Androids Will Challenge the iPad. It isn’t about smartphones, but the logic that will break the iPhone business model is clearly set out in it for anyone who’s paying attention. What we’re about to see in the smartphone and tablet markets is a repeat of the way the IBM PC shouldered aside the Apple II after 1980. Google’s deliberately slow-balled launch of Android via the G1 was just prelude; it’s with the Motorola Droid, the unlocked Nexus One and the generic Android tablets that the game begins in earnest.
In the horrible-inevitability department: Darwin Foes Add Warming to Targets.
My first thought when I read this was: “Creationists opposing AGW hysteria? Wow. So those stupid fucks are good for something after all.”
My second thought was: “It’d be a damn shame if AGW ends up discrediting good science with the public, but if it happens the scientific establishment has only itself to blame for not busting the AGW fraud first.”
In fact, I don’t think that bad outcome is likely to happen, for reasons I explained in Will the AGW fraud discredit science?. But this news story is a warning to all scientists: if you don’t want creationists to get traction, you can’t just treat this as someone else’s problem. You have to clean house. You have tolerated liars and rascals like Phil Jones and Rajendra Pachauri in your midst too long; you need to throw them out.
A diplomatic way for any random professional society to do this would be to demand that all climate science must be held to the strictest standards of methodological scrutiny. All data, including primary un-“corrected” datasets, must be available for auditing by third parties. All modeling code must be published. The assumptions made in data reduction and smoothing must be an explicitly documented part of the work product.
These requirements would kill off AGW alarmism as surely as a bullet through the head. But its credibility is already collapsing; the rising issue, now, is to prevent collateral damage from the scientific community’s failure to insist on them sooner. Every day you delay will strengthen the creationists and the flat-earthers and all the other monsters begotten from the sleep of reason.
UPDATE: and, in a nice bookend, ABC follows the money, suggesting strongly that the scientific establishment has failed to clean house because alarmism is just too damn lucrative.
First there was the Tea Party movement. Which I’ve been keeping my distance from because while some of the small-government talk appealed to my libertarian instincts, it seemed to have a whiff of grouchy-old-fart social conservatism about it. While I’ve nearly achieved the calendar age required for grouchy-old-fart status, I don’t want anything to do with that mindset thank you very much.
Then there was the Coffee Party movement, which smelled of astroturf and humbug even before the founder was outed as a Democratic political operative and former New York Times staffer (but I repeat myself).
Now, there’s…the Cocoa Party movement! Yeah. Sign me up!
This satire is especially personally funny to me because in sober fact I am a cocoa-drinker by choice. I don’t like coffee, and while I enjoy tea well enough, I’d rather have a big mug of Godiva Dark Chocolate any day – extra strong, piping hot, no sugar or cream but a few shakes of cinnamon for sure.
My regular readers will know that I’m sometimes fascinated by the extent to which mammalian body language crosses species lines — and, indeed, is so well conserved that families as far apart as felids and primates can communicate in ways that are emotionally satisfying to both parties. We take this for granted, but it’s really quite remarkable when you think about it; there’s a repertoire of mammalian gestures that must have maintained consistent social meanings since the earliest mammals in the late Triassic, 200 million years ago, all the way through dizzying changes in size, encephalization and ecological niche.
My wife Cathy reminded me of another one today: the Nose of Peace. “I thought you’d enjoy this photo of a kitten and a young deer exchanging the Nose of Peace” she wrote; our label for it comes from my attempt to describe to a friend over the phone the behavior of two cats who, after quarrelling for days, decided to get along. My friend understood what was intended by “the Nose of Peace” immediately, and that term for it has since spread to several other mutual friends.
When I do my ESR-the-famous-geek road show, I get two kinds of questions: the public ones from my auduence, and the private ones from people who buttonhole me afterwards because they politely don’t want to burden the audience with their particular concerns. Of these, the single most common one is probably “How do I attract developers to my project?”
Last Wednesday I was giving a talk at University of Pennsylvania, which I do once in most years because it’s near me and one of the professors there, Dr. David Matuszek, is an old friend who likes to have me in once a year as a treat for his students.
One of his colleagues approached me with the familiar question. There isn’t a good general answer to this one, because how you attract developers depends in subtle and complicated ways on which developers you actually want. But this particular pitch interested me because it could be part of a significant change in the open-source tools infrastructure that I see coming down the pike.