Showing posts with label Interfaces. Show all posts
Showing posts with label Interfaces. Show all posts

Wednesday, November 12, 2008

Stumbling at the Door

Update:

I ordered my G1 about a week ago. Google said it would be available on the 10th. There was no mail delivery yesterday; it arrived in the mail today (12th). Good.

I try to connect. It won't connect. After 10 minutes with customer service we discover it's because Google has failed to activate my data plan. Customer service agrees it's pretty dumb to sell a phone that requires a data plan without one. She thinks someone forgot to hit “Save”.

I'm slightly confused because, a day after I placed the order, I got a text message from Google informing me of the plan change. Anyway.

Incidentally, without the data plan working, you cannot use the phone at all. Period.

So, I have the phone in a completely non-functional state.

I ask whether I can connect using my home WiFi. After a few rounds with the rep, it becomes clear she has no idea whatsoever what the question really means; additional questions about this yield increasingly garbled answers.

Along the way, she lets slip that yesterday, apparently no Android phones were working at all. But she reassures me that at least they're all working again today.

I am not reassured.

Tuesday, September 23, 2008

Stopped by the Velour Rope

For maybe the first time in my life I tried to stand in line for a new product release. And I was thoroughly rebuffed.

T-Mobile's Web site has been dreadfully slow all day. Even their usually clued-in and cheerful customer service staff sound frazzled and not entirely together with it. It must be tough to be popular (but, folks, did you ever consider a little extra provisioning?).

But, I have no phone.

I called to find out why I was being charged USD 299 instead of USD 179 for it. I had been given a hint by JJ: it had to be no less than about 18 months since my last phone upgrade. Well, in fact, I've suffered through this awful RAZR for a few years now...

Oh wait. In April 2007, Kathi and I got new phones. I didn't like mine, so I returned it. I was assured this would reset my upgrade clock.

Well, it didn't. That is, their records show that I bought and returned the phone, and they agree that this resets the clock, and they know I'm eligible for the deeper discount...but they can't set the bit in their system. So my agent suggests I wait until October 22, the date it becomes available to the masses, at which point they can give me the appropriate discount.

In practical terms this makes almost no difference, because the phone doesn't ship until October 22 anyway. Plus, their Web site suggests that the data plan you have to buy takes effect immediately—i.e., you pay for the plan without a phone to use it. Clever.

Because I've never actually engaged in technolust before, I was tempted to plonk down the extra USD 120 anyway. I would have, if I felt charitable towards T-Mobile. But I feel especially uncharitable today because I've lost over half an hour to their site design. This is because there's a point at which, before it confirms your order, it asks you to re-confirm your identity by entering either your SSN or your DOB. I didn't notice the “or”, which is in the typical tiny T-Mobile font size, and entered both. The imbicile who implemented the site saw it fit to reject such users. (Why did this cost me half an hour? Because T-Mobile has both my wife's records and mine on the account, and sometimes wants my information and sometimes hers, so I had to run through every combination...and while I was at it, I also tried out every combination with and without the leading zeroes. On a day when their servers were glacial when they weren't timing out.)

Welcome to the big leagues, T-Mobile. Now get your act together.

Monday, June 30, 2008

NNTR / NN2R

Mitch Wand pointed me to this article by an email veteran bemoaning what has become of the medium. Obviously, I concur.

One annoying type of message that continues to throw me off my game is those brief “okay” and “thank you” messages, especially from staff. I've been getting increasingly good at anticipating these and affixing NNTR or NN2R to my preceding message. Amazingly, both the former and the latter are indexed in Web dictionaries, which makes me wonder why people don't use them more. [That's “No Need To Reply”, natch, not a Myers-Briggs indicator, though it might as well be.]

Anyway, I do, and I encourage you to as well.

Meanwhile, you ask, what do you do? I'm afraid I still send those replies to staff members, because I think it's just basic etiquette (though many a misplaced good intention has been born there...). I'd like to ask them someday whether they'd be offended if I stopped doing this and instead used that old classic from the days of Usenet: TIA (that's “Thanks in Advance”, for you wee ones).

Wednesday, May 21, 2008

A Totally New Concept for Learning Devices

The book.

That's the latest “totally new concept for learning devices” from Nicholas Negroponte.

To be fair, it's not just a book. It's a battery-powered book. That is new indeed, because a regular book won't stop working in broad daylight, but an OLPC XO2 can.

The OLPC Kool-Aid-addled salesmen continue to trot out the fuzzy math concept that developing countries spend USD 20/year per student on textbooks. I've heard this before from their staff and demanded documentation, and none was forthcoming. I'm not asking just for the sake of it; I'm asking because I absolutely, totally refuse believe that number, for more reasons than I can count.

Notice that Negroponte no longer mentions India in his list of developing countries (besides, there's no room for two `I's in his BRIC...), now that the country wisely turfed his snake-oil out.

Tuesday, March 25, 2008

My Slow Email Movement

I've never been a slow-anything person, other than riding slowly up mountains, and that's only because of the weakness of flesh, not any unwillingness of spirit. So it's not often that I embrace a Slow movement.

But on my Web page, I currently say

Every month I get over 10,000 messages. Of these, just over 8000 messages are spam. In this same time I send over 1000 messages. I am, in short, a full time email employee who gets to do a little teaching and research on the side. You know, as recreation.

If any of the deans or assistant deans or vice-deans or sub-deans or deans-in-waiting or deans-in-law at Brown are reading this: I'm kidding! Everyone else: I'm not!

For a day or two, I played with Google Mail on my mobile phone. Then, one day, I was lost during a bike ride, so I pulled out my mobile to find my whereabouts on Google Maps...and found myself checking my email. Soon after the apps ceased to work on my T-Mobile phone, and I was happy to not investigate why.

For the past year or so, I have rarely been checking my email when I travel. That is, I check it once every two to three days. And here's something amazing. If I wait a day, it takes me about an hour to restore my mailbox. If I wait two days, it takes me about an hour-and-a-half. If I wait three days, it still takes me about an hour-and-a-half.

These numbers are slightly misleading. They mask critical tasks that require real attention to detail and will take much longer than a minute to discharge. But those tasks are relatively few: I can be gone for two weeks and find only two or three such tasks lying in wait when I return. Which suggests I'm significantly promoting in importance things I do encounter daily.

There are other knock-on effects. You've played email ping-pong, right? Everyone treats their mailbox as a task-manager, so you get a task, you reply or forward to put the monkey on someone else's back, they do the same to put it back on yours, and suddenly you've lost an hour of the day (because studies haved, shown that these context-switches are extremely expensive, though as computer scientists, we should have known that). And, since you and your correspondent are both on-line, your reply begets their reply, and so forth. Congestion-control through exponential-backoff, anyone? (This is why I enjoy clearing out backlog during times when lots of people are on vacation: significantly fewer replies.)

The backoff strategy shows where our email user interfaces have gotten it wrong. They show us when we received email, but who cares; they should instead tell us when we should be replying to email. And that “when” should be a combination of when we need to (based on message content) and when it would be prudent to (based on correspondent habits).

So I'm making a conscious decision. I'm going to go Slow on E-Mail. I'm going to treat it as an addiction, like drinking too much coffee. There doesn't seem to be a simple, prescriptive or descriptive classification of addiction treatment akin to the seven stages of grief; much of the on-line material about treating addiction is rather disturbing and possibly borderline dangerous (and, mark me, there's a megachurch out there somewhere that is going to make a killing off faith-based treatments for email). So I'll have to figure this one out on my own.

Do feel free to drop me a note with your thoughts.

Just don't expect me to respond.

Saturday, October 13, 2007

A Driving Record with No Prius

One hidden pleasure of my recent New Mexico trip was getting bumped up to a Prius.

When I first heard the term “regenerative braking”, I remember being thrilled by the concept. It was so obviously a good idea that I was delighted someone had taken the trouble to implement it. And the generalization of the concept had an immediate impact on my own driving, to the point that I saw an improvement in my mileage. But I'd never had a chance to test my skill against the actual thing itself.

There are many redeeming things about driving the Prius. Most of all, because jerky action tends to hurt mileage, and the Prius is constantly reminding you of it, the car instills a certain calm in the driver. It's a lot easier to obey low urban speed-limits when doing so means your car will whisper along on the electric motor alone. And finally, even though I put in a great deal of highway driving (which is not its strongest point), I averaged precisely 55 miles to the gallon on my trip, needing much less than a tank of gas where normally I would have needed much more: indeed, 55 is just about twice the best mileage I normally get from a rental car.

The car is, sadly, marred by several things:

  • Toyota simply has no internal design sense. The interior is true Toyota plastic with controls that are, in general, ugly, unintuitive, ill- and inconsistently-placed, -sized and -lit.
  • The relatively large LCD is another big disappointment, with cheesy graphics and no useful displays (e.g., when certain operations don't function, the LCD provides no useful feedback).
  • In my entire trip I never determined how to turn off the radio, only to turn the volume down to zero. (The volume button can be toggled by pushing, but whether it was depressed or not seemed to have no effect on radio operation.)
  • The rear “spoiler” is in a very awkward place, splitting one large rear window into two ungainly small ones; the glass warps slightly around the spoiler, distorting the view ever-so-slightly; and the spoiler is just about where the lights of cars would be, blocking an important visual cue.
  • The car beeps whenever you put it in reverse, a user interface disaster of staggering proportions.
  • There is a strange ‘B’ driving mode, which turns out to be the low-gear (but they didn't think to use ‘L’: the ‘B’ stands for “braking”, natch).
  • Hovering near certain speeds makes the electric motor turn on and off with regularity; furthermore, every time the motor disengages the car emits a slight clunk and changes its road feel, which is jarring.
  • And finally, the first few times I simply couldn't figure out how to get the car started without rebooting it. (There's a whole new meaning for a car's boot.)

Overall, the car doesn't feel quite ready yet. The internal interface, in particular, desperately demands Acura's masterful attention to detail when it comes to design and layout. And then, I think, I'd be delighted to get one.

Wednesday, September 12, 2007

Gaunt from Charts

I've never really cared for Gantt charts. I've seen them but never really studied them, because they invariably represent the graphical representation of something entirely fake (such as time-lines of work in grant applications). Indeed, they've always seemed mildly worthy of suspicion. When 37signals got into some trouble for refusing to support them in Basecamp, that just confirmed my opinion that 37signals was a slightly eccentric but righteous organization.

Two weeks ago I was scheduling the dates when homeworks would be assigned and due in my course this semester (programming languages), and I wanted to check on the distribution of homeworks and ensure there were never more than two homeworks out concurrently. I set the dates in a calendar and tried to view multiple months at a time, but the result was somehow unsatisfying. I thought for a moment about how I'd like the information presented. What I really wanted, I thought, was a picture—a picture of the homeworks stacked as bars—

Oh wow. I wanted a Gantt chart. (As is so often the case, wisdom follows from necessity.)

Now nothing spells corporateness like a Gantt chart, and nothing spells corporateness like Microsoft, so I figured it to be an ideal match. (Besides, I already knew there was no point trying to do this via 37signals.) Creating a table of the dates in Excel was trivial, so all I needed was to find the Gantt chart mode....

This is how Microsoft wants you to create a Gantt chart (short of buying Microsoft Project, I guess). It's startling to think someone actually wrote those instructions with a straight face. For what it's worth, there's a fine YouTube video that explains this process interactively. Reading the comments is interesting: compared to the usual drivel that people post, just about everyone here is focused, on-topic...and damn grateful.

Thursday, September 06, 2007

MIR3, This is Earth Calling

In the aftermath of the Virginia Tech massacre, campuses are creating emergency notification systems. Brown has outsourced this to a company called MIR3 Intelligent Notification. We had a test run today.

I was aware this morning that there was going to be a test. But I was out for much of the afternoon so I forgot all about it.

I was at my desk this afternoon working on something important when I got a call. It was clearly an automated message (initial pause, followed by a slightly robotic voice), and all it said was something along these lines: “This is an important call. Please press 1 for an important message.” (Certainly the second sentence was verbatim.)

That's it. No identifying information, nothing, nada.

If you've ever worked from home, you know that this is precisely the kind of message that you get mid-day from guys trying to sell you timeshares in Florida. Same kind of voice, same lack of identifying information, same pretend sense of urgency to con you into listening further.

So I hung up, quietly cursing that the damn telemarketers had somehow managed to get my office line.

Only an hour later did I realize what the call was about.

Today they also sent us emergency notification email messages. The messages came in the name of a Brown administrator but from the MIR3 domain name, and the headers had enough to trigger the suspicion of many a spam filter:

Date: Thu, 6 Sep 2007 12:34:00 -0700 (PDT)
From: Walter Hunter <343821_6286449@notify2.mir3.com>
Reply-To: MIR3 System <343821_6286449@notify2.mir3.com>
To: my Brown email address
Subject: Faculty/Staff Notification - Test Only issued at 9/6/07 12:30 PM

It's even more likely to be binned in my case, because I know and have corresponded many times with Walter Hunter, and never through this email address.

Unsatisfied by my unresponsiveness it sent me the same message again, eleven minutes later.

The message body also demonstrated good attention to detail:

We are attempting to verify the accuracy of our data base. Please press or select "1" if you are a staff member

How's that again? I keep pressing 1 at my keyboard...but my email program doesn't seem to know what to do about it. (Don't overlook the charming Victorian prose touch: “data base”.)

And then:

!!! You may respond by doing one of the following: !!!

Nice touch, the three-exclamatory-marks. If the headers made it through a spam filter, this should give the message a fighting chance of being trapped.

And finally, one of my response options:

* Reply to this email with the corresponding number to your response on the top line within the body of the email, e.g., 1 for indicating that you wish to use response option 1.

Option# Response:
1 Faculty or Staff Member
2 Contacted in Error

Clearly these folks are adherents to the rule that, in an emergency, you should make your sentences maximally complicated. The logic is obvious: that's how you test whether the recipient is still clear-headed or is already suffering from smoke-inhalation.

Of course, this is why we conduct tests: so we understand how well our systems work and can, in turn, improve them for when we actually need them. But this first run does not give me a lot of confidence in this company's knowledge of how to create trustworthy communication.

Now I'm waiting to hear now many millions we spent on these “professionals”.

Tuesday, August 21, 2007

Flying Through Words

It's rare that I encounter something in the computing world so novel, so fascinating, and so utterly different—so unlike anything I've thought of myself—that it makes me stop and rethink what I know and do. I recently came across something along these lines: Dasher, a text-entry tool, which I found out about from Spike.

It turns out I'm just late to the party. Several of my colleagues have heard of it, and Kathi even tried it last year as a substitute to typing, but she found it painful with a mouse. I, on the other hand, played with it on my OQO (a tablet PC), and it was the most fun I've had in a while.

The Dasher page contains a link to a Google Video. I figured the talk would be either just the math (which would have been interesting enough) or...or what? Demos for an hour?

It's actually wonderful. The metaphors are, at the very least, tantalizing. Every time I thought there would be no more content, there was yet another new idea. (At minute 33 I started to clap.) There's much fascinating material at the end, too, from translation interfaces to multi-modal inputs (which I've been especially pondering given the need for such things in cell phones).

It's interesting that the rise of mobile computing has led to tools that can actually help the long-neglected physically-impaired. This is just enlightened self-interest at work: on today's mobile computers, we're all “physically-impaired”.

I have some complaints with Dasher:

  • Punctuation is difficult (what is the natural order for punctuation?).
  • It uses the shorter edge of my screen (as Jacob Baskin pointed out, perhaps it's because people write English rightwards rather than downwards).
  • It uses rectangles rather than pie-wedges (Spike claimed some cognitive reason, but I suspect it's just to simplify implementation).
  • Worst of all, it violates its own cardinal axiom, Fitt's Law. Suppose you have two frequent next letters, say p and r. Then these appear in large boxes, and q in an appropriately small one. The boxes are, unfortunately, right-aligned (with the edge of the screen), so you have to navigate this tiny channel between the Scylla of p and Charybdis of r as you hunt for the miniscule q over at screen's edge.

But enough bickering. I certainly will not be using handwriting recognition on my tablet ever again, except in extreme circumstances. And one nice side-effect: Dasher seems to consume far less power than the handwriting recognizer, which is a boon on a lightweight mobile platform.

Wednesday, August 08, 2007

Assault by Battery

Kathi and I are doing a series of user interviews to gather security requirements for a concrete system we're building. This is best done with a recording device for transcription, so we purchased an Olympus DS-2 Digital Voice Recorder.

There are many wonderful things about the DS-2. It's small, it's elegant, the display is legible. The buttons are a little strange: there's no clear on-off, and it was only intuition that led me to figure that putting it on Hold would eventually turn it off. But these are minor complaints for a device that has been functioning quite nicely.

Today, we found the batteries were running low: the indicator had gone from three bars down to one. Since we're still on our first round of batteries, we weren't sure what this meant in terms of recording time. The unit is rated to run 18 hours, but nobody who works with electronics takes these sorts of ratings as anything other than gentle fun, a brief diversion from the world of hard facts. Anyway, I figured, why bother? We'll start recording, keeping an eye on the device; most probably it would work fine; when it runs out, we'll pause the speaker, switch batteries (takes under a minute), and resume.

One major difference between Kathi and me is that she is the kind of person who reads manuals, while I proceed on pure intuition for electronic devices (worked for that Hold button, right?). In this case Kathi's approach was a savior, because on page 11 of the manual, in small print, under Notes, it says

If you are recording into a file and the batteries run out, you will lose your currently recorded file because the file header will not be able to close. It is crucial to change the batteries once you see only one Hash mark in the battery icon.

Give me a moment to scream...okay, I'm back, but I don't feel much better. Never mind that the explanation probably makes no sense to the vast majority of the audience; never mind that it's probably not even true. Just contemplate this failure mode. (I like, especially, the implicit belief that nobody would ever want to use this device in a situation where a single recording might run the entire duration of battery life: a day in the wilderness, say.) As my student Jacob Baskin put it so succintly, “They created a device that performs only one operation...and they couldn't get that one right?”

Sunday, July 08, 2007

Using Bad Marketing to Hide a Weak Product?

So there's this new company that runs movie downloads over the Internet. They're advertising during the Tour de France coverage. I'm interested, and want to check it out.

Except, I can't for the life of me remember exactly what their name is. It's either Vengo or Vango, and because they pronounce it in the French fashion (the ‘n’ is muted), it's difficult to be sure. Only at the very end, and only for a brief split second, do they show the URL.

I visit vango.com. It's a generic NetworkSolutions page. Okay, so someone's parking it. (But why not the actual vendor?)

So, clearly, it's vengo.com. But all that has is a corporate logo and “coming Soon...” [sic]. Huh? So why are they running TV ads?

After a while I finally determine that they're actually Vongo. What does their home page offer?

  • the software download
  • “View TV Spot” (yeah, right...)
  • “View Free Movie Clip” (better...)

But click on the crucial link, “Learn More”, and you get a Flash animation of three ridiculous people labeled “parking”, “shrink” and “funeral”. You have to choose one of these three to get a tour of Vongo.

Well, I don't want a tour, I just want the facts. “Ask Vongo” takes you to some strange combination of FAQ and interactive question answerer with an excessive amount of gratuitous JavaScript (e.g., links look like normal text until you mouse over them, then suddenly turn into blue underlining...spot the problem), all crushed into about 10% of my screen acreage. Clicking “How do I download Vongo?” starts off promising. Then the voice turns bizarre: “If you Click Open, the .exe file will not save on the customer's computer and you will be able to begin the installation” and stays in this voice subsequently (talking about “the customer”). The next sentence is,

If you click Save the .exe will save on the customers cusotmer, once the .exe is saved oyou will have to double click on the .exe to begin the installation.

[sic]. If you start trying to traverse the questions you rapidly get lost in this little q&a box, because there are no navigation mechanisms. (When people complain that browser features like the Back button are “accidental elements”, you feel like dropping them into this kind of interface and saying, “navigate away, buddy”.)

Anyway, amongst the “fundamental design flaws [that] are completely hidden by their superficial design flaws” (in Ted Nelson's memorable phrase), is this: deep in the bowels of this ridiculous information area you find out that they not only have DRM (not surprising), but that it limits you to a mere three devices. That means a couple with, say, a desktop and laptop machine each, and a fifth device that connects to the TV, are out of luck.

So maybe Vengo/Vango/Vongo knows more about their interface than I thought after all. Except I can't really decide whether tear out my hair (“shrink”) or slash my wrists (“funeral”) is more appropriate.

Tuesday, July 03, 2007

Feeling Blue

Since my Bike Friday is in for repairs, I've begun to overhaul and put some miles on my old Specialized. Two years in the basement on the trainer—and not much maintenance before that—have left it in a fairly bad state. But over an hour of washing (with Kathi's help), and a few more (lighter) rounds of that since, have made it ship-shape. While I immediately notice my dislike of the sub-105 Shimano parts, and miss my 50T chainring (I'm back to mashing a bit in my 53T), overall I've been putting on some miles quite comfortably.

One problem with reviving a bike that's been in a basement too long, though, is that you don't know what really works and what doesn't. Last Friday, after a 25 mile ride, I was making the last turn before home when I went down comprehensively. I suffered very little external injury, so initially I was more confused than anything else. (A construction worker nearby asked whether I was okay and, when I replied in the affirmative, he responded, “That was spectacular!” It was immediately clear that he's never seen a real bike crash.) While taking inventory, I noticed that my front tire was...half-flat. So I'd had a very, very slow leak that had gotten progressively flatter as I bumped around town, and on that final hard right turn the tire just buckled.

It turns out that I'm actually quite bruised in various places inside. My friend Laurie Heller recalled that she'd had a similar experience: some of her worst injuries were from her slowest crashes. Due to various internally bruised parts, I can now primarily only ride in the drops. At the very least, I feel quite silly plodding along to school in the morning in that position.

One casualty of my fall was my bar-tape, which was anyway beginning to unravel. Four years ago the bike began with a Specialized Phat Wrap, which is surprisingly comfortable. Two years ago (after another fall) I switched to yellow Cinelli cork: less padded, but a lovely feel. Today I got a Deda Elementi blue wrap. This officially proves that my biking color is blue: blue glasses frame, blue shoes, blue gloves, and now blue wrap. I've realized the reason is because I don't like green, there's too much macho red on the roads already, and yellow is pretentious (or can appear that way).

The Deda tape is a thing of beauty:

(The actual tape is darker than the photo suggests.) Those little dents are just the edges of the logo, which is under wraps. The attention to detail is fantastic: the sticky strip is just broad enough, the color is sublime, it feels like it isn't there, and the package includes both tape for the end and a little supplement to wrap around the back of the hoods.

Once I was done wrapping, I proceeded to install the end plugs. I was about to just shove one in when I noticed it has the Deda ‘D’ logo on it. I stopped, rotated the plug a quarter turn to orient it properly, and only then pushed. That's what beautiful design inspires you to do.

Saturday, June 23, 2007

How Not to Conduct a Survey

The New York Times asks me this morning,

Sorry for the interuption.
Hello! You have been chosen to participate in an important survey from Dynamic Logic, a respected 3rd party research company. This is for RESEARCH PURPOSES ONLY. We are not selling anything. Your answers are grouped anonymously.

I answer affirmatively. I get:

Thank you for your interest. You cannot take this survey because you do not enable questionmarket.com cookies.

Curiously, I don't block cookies from that site. But it does make you wonder why they couldn't have designed the survey software to not need a cookie in the first place. Perhaps this was just their way of saying “Our site doesn't work with Firefox”? (If so, hurrah for Firefox.)

Friday, June 08, 2007

Mismanaged, Again

Another day, another conference paper manager. For another conference we're using something called OpenConf. It's going to be another long one.

First, when I log in to view my list of assigned papers, I get a category called “Papers to Advocate”. The output below this is:

We have encountered a problem: Unable to retrieve papers for advocating

SELECT paperadvocate.paperid, paperadvocate.adv_recommendation, paperreviewer.reviewerid, format, title, avg(recommendation) as paperavg FROM paperadvocate, paper left join paperreviewer on paperadvocate.paperid=paperreviewer.paperid WHERE paperadvocate.advocateid='2' AND paperadvocate.paperid=paper.paperid GROUP BY paperid

Can someone really have failed to test this on the empty input? Startling as that seems, it appears possible, even likely.

After an exchange with the program chairs, I went to view the list of all papers to bid on a few. The papers are listed by title, with no additional information, but that's a perfectly good start. You would expect clicking on a title would give you the title and abstract, and by control-clicking you could open it in a new tab for reading in leisure. Instead, this silly program has no notion of such things; the only other datum it has is the entire paper itself, which slowly loads in a PDF viewer (and consequently makes it difficult to switch between different papers in different tabs).

So my very first two encounters with this system have been painful. Do program chairs not test these things before selecting them? Or do they not realize how bad these interfaces are? Or do they not care?

Addendum: It turns out the conference manager can't show you the other reviews for a paper, either. Not that it has a setting for showing or hiding the other reviews and the PC chairs have turned it off; no, it simply can't show this information at all. No comment necessary.

Wednesday, June 06, 2007

Software Engineers Who Don't Value Software

Software engineering researchers can be bozos.

Software engineers love to sit around tables and complain about how nobody values their work. It's true, too: people will happily pay for physically tangible resources but always expect software to be cheap or free, even if it's much more complex and difficult to engineer than the physical object. So you would think that a software engineering conference, of all things, would appreciate the value of software and be willing to spend a little money to save a lot of time and effort down the road.

As you can guess by the very existence of this entry, you would be spitting-in-your-soup wrong. They've saved themselves a pocketful of change by using the free version of CyberChair (not a great conference manager even in its commercial version, but that's a story for another day), but in the process they've bought the program committee a right-royal headache.

Let's take the bidding interface. I would love to show you some screen-shots, but I can't do it without violating the confidentiality of the authors (or my own bids). This makes me sad, because words cannot do justice to how bad this program is. (I tried to include a redacted version of the HTML here, but Blogger will not accept a frameset tag, more's the pity. But in the process of generating this I had a look at the page source. Not only do many of the tags not nest, there are even closing tags with no corresponding opening tag. Wonderful Perl code, circa 1997.)

The idea is that you bid on all the submitted papers to indicate whether or not you'd like to review them. The bidding interface consists of two frames (yes, frames, in 2007). The left frame is some indifferent text, while the right frame is a long vertical list of all the papers, consisting of a paper number and a drop-down where you select your preference. That's right, paper number: like you know or care.

In the left frame you can select the list of all paper titles, with or without abstracts. So now you have two lists of 419 entries each...in two different frames. Guess who is responsible for keeping them in synch while scrolling through each one independently?

Let's say you've made a dozen bids. You'd hate to lose them because you accidentally killed your browser or something like that. But is there a way of saving bids? No, not unless you scroll down another 407 entries to find a save button (which is cleverly disguised under the name Update Bids, which has exactly the wrong meaning). And if you do save, you'll have to scroll your way all the way back up. (I later found that there's another copy of this button at the very top, which still leaves open a Texas-sized wasteland for the middle 395 papers.)

By the way, be sure to click on the correct button. For reasons that beggar comprehension, the system also offers a Reset button which, presumably, restores the defaults—not, I think, because there is any good reason for it (there absolutely is not), but solely because HTML offers a way of doing this. This is brain-dead user-interface design. And it's about to get worse.

For each paper you can enter a bid, which is an indication of how much you'd like to review it. There's a special category for papers with which you have a conflict-of-interest (a standard term-of-art in this area). Concretely, the bidding categories are that you'd love to review it (A), that you're willing to do so (B), that you'd rather not do so (C), or that you're conflicted with the paper (D). Now which letter would you think goes with Conflict?

As you're looking down the list of all papers (left frame), you might notice that there are two little columns labeled A and C. These are the counts of how many people have already bid A or C on that paper. Let me explain why this is about the stupidest information to provide. You want people to bid bidding independently of each other; you don't want someone to look at a paper and think, “Hmm, I could go either way on this; oh look, we've had ten people bid C and nobody bid A, which suggests nobody really wants to read this paper...I'd be crazy to get stuck with it, so I'll go with C”. I can't imagine a system better designed to make life maximally hard for a program chair.

Anyway, after well over two hours of this last night, I submitted my bids (my hand poised shakily over Update Bids, fearful of what would happen when I clicked). I then sent mail to Kathi, who is also on the committee, warning her to look for any other interface than the list-of-all-papers I'd just been through.

Happily, there is another interface: you can select just an area at a time and view all the papers in that area. Kathi happily marched off to use that, little knowing her life would be worse than mine.

First, the list of papers in an area only changes your view in the left frame. The right frame is still the list of all papers. So if you pick an area and its papers are paper numbers 11, 17, 89, 103, and so forth, guess how you enter your bids for those papers?

Second, you can't choose a single bid for all the papers in an area. That means it's not enough that you don't want to read a single paper on the Semantic Web; you have to find every paper in the category and manually decline (C) each of them. (Hmm; perhaps an Ontology would be able to help with that.)

Third, curiously, the list of papers does not include the A and C columns. In other words, they didn't reuse code! The good software engineering practices just keep on coming.

Finally, many papers fall under multiple categories. But if you bid on paper 11 under one category, it still shows up in sorted numeric order in all its other categories, without even indicating that you've already bid on it. (In other words, you would definitely see far more than 419 papers by the time you're done.)

This is bloody-minded software development in the extreme, a process of mindless, thoughtless, soulless application of algorithm to data structure. It is difficult to imagine that a living, breathing combination of human sinew, blood and fiber could have created an interface so awful.

The real moral, though, lest we lose sight of it, is the waste of it all. There are 34 regular program committee members, 16 people on the “Expert-Review Panel” (including Kathi and me), and two program chairs. Suppose each of us wastes just two hours of our time because of bad software design (seeing as I believe I've alredy wasted one hour, the odds of this are fairly high). Some of these people are fancy consultants, so on average say our time is worth USD 100/hour. That's a collective USD 10,400 just in terms of wasted billable time (never mind the frustration, the lost goodwill, etc). That's far more than the cost of a better conference management package. What does that tell you about what the committee thinks of our time? I can't wait to meet one of these people and hear them complain at the conference about the popular unwillingness to pay for quality software.

Maybe I should send them a bill. Maybe we should all send them bills, so they would come to their senses.