Monthly Archives: September 2006

On Sahana: “No innovation matters more than that which saves lives.”

The phrase “collaborative innovation” can be found everywhere these days. I even used it in a talk in St. Louis given two years ago. The above quote, from an official in the Philipines, makes an essential point. As I write I don’t have a reference, but I will add one soon. But going forward always think when you read these posts about how the following relate to each other:

No innovation matters more than that which saves lives.
Take no unfair advantage.
Think!

Copyright (c) 2006 by David Shields. Licensed under the Apache License 2.0.

Take No Unfair Advantage

I made several mistakes in the last few days. I messed up; I screwed up; I took unfair advantage. Mea Culpa.

I’ll write about them in more detail soon. Looking back the main cause was that I did some things out of public view, and thus in doing things in private denied some information from some that everyone had a right to no.

I apologize and I am going to attempt to put into place procedures that will lessen the chance of happening again.

I ran the Jikes project for a year. I begain as the “King” or “Kindly Dictator” and along the way spent more time than I care to admit sorting things out. It was a real-time, slow-time education in open source governance.

I will write this up in detail in the future. When it was all over, I gave a talk about my experiences during that year to a Linux group in NYC in December ’99. At that time I summarized the key principle as:

No member of the OSS community shall take adavantage of another member of the OSS community.

This was based on the Caltech Honor Sysem: It is used to run Caltech: staff, faculty, everybody:

“No member of the Caltech community shall take unfair advantage of any other member of the Caltech community.”

I have trimmed it down so it can work for any community, or for all communities. But you know what, someone expressed this in a single word:

Think!

Think!

Copyright (c) 2006 by David Shields. Licensed under the Apache License 2.0.

On Programming: The Software Development Model BLOAT: Bug Limitation through Optimised Audience Targeting

Ken Coar just announced an interesting model of software development new to the TWIT team. You can find it at
An abbreviated roll-call of development models: Some tell it like it is.

To save the reader even the few seconds it might take to link to Ken’s announce, here is the text for your edification:

Dave Shields wrote up an interesting post about a couple of the more prevalent development models:

  • Release Early, Release Often (RERO — sounds like something Astro might say), and
  • Design Until it Drops (DUD).

I think he missed one, though, which lines up very nicely with John Brunner’s first type of fool1:

Bug Limitation through Optimised Audience Targeting (BLOAT).

The BLOAT model relies more on social engineering than actual code; while existing bugs may or may not be corrected, attention is drawn away from them with the equivalent of, ‘Look! Something shiny!’ End-user reviews used for marketing purposes are collected from those who like the shininess rather than those who have been encountering the gritty, grotty bugs. Practitioners of this model hate to throw anything away, regardless of irrelevance. If it has been used before (under any circumstances), it might be used again — so include it as insurance against that possibility and/or just for completeness. New feature elements, or replacements to existing functionality, are added without the predecessors being removed. Sometimes this is done under the banner of “preserving backward compatibility,” sometimes out of ignorance, and sometimes from laziness. Occasionally the practice is institutionalised into a policy. Software developed under this model tends to exhibit a monotonic increase in size over time, leading directly to the observed behaviour of each new version requiring more disk, CPU, and memory resources just to lever itself into a running condition.

On IBM. Happy Birthday alphaWorks!

I see by Stephen O’Grady’s blog that this week marks the 10th anniversary of IBM’s alphaworks site (aW). [1]

aW was the inspiration of Irving Wladawsky-Berger (known to everyone within IBM as just “Irving” or IWB). It was created not to provide puffery about work in progress but to actuallly provide working implementations of new ideas — a way to throw stuff over the firewall so people could give it a sniff and decide whether to eat it up or to walk away holding their nose. Hence the name: “alpha” is the step before “beta”.

alphaWorks set up shop two months after Jikes had reached the “hello world” stage [2], and when we learned about aW soon after its opening our goal became to get our code out, to see what the world thought.

We had Jikes ready by early April, and just before its release I sent an email to Peter Coffee, a PC Week reporter whose work I had admired. I received my weekly copy of PC Week in paper form those days [3], and just after I got the next issue I got an email from someone saying there was an article about Jikes.

Lucky me! I poured a fresh cup of coffee, skipped past the front page, and went over the rest of the issue page by page, looking for the little, teensy-weensy, box that said “IBM alphaWorks today announced the release of Jikes …”

And you know what? I couldn’t find it. So I turned back to the front page. There was indeed an article by Peter Coffee, something along the lines of “Super Nova announces new Java technology…” Which meant that Peter had found better things to write about. So I tried again and still couldn’t find that itsy-bitsy article about Jikes.

So I went back to that front page one last time, to see what Peter had written,. What had SuperNova done that made Peter decide Jikes was just a hill of beans? [4]

And you know what? Buried in that article was a throw-away section with a couple of sentences, “IBM’s alphaWorks division today released a new Java compiler. It’s called Jikes and it sets new standards for conforming to the Java language specification…”

Now of course I wasn’t the only person reading that front page. I was the only one who read it to learn about Jikes; the others were reading it to see what influential writers thought.

So it should come as no surprise that within a few days Philippe and I were making presentations to senior management to tell them about Jikes. These were folks we had seen before, but had never spoken to. In short we were now “playing with the big boys.” [5]

Those big boys let us continue working on Jikes. Although Jikes was well-known for its speed [6], our focus was on language correctness. We found that we got about one good bug report per thousand downloads. We first heard about Linux in 1997 but weren’t able to give it serious concern until a year later [7]. Linux offered the promise of more downloads — and hence more bug reports — so one of us spent a week reading the GPL [8]. and then wrote a memo to management requesting approval to make Jikes available in binary form for Linux.

Jikes for Linux (binary) was released in mid-July 1998; it was the first program written by IBM release for Linux. It resulted in the biggest splash then yet seen at aW. — true exponential growth [9]. We were Slashdotted. [10]

We knew that releasing a binary would inevitably result in a request to release the source code. This effort was approved just over eight years ago — two years after aW opened.

Jikes in source form was released in early December ’98, and set new aW records for downloads within hours after its release. [11]

Jikes was the first code written by IBM released as open source under a license written by IBM (later approved by the Open Source Initiative). It was later run as an OSS project from a website with an address ending in ‘ibm.com’, using the open source “rules”.

IBM followed up alphaWorks (aW) with developerWorks (dW) three years after aW’s opening. Jikes was the initial offering from dW’s “open source zone.” From the day it was first available, Jikes enjoyed the same success as Apache http server — it enjoyed market share was greater than the combined share of all the others.

As is evident by all of the above, I would not be writing this post now if aW hadn’t been created …

  • aW put Jikes on the map;
  • aW directly led to the best success I — and I think it fair to say Philippe as well – have yet enjoyed at IBM;
  • aW directly resulted in Jikes becoming the first IBM-written program to be included in a mainstream Linux distribution (Red Hat);
  • aW led to all the the other successes, such as on dW, inclusion in SUSE, and on and on, and
  • aW is an ongoing demonstration that the internet is a meritocracy, one that separates the “dogs” from the show-stopping champs [12];
  • and in particular, aW resulted in a project that continued even after we had to stop working it back at the end of 1999; and
  • As a final example, it was aW that directly caused my son’s recently telling me that someone wanted to meet me. It turns out that my son — a fourth-year rabbinical student at Hebrew Union College / Jewish Institute of Religion– was at a wedding of one of his fellow students. The groom happened to be a developer. He uses Jikes every day, and on learning that I — me, moi, myself , my son’s dad –was a co-author of Jikes, said he would like to meet me.

So, as we in the Shields family say, “bust my buttons!”[13] and so therefore let it be said:

Happy Birthday alphaWorks! Keep up the good work.

Footnotes:

1. I knew aW’s 10th was coming up, but I had forgetten it as I wasn’t involved. Seeing Steve’s blog reminded me it was happening. This was an instance of someone outside IBM telling me something about IBM that I had forgotten; more usually it’s that someone outside IBM knows how to help me find someone inside IBM. For example, in early August ’98 I wondered if a single individual (me,moi,myself) could run a project like Jikes, so asked Bruce Perens if he knew anyone who might have some insight. He said I should call someone called Brian Behlendorf. I did, learned that Brian was part of “apache” and said I had IBM was involved with Apache but that I didn’t know how to find these people. He gave me a couple of names.

2. “hello world.” is the most commonly written program in the world. All serious programmers write it at least once each day, and over their careers will realize they have written the same damn simple program for an extranordinarily large number of reasons. For example, in unix, it is just echo hello world, which is easy as pie; in Ada it is about as bad as it can get, since you need to get generics working to handle this simple sucker.

3. I get almost no paper mail. It has reached the same obscure state as most bloggers: knowing that no one will read it, then why write it? For example, I recently changed buildings in Somers. Friday I got a call from the mail-room asking where they should forward my e-mail. I said I only got about one piece a month, so there was no rush — just send it when they had the time.

4. It might have been the dot in dot net folks, or it might not. But anyone like myself who has ever worked in the Java space that is not on the Far Side of the World will take every opportunity to have some fun with the bean-counters.

5. “playing with the big boys.” See Jikes Coupon.

6. Most foks came to Jikes because it was fast. We only cared about getting it right, but knew that speed would help sell Jikes to mgmt and bring us new users. See the work of Clayton Christensen for the implications of all this…

7. Jikes came out in April. While getting Jikes ready for release we learned in February that Sun had announced a new language feature, “inner classes.” An initial review suggested it would be hard to implement. We put that aside while we got Jikes ready for aW. Re visited the matter after the aW April rush and realized that it really was hard. So we shut the project down, and delivered no new release between July and the following March or so. It was this language extension that separated the men from the big boys. Before inner classes, anyone with good “dragon knowledge” could get the job done; after it, the number of serious players shrank drastically. While Jikes has labored on, another language changed called “generic types” (or such, as my Java skills are rusty), may prove sufficiently difficult to implement that it will finally kill the Jikes project. It could be argued that keeping the language simple — avoiding the descent into DUDness — might have been the wiser course.

8. It’s a difficult document to sort out.

9. I have charts of this. It was phenomenal. I bought a scanner a few months ago. When time permits I will plug it in and scan those charts.

10. I’m the IBM “rep” for Slashdot. I love these guys. That’s why I write about them so often.

11. Jikes was announced at 1PM EST on 7 Dec 1998. I was at the phone so the following events would happen with the next minute: IBM keynote speech by Pat Sueltz would include mention of Jikes, alphaWorks would open up the ftp server, Slashdot would post a story, LinuxToday would post a story, and PC Week would release a story about the announcement. (I had given Peter Coffee the “inside skinnie” about the Jikes announce in gratitude for his help in the initial aW announce; this caused our press folks some grief but Peter’s putting it yet again on the front page helped assuage their anguish.)

12. In a prior post I wrote about the neutrality of the net: you are judged by what you do, not what you look like or what you say. I’ve done many of the OSS proposals for aW (most come from Research, and as an ex-IBM-Research RSM I handled a lot of them for a few years, usually working with Jim Chao of the aW team.

A couple of years ago there was a proposal from someone in Japan, a technology for helping disadvantaged folks read a screen. I worked with the proposer over several days. Due to time zone differences we never spoke by phone. We used e-mail and instant messaging. The proposer’s language was always correct English and very courteous, and the instant messaging proceeded at a normal rate. What was unusual was the hours during which this happened. I work odd hours myself — it’s 1:30AM as I write this — and Japan is on the other side of the world. And I realized after a while the proposer was “always on” in that their hours were as unusual as mine.
Work went on at a normal pace, however. I mentioned this to Jim Chao a couple of days later, and he informed me that the proposer was Chieko Asakawa, a blind Japanese woman who was one of the world experts in this area and was also a member of the IBM Academy of Technology, an august group of IBM’s 300 or so of IBM’s best technical experts. This explained her unusual hours: to her night and day were the same.

13. The welcoming entry given to those who ask to see Oz. Not the creator of Notes, but the one behind the curtain.

PS: I have followed Stephen’s blog for some time. I’ve also been running an experiment in the “future is now” issue that has given me new insight, and has also made me appreciate that Stephen is almost up in the Tom Friedman league. I’ll try to write about in … whenever

About Our Project

The project mission is to assist volunteers who desire to improve their communities or provide to those in need of assistance.

The project will base its work on a technology known as “open-source software,” or OSS.

The project will organize itself as a not-for-profit entity as follows:

The project will use accepted OSS management processes to let the members themselves decide how organize their efforts.
The project will rely on the voluntary contributions of the project members to further its efforts.

The project members are expected to create an environment that is both productive and fun.

The project invites the contributions of any interested parties, but in an attempt to keep costs as low as possible it will actively encourage the voluntary part-time contributions of those with OSS skills who happen to work for responsible corporations that are willing to encourage voluntary work on the project. Volunteers will only work with, or on behalf of, clients that are educational institutions and non-profit organizations.

A project member can not take advantage of a project member or a client.

Though the project plans to accumulate no tangible assets, such assets as are so accumulated will be distributed at the discretion of the project members to educational institutions and non-profit organizations.

On Programming. Linus: stick to coding, Patrick is at the helm

If you note the date of this post and search the web for strings of the form “Torvalds pirate” you will see the effect of an email sent by Linus announcing the latest kernel release. It has some “pirate language,” which I think has been conjectured by various press sources to have something to do with a “pirate day” coming up.

Well, we all know Linus is a damn good coder, though it’s hard to compare programming skills. But without a doubt he is the best software project manager in history.

But I suggest he leave the “matey” talk in /dev/null, and let us enjoy the real master at the helm in the realm of nautical language, Patrick O’Brian. author of the best series of historical novels yet written in the English language.

Just to prove a point, I just picked up one of the 19 or so copies of his novels on a nearby helf, flipped a page or two and came across the following, from H.M.S. Surprise, page 289:

The minutes passed: the juice ran down his chin. The French frigates stood on the north-north-west, growing smaller. First the Semillante and then the Belle Poule crossed the wake of the Surprise, gaining the weather-gauge: there was no changing his mind now. The Marengo, her two tiers of guns clearly to be seen, lay on the starboard beam, sailing a parallel course. There was no sound but the high steady note of the wind in the rigging and the beat of the sea on the frigate’s larboard bow. The far-spaced ships scarcely seem edto move in relation to one another from one minute to the next — there seemed to be all the peaceful room in the world.

There is a useful companion to the novels in the form of “A Sea of Words: A Lexicon and Companion for Patrick O’Brian’s Seafaring Tales”, Dean Kean et. al., Henry Holt and Co., New York. For example, “bare poles” on page 89:

with no sail set, the furled sails, as in “with or under (bare) poles.” Said of a ship in a storm that has taken in all her sails because of violent winds.

I don’t think we fully appreciate the influence that all the sea and the ships that sail her have had on our language. There is a wonderful chapter in a memior by Robin McNeal (or MacNeal/Lehrer) about this (his father was a naval officer).

Actually, the example above was the second I found. The first was not that nautical, but was very appropriate to our project. See Post Captain, Page 207:

Captain Aubrey has prevailed upon to accept a few more Hands. Only exceptionally, wide-awake, intelligent men will be entertained, capable of listing a Winchester bushel of Gold; but PERHAPS YOU ARE THE LUCKY MAN! Hurry, there is no time to be lost. Hurry to the Rendezvous at the — YOU MAY BE THE LUCKY MAN WHO IS ACCEPTED!

No troublesome formalities. The best of provisions at 16 oz. to the pound, 4lb of tobacco a month. Free beer, wine and grog! Dancing and fiddling aboard. A health-giving, wealth-giving cruise. Be healthy and wealthy and wise, and bless the day you came aboard the Polychrest!

Patrick’s eloquent prose is what today we call a “pitch”: a word that has many uses, including the motion to and fro in the waves. A pitch offers the promise of rewards and fun to those who join a voyage.

The pitch worked for “Lucky Jack” Aubrey, so I’ll keep on pitching and perhaps it will work for this project.

As we say, “time and tide wait for no man.” Which is another way of saying “Release Early, Release Often,” a topic I will discuss in future notes. [1]

Notes:

1. I did. See The Software Development Model BLOAT: Bug Limitation through Optimised Audience Targeting

Project Status

History

The project was initiated in late 2005 when the group managing IBM’s philanthropic activities thought that already existing work in the area of humanitarian assistance could be advanced by enlisting voluntary efforts of IBMers with programmng skills.

More history to follow later … but it’s worth noting that there was a meeting organized by IBM on May 19th in New York City that brought together many folks interested in this area. (By the way, many of the members of the Apache project personally met for the first time at a meeting organized by IBM in 1998.)

Status: 21 September 2006

The project currently has about ten members. Some come from the philanthropic group, some from IBM’s Crisis Management team, some from IBM’s OSS community, and some from the group that manages IBM OSS efforts.
All are involved in a part-time basis. There is a mix in that some participate both as part of their job and also as volunteers.

Two members with open source experience have begun working with the external community:

  • Rob Eggers is leading a programming effort in support of the Sahana project
  • Dave Shields has volunteered to organize an external effort to be known as SMD (Shameless Marketing Division), the goal of which is to recruit more volunteers and to help have Dave have more fun. Dave started blogging a few months back, but has agreed to focus on project issues and also to pay for any needed hosting expenses out of his own project, as he seeks a new “pal” in the OSS community to help advance the project.

Copyright (c) 2006 by David Shields. Licensed under terms of the Apache License 2.0

A. J. Liebling: “Freedom of the press is guaranteed only to those who own one.”

Since early 2003 I have maintained a list of the URL’s articles, columns, and such that have struck my fancy. Most have been about OSS. I just kept them in one large HTML file for the first few years, then I started using an internal IBM Filefox plugin, dogear, and most recently I have been posting them on the internal IBM wiki about the Volunteers project.

Going forward I will also post some publicly here in a new page to be called “The Wayward Press” in honor of the New Yorker column of that name that was the inspiration for the name of this blog.

A.J. Liebling died in late 1963. I wish he could have been with us longer. I expect some of his best work would have come during the Watergate era, but alas we shall never know.

We also don’t know what he would have made of the internet. But I think we can make a good guess. The article A. J. Liebling in Wikipedia lists some of his notable quotes:

  • “Freedom of the press is guaranteed only to those who own one.”
  • “People everywhere confuse what they read in newspapers with news.”
  • “I can write better than anybody who can write faster, and I can write faster than anybody who can write better.”

The first two are especially apropos today, and the second makes great sense with s/newspapers/blogs/.

But I think he would have been especially pleased by knowing that so many more are guaranteed freedom of the press. We can each have our own press, including my own here at WordPress.

  • Pages

  • September 2006
    M T W T F S S
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
  • RSS The Wayward Word Press

  • Recent Comments

    daveshields on SPITBOL for OSX is now av…
    Russ Urquhart on SPITBOL for OSX is now av…
    Sahana’s Respo… on A brief history of Sahana by S…
    Sahana’s Respo… on A brief history of Sahana by S…
    James Murray on On being the maintainer, sole…
  • Archives

  • Blog Stats

  • Top Posts

  • Top Rated

  • Recent Posts

  • Archives

  • Top Rated