Category Archives: Internet & Technology

Charming imperfection

Started using http://www.google.com/chrome this week, and today realised that it shares a certain feel with Linux. This intriguing mix of charming new features and glaring lack of old and relied on ones; of impressive performance and uncomfortable glitches; new design and minor trapdoors.

It is fast, it is pretty, it offers an interesting take on a few user-interface elements, it’s certainly a pleasant and modern feeling piece of software to use. It feels like Firefox felt, back in the day, before it was called Firefox and began to become what it once set out to attack.

But that’s the catch: charming youth comes with youthful imperfection. It’s just part of the package. No form completion (which seriously kills some business scenarios). Bad Flash-performance (Linux-people start grimacing at the mere thought of Flash). Awkward file-handling and weird text-selection (things not working quite as you’re used to being oh so very Linux!).

Many of those are teething troubles or yet-to-be-implemented features. They’ll be fixed, adjusted and introduced. The interesting question is: will it then still feel modern and youthful?

Line numbers?

Just working my way into Eclipse and once again found myself searching for the option to enable the displaying of line numbers. Like with any other IDE (that’s “Integrated Development Environment”) or standalone code editor I came across.

Seriously people, what’s the idea? Was there ever a developer out there who did not want to have his line numbers displayed? You guys have “productivity” written on every surface you can reach, so why not just turn on line numbers by default and enhance everyone’s productivity by saving us the time to search for the appropriate option (and then to go and write a blog post on it)? Your tool isn’t supposed to help us write business letters – it’s supposed to help us program. And programmers want line numbers!

/rant_off

Human Failure

Just read a random news bit on a sports site (German, thus not linking here).
Context: Formula 1.
Content: Ferrari testing (and intending to use) the electronic “traffic light” as replacement for the old school lollipop-guy to signal the driver when he can start again after a pit stop.
Background: Apparently, last year the system malfunctioned, signalled “green” to a driver too early, he started still having the fuel hose inserted, it all cost him time and (in one of those wonderful “what would have been if everything would have been exactly the same except for this one very event” scenarios) ultimately the championship.
Where it gets interesting: A person in the comments pointed out, that such mistakes did happen to human lollipop-men in the past as well. And, yes, although my F1 watching days are long gone, even I can confirm that such mishaps would happen a few times a year. You’d hardly ever go a full season without seeing at least one event of someone starting while still connected to the fuel hose ever since refuelling was introduced back in the 90ies.

And that reminded me of something. Something I was told during my computer science education (not to claim this is some highly complex truth, it’s just a question of when it’s pointed out to you). We are disproportionately harder on machines than on human operators when it comes to failure. Think plane crashes, to put forward a rather big scale example. When the investigation reveals “human failure”, the story usually ends right there, because, well, to err is human. But when, on the other hand, it turns out that some sensor gave the wrong reading, you can be sure a big headline scandal along with a whole stack of compensation lawsuits will follow.

There are good and rational reasons for it, of course. Technical errors are more likely to reoccur and be found throughout all instances (installed in many different systems, e.g. planes) of the component in question, assuming they are deterministic in some way. So it’s a generally good idea to go and find out exactly why the malfunction happened and how we can prevent repeat. Also, on a more cynical note, there’s just not much fun in suing a pilot who might be dead himself or being in a half-coma, spending every wake moment feeling extremely miserable already – your 50-million-claim might get through, but you’re unlikely to ever see any actual money.

But there’s also a very primal and emotional side to it. If we’re destined to die, we’d rather have it happen at the hands of a human than a computer chip. You know, sort of like .. keeping it in the family. We expect humans to fail. We expect machines to be flawless. And although this is a good expectation, one that ups responsibility and strengthens sound development patterns, we still need to understand, that machines are created by humans. And those still can err.

To add another thought and put the said in perspective: there’s also another phenomenon on the rise and spreading, on the other end of the scale of man-machine-interaction. The “computer malfunction” excuse. Usually used by clerks and sometimes accompanied by God’s Last Message to His Creation. It’s supposed to be a magic formula implying “hey, look, I told you it’s a computer malfunction, so it’s obviously not my fault and there’s just as obviously nothing I could have done to help you or prevent it, so there’s nothing you can reasonably be angry about”. Uh, sure, maybe my very health or financial existence was threatened, maybe I was forced to invest huge amounts of time into trying to achieve or fix something that should have been a triviality, maybe it’s the 20th time we’re having this conversation and you’re still unable to get it right, but, seriously, how could I reasonably be angry about all of this. Just because during all the time, repeated requests and demands you could not be bothered to actually take matters in your own hands and do your job, and now are blaming everything on a “computer malfunction”, that probably went somewhere along the lines of “you entered wrong data into the computer causing it to do wrong things to my life”? That’d be really insane of me, indeed.

Bottom line to this post: computers are not divine beings. They are neither perfect by nature, nor the ultimate excuse for screwing up things.