Bits and Bytes: October 2004 Archives

In the Shadow of the Moon

|

No OOPSLA XIX Zeitgeist compendium can ignore the momentium that the Eclipse community continues to exhibit this year. A packed reception on Monday night put an impressive array of contributions on display, notable both for their breadth and depth. Eclipse is moving into what can only be called a Nation Building phase...

It's a simply gorgeous day in Vancouver, and their is some hope that a total eclipse of the moon will be visible later this evening. I knew IBM had a lot of clout...

What a Bunch of Clowns

|

A nod of some sort to the "two cultures" of art and technology has become obligatory at OOPSLA over the last few years. An OOPSLA 2004 Panel chaired by Jim Haungs on whether software design is math or science or arts or crafts revisited the enduring theme of similes for software development (among other things). The four panelists shown to the left, from left to right, are Richard P. Gabriel, Martin Fowler, Steve McConnell, and Ralph Johnson. Shown to the right is late addition Robert Biddle. Photo of Robert Biddle

Two newbies I know later dubbed this panel as the single most impressive thing they'd seen at OOPSLA. I found it pleasant, and at times thought provoking (and I am not one who is easily provoked to thought), though I found myself at the disadvantage of being already familiar with the likely positions of most of the panelists.

Ralph took the eminently sensible position, as is his custom, that software development is, above all, engineering, and gave an engaging presentation on the travails of nineteenth and twentieth century bridge engineering based on the work of Henry Petroski. In the early days of railroading, railroad bridges were as prone to failure as software is now, frequently with more lethal results.

Biddle mined the same fertile post-modern vein that has served him and his antipodean sidekick James Noble so well on the Onward! circuit over the last three years. My recollections of his presentation have melded into a conflated kaleidoscope of notions and reconstructed memories like "the death of orthodoxy" and "making do in a post-precision heterogeneous polyglot playground of a world". I'm pretty sure Robert didn't quite say any of these things, but they are in the spirit of what he said, which was in the spirit of the Zeitgeist he was trying to summon out of the humanities. In this respect, he may been the panelist most true to the panel's theme. I recall some mention of nihilism and certain French academicians. All and all, the sensibility was a generation beyond the outmoded technotopianism that our own villiage elders still hew to, and was in considerably better touch with life in the trenches.

McConnell, predictably, hawked his more troublesome notion of software construction. My main beef with the construction metaphor is that it perpetuates an enduring confusion between software design and software product fabrication. Software design has much more in common with the process of deciding on the layout of a house than it does with the process of merely driving the nails at the site. We are more like the people who design cars than the people who assemble them. The analog to auto assembly for us is disk replication. Despite this fact, the industry has exhibited a persistent desire to treat software development as an essentially blue collar activity. Metaphors like McConnell's do little to dispel this harmful perception.

It's customary to conclude such discussions with the observation that no metaphor is perfect, and that a programmer is, after all, just a programmer, as the agile folk are fond if saying. This discussion was no different. "Programming is like nothing else" opined programmer cum poet Richard P. Gabriel.


I had been content, as of late, to leave this issue there, but the panelists had managed to re-convince me instead that metaphor was more important that ever. Metaphor matters. As I pondered their positions, I was struck by a metaphor drawn from the arts: We're all a bunch of clowns.

So, "What a bunch of clowns!", I exclaimed. Not just the panelists, all of us. Programming is like ... comedy.

Another software simile was born.

For instance, APL programmers and comedians share an affinity for pithy one liners. Take this one for instance: What poetry has in common with code is that no one ever reads it.

Doing either well demands creativity, and a mix of improvisation and scripting skill. Comedians test, iterate and polish their material until it executes perfectly.

Fred Brooks, after all, is said to have found that there is a factor of twenty difference between the best and the worst comedians...


I'd missed most of Dick's position, alas, and hard a hard time recalling what Martin had said, at first. Then I remembered that he'd offered yet another software simile: programmers are like lawyers. I'm pretty sure I shopped this around at a panel a couple of years ago. I liked Martin's treatment, though he could have played up the domain expertise angle more. I've posted my 2002 notes here.

This reference also had the effect of reminding me of one of Martin's previous forays into the realm of object-oriented jurisprudence at the Show Trial of the Gang of Four back in Denver during 1999. Martin can be scene in the solicitor's wig, third from the left. He'd painstakingly supervised the trimmng of the solicitor's wigs beforehand, so as to ensure they were shorter than the presiding judge's, and thereby maintain the dignity of the court.


Gabriel et al. Photograph (C) 2004 by Munawar Hafiz

Some subsequent comments on POMO and Biddle from Ian Clysdale...

My Dog Ate My Keynote

| | Comments (1)

A couple of people have asked me whether I was planning to post anything substantial about OOPSLA 2004. To them I say patience, patience, red meat and fiber take longer to digest than do frilly pastries. For openers, here are a few thoughts on the OOPSLA 2004 Keynote Address.

I apologize in advance for the verbosity of what follows. This is a raw core dump of sorts. Making it taut will take more thought. I’m afraid I’m prone to occasional bouts of logorrhea after traveling abroad.


Microsoft has a checkered past with respect to participation in the broader research community. For too many years, Microsoft was conspicuous only by its absence at OOPSLA. This low profile once prompted one wag to quip that "Listening to Microsoft talk about innovation is like listening to a scavenger talk about hunting."

Hence, its been satisfying over the last several years, dating from around the turn of the century or so, to see the strides Microsoft has made towards the goal of turning this around. They are cranking out more books and papers than ever these days, and their people are getting out more. The acquisition of high-profile free-agents like Ward Cunningham has added more muscle to a lineup that had traditionally been able to boast of a strong bench, but of few long ball hitters.

It was for these reasons, and others, that I was excited at the prospect of hearing from Microsoft's homegrown Research Czar, Rick Rashid.

At this point, I must turn to my notes. Ahem, here they are:


Dr. Richard F. Rashid; Founder and Head of Microsoft Research; a CMU alumnus, who'd worked on Mach; a guy who'd gotten a few bits under his fingernails in his day. Indeed, he observed that current users of Apple’s OS X may still be packing a few lines of his original kernel code in their rigs. I knew nothing of Rick’s background until this morning, and his stock was rising fast (in my book, at least).

The talk was seemingly cobbled together from two strikingly distinct sources. The first part of the talk opened with amusing eyewash, recycled from the likes of COMDEX Conferences gone by.

The future, Rashid predicted, would be about the data. Hey, not a bad hook. His images reinforced an emerging sense that that long delayed digital convergence that the digerati have been braying about for the last few years may finally be upon us at last.

Now, what they’ve been predicting is a cornucopia, an age of resource abundance, a horn of plenty. Petaflops galore. Scores of cores on every desktop 3D horsepower that rivals Pixars. Bandwidth too cheap to meter. The difference these days is that we can finally see it coming. Yes, he’s there too, the rise of the GPU, multicore processors, the whole shebang.

Now, Rashid is talking about heady stuff: Black box flight recorders for humans. The lawyers will love this. We yanks will need to set to work to fix the fourth amendment for anything like this to work.

Hmmm. I guess Planetary Scale is a buzz phrase these days. Will we be able to consult realtime satellite photos to see if there are fresh parking tickets on the windshields of our cars?

Terra Scale / Galactic Scale. Hmmm, 1999 Turing Laureate Jim Gray is talking about Galactic Scale computing. Impressive. Has any mere marketing department ever exhibited megalomania of this magnitude?

http://skyserver.stss.org || http://GPGPU.com || http://www.iova.net || http://skyquery.net

I recalled the climax of Arthur Clarke’s 2010: Something Wonderful is About to Happen. It feels as if Moore’s Law has been treading water of late, expending calories on a phase transition, as if melting ice, rather than generating predictable increases in raw heat. It feels as if, after a period of relative stagnation, things are about to change. It feels exciting. 2010 culminated with a new sun in the sky alongside the old. Jupiter transformed through fusion. The sky was yellow and the sun was blue. I wonder what color our new sun will really turn out to be. But the timeframe is starting to sound about right.

Next, Rashid dug his steam shovel into the ubiquitous computing vein. Smart Personal Object Technology, the Ministry of Software calls it. They have a tiny CLR for everyday gadgets. Neat.

We’ve been digging into sensor nets, control systems, and MPI-worthy clusters at home, and his tales reinforced our hope that this ore dug from this vein will yield more than base metal one of these days.

Yup, he had me up until right about here.


It was at this point that Rashid’s talk took its first ominous turn toward the worse. For one thing, I began to dawn on me that there hadn’t been anything very meaty, very original, in his presentation up until this point. I felt as if in a Mexican Restaurant, filling up on chips, and wondering when the main course would arrive.

The larger, more serious problem was that his focus had changed abruptly from fuzzy lens ink blot fantasies to what Microsoft calls “Software Factories”.

More copies of “Software Factories” left OOPSLA 2004 in the hands of attendees than any other book in OOPSLA history. Given the healthy attendance, the numbers for SF must have easily eclipsed those posted by the Beck/Gamma Eclipse book IBM bought us all last year. This ploy, in turn, obliterated Gamma’s own record, set in 1994, by the GoF book release’s “reading frenzy” in Portland. Of course, the 1994 books were actually sold, whereas these were comps.

Not that I’m complaining or anything. What Irishman minds hearing the words “On the House”? Why look a gift-horse in the mouth, even if he isn’t the fastest pony on the track? But I digress…

Now, as luck would have it, our Software Architecture Group at the University of Illinois at Urbana-Champaign has conducted a series of writers workshops a few months ago that examined a fair bit of this material. As I recall, we had some substantial reservations about where this effort was heading.

For one thing, the notion of “Software Factories” is way off the mark. Something less grandiose; more intimate; might have worked better. I can’t recall the alternatives we came up with (borrowing “weaver” from the AOP crowd might have been one suggestion). I’ll poll our contingent later in the week.

Our more serious reservation is that we think this “programme” is far too ambitious, far too grandiose, to bear substantial fruit over the short haul outside of a handful of set-piece, niche domains.

Proponents would likely counter with “you’ve got to start somewhere.” I suppose … but …

Nooooo, is this Model Driven Development again? For the love of God, noooooo. A proper rant on the excesses of MDA/MDD advocates is beyond the scope of this screed. The upshot: this stuff is being hyped way way to prematurely.


The presentation turned next to Visual Studio 2005. VS05 will evidently include tools for developing domain-specific languages. This sounds like a worthwhile direction, but wasn’t all that easy to tell how this will work.

VS05 will support building programs using diagrams as well as code, and, mirable dictu, refactoring too.

It began to dawn, somewhere in the sluggish recesses of my shopworn mind, that this all was beginning to sound like a response to Eclipse and Websphere.. Let’s see, we’ll have domain-specific plugins, multiple language support, tools for turning code into pretty pictures, and vice versa, refactoring support, an utterly shameless Java nock-off. There is even something named “Corona” in there somewhere. Get it?

Like U.S. Grant, Microsoft is fighting its customary unrelenting war of attrition. Siege tactics. Lastest with the Mostest, as Nathan Bedford Forest might have said (instead).

And, that’s all fine as far as it goes. I use Visual Studio from time to time, and I like it well enough. A commercial alternative to open-source tools like Eclipse is a healthy thing, in my estimation.

Indeed, I heard a lot of people complain that the VS2005 roll-out announcement reeked of crass commercialism. I simply can’t see the problem. I mean, God help us should someone show up at OOPSLA with software for sale. Doing a roll-out at OOPSLA strikes me more as a gesture of respect than of disdain. It’s no wonder exhibitors are so scarce these days.

No, the problem I had with this part of the talk, other than what I’ve prattled on about already, is that he delegated about half of his keynote to an underling. Sure, the Year 2525 stuff and the roll-out were fine, and a fellow like Rashid surely leads a busy life.

Nonetheless, I felt like we were served left-overs, carrion, and I craved something more meaty, and more fresh. It seemed as if Rick had left his A-Game at home in Seattle. I wanted to run out to try to find Rick Rashid’s dog, to see if I could cajole him into coughing up the talk I wanted to hear instead...

--BF, who reserves the right to revise and extend his remarks.
--BF, who has leaned on alimentary metaphors perhaps more than a person should over the course of a blog post…


If you don’t have the courage to say what you think, there isn’t much use in thinking it, is there?
--Thomas Jay Peckish II


Hey, I just noticed the Visual Studio 2005 Beta DVD in my OOPSLA totebag. Thanks guys, I'll give it a look..,

Is "Croquet" Coyly Eponymous?

| | Comments (4)

Alan Kay has had what, by anybody's standards, would have to be called a good year. He recently bagged the Draper and Kyoto Prizes, and is poised to deliver his Turing Award lecture tomorrow night. His praises have been duly and extensively sung elsewhere; let it suffice to say that he has more than ample laurels upon which to rest, should he have so desired.

At the frightful risk of appearing to indulge in "lèse-majesté", I must sheepishly concede that I have, on a few occasions, described Kay as the Orson Welles of Object-Oriented Programming. I'm not completely sure why this comparision came to mind, but genius, pure preternatural genius, was surely a factor. And, like Welles, Kay's best-known, most monumental achievements came at a remarkably young age. Then too, one can, if one squints just the right way, discern a certain pyhsical resemblance between the two.

Unlike Welles, Kay has not taken the luxury of resting his laurels until both had gone to seed. Instead, there's a good chance that he'll be demonstrating Croquet, a remarkably collaborative enviroment that foreshadows what can be done with the coming cornicopia of cycles, bandwidth, and graphical power.

It usually takes a few days to discern OOPSLA's Zeitgeist, if any, but this time its evident already that the buzz junkies will have more than the usual methodone to amuse them...

--BF, who valiantly resisted the tempation to entitle this posting "Citizen Kay"...

The Hajj

|

Given the vagaries a the lunar calendar, this must be at least the second time that OOPSLA has occured during Ramadan. (Yes, it's a Google question of some sort, I know, I know.) In was in this spirit that we set out on our nineteen annual pilgrimage to OOPSLA XIX, in Vancouver, BC.

This is OOPSLA's third time in Vancouver, and our fourth or fifth time in Canada, depending on how one scores Minneapolis. Our air/land journey from Urbana consumed 16:14, besting James Noble's travel time from New Zealand by at least two hours.

OOPSLA 2004 Wiki page for Thomas Jay Peckish II.

Brain Surgery

|

Our web server for the NASA IBEAM Project, http://brain.cs.uiuc.edu, underwent surgery yesterday for an acute respiratory problem, the complications of which included high fever and loss of consciousness. The procedure went smoothly, though more loss of blood than expected was encountered (alas, on the part of the surgeon) than expected. Brian and Brain are resting comforatble, and a complete recovery is expected for both.

The procedure, I'm pleased to report, was neither "brain surgery" nor "rocket science".

Anyway, our server was crashing due to a faulty cooling fan. I rather suspected something of the sort when it would lock up and refuse to do anything, only to return to its old self after being powered down for a few minutes. Still, there was no obvious fan problem to be seen once the covers came off.

Howerver, the BIOS Hardware status page told the take quite vividly. I could see the fan speed for the CPU0 drop from 5400 RPM down to 500, and then to zero, while the CPU temperature rose to nearly 212 F. A smoking gun; a nearly toasted Athlon.


I mention this only because it reinforced something I've been thinking while building test cases of late: why can't more software components work this way? I want code that does more of this kind runtime validation and status reporting in more of the objects I build and use.

Now, this is surely not a new idea; just one I'm personally becoming quite sold on / smitten with of late. Why can't more of these kinds of monitoring and instrumentation facitlites be built into more of our components? As with motherboards, is this a by-product of technical maturity?

About this Archive

This page is a archive of entries in the Bits and Bytes category from October 2004.

Bits and Bytes: September 2004 is the previous archive.

Bits and Bytes: December 2004 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Pages

November 2012

Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Brian's Links

Homepages

Diarists

Brian Marick
Martin Fowler
Ralph Johnson (That's Completely Bogus!)
Dave Thomas (The Pragmatist)
Glenn Vanderberg
Patrick Logan
Lambda the Ultimate
Joshua Allen (Better Living Through Software)
Mariann Unterluggauer (Motz)
James O. Coplien
Eugene Wallingford
Blaine Buxton
Nickieben Bourbaki
Travis Griggs
Ivan Moore
Mike Mikinkovich
Superboy & Ward
Rebecca Wirfs-Brock
Nat Pryce
Tim Ottinger
Forrest Chang
Gregor Hohpe
Sam Gentile
Robert Hanson
Chad Fowler
Jonathan Edwards
James Robertson
Bruce Eckel
Andrew Stopford
Tully Monster
Grady Booch
Dave's Ramblings
ShiningRay
Solveig Haugland
Dave Hoover
But Uncle Bob
Doug Schaefer
Smallthought
Ted Leung
blog.talbot.ws
The Farm
Ian Clysdale (Random)
Gilad Bracha
Keith Devens
Urbana-Champaign Techophiles
Stefan Lauterer (Tinytalk)
Planet Python
Chris Koenig
Peter Lindberg (Tesugen)
Jason Yip
Sean McGrath
Jeff Erickson (Ernie's 3D Pancakes)
Steve Freeman (Mock Turtle Soup)
hakank (komplexitetemergens)
Deciduous Ponderings
Take One Onion
Project.ioi.st
Ken Schreiner
Hen so.com
Michael Mahemoff (Software as She's Developed)
Tootruthy
Champaign Media Watch
Jason E. Sweat's Weblog (PHP, etc.)
Raymond Lewallen (Code Better)
Keith Ray
Raymond Chen (The Old New Thing)
Neil Gafter
Joe Walnes
Ivan Moore
LD/dazza (Lost in La Manche)
Scott Rosenberg (Wordyard)
Dave Stagner (Sit down and shut up!)
Walter Korman (Lemurware)
Munawar Hafiz (The space between)
Rafael de F. Ferreira (Rafael Rambling)
Mike Hostetler (Where Are The Wise Men)
Jordan Magazine
Andriy Solovey (Software Creation)
Mike Griffiths (Ideas and essays on code development)
Ashish Shiraj (Ashish Kumar -- Software Test Engineer)
Nathaniel T. Schutta (Just a thought...)
Lynn Cherny (Ghostweather R&D Blog)
Dominique Boucher (The Scheme Way)

Powered by Movable Type 5.14-en