Cisco is like Apple. Only different…

Yesterday was the second or third time ever that I had to deal with a Cisco Pix (a glorified router, if you ask me). Before your jaw drops with secret admiration, I must come clean: I was just typing the commands that someone, who is knowledgeable on this, was dictating word by word over the phone so the router would do what it’s supposed to do – I was just his eyes and fingers for about an hour. This person, however, gets my admiration for having taken the time to learn to manage a piece of hardware as arcane as anything Cisco.

For those unfamiliar with what it’s like to set up a Cisco router, the best example I can think of from my experience today is that it’s exactly what it would feel if you turned off your computer’s monitor only to turn it on, for about a minute, for a quick peek every 10 minutes or so to see the results of what you’ve been doing. It’s a telnet interface (a text screen where you enter commands) and through the process, the device’s feedback is limited to a few error messages and nothing else: if it doesn’t complain about what you typed, you’re on track.

Cisco equipment is famously expensive (I’m sure it’s pretty good too, but then, it really takes effort to make a router that doesn’t do what it’s supposed to, anyway), though the really interesting part of all this is the business model:

  1. Cisco makes expensive equipment that’s a bitch to manage.
  2. Cisco certifies users as Cisco-capable after they take one or more [rather expensive] courses.
  3. After spending a ton of money on getting certified I’d be hell-bent on recommending Cisco equipment (I want my money back, and so would anyone with an IQ higher than their waist size).
  4. Which takes us back to 1.

If there were a 3a, it’d probably read something like “The last thing Cisco-certified people want is for Cisco to add a user interface to their products that’s actually usable.”

The bottom line, though, is that the entire business model relies on the user-interface being as bad as possible. Were they to slap a web server on top of the configuration facilities (like home or small-business routers have), they would self-destroy, as they’d be, in effect, alienating their key evangelists and, in the process, they’d also cheapen their product in the eye of the consumer, as anyone’s teenage nephew would be proficient at it in a matter of hours, if not less.

After today, I think the only way they could make it worse (or better, depending on who you ask) would be to substitute the English commands, which start making a bit (a tiny bit, I must add) of sense after about an hour of being at it, with mnemonics (i.e. “A5” instead of “configure”).

But, how is Cisco like Apple? you might be wondering. Simple: both businesses rely heavily on the user interface of their products, only one couldn’t be better and the other couldn’t be worse.


Less isn’t always less

It’s a fact of life that no amount of testing will render any computer program beyond “hello world” bug free.

In mathematical terms, this could be expressed by “The limit of bug-count in a system will tend to zero as the number of test scenarios approaches infinite,” and while developers test their brain-children as much as humanly-possible, it’s impossible to test all possible scenarios, and mass-use software, that is used in a variety of hardware/software environments and in just as large a variety of circumstances is even harder to perfect.

As a developer of non-massive-consumption software, it’s already challenging for me to ensure that my users don’t hit a wall every once in a while. Developers of massively-consumed software would, likely, win Nobel Peace Prizes were they able to keep a track record even barely close to mine, but the difference doesn’t like in the quality of our work – as a matter of fact, the people behind Firefox, to use an example that’s cross-platform and not piss anyone off, are far more talented than I am.

The difference, really, lies in how we are made aware of problems in our code: my users have direct access to me. If something goes wrong, they give me an angry call (not always, fortunately) and things get fixed right-away (most of the time, I’m proud to say). Reporting a bug in Microsoft Word or Open Office Writer is something that is either impossible, or impossibly challenging, respectively, which brings me to my “Less is not less” statement.

Based on what I’ve experienced on both camps (Windows and linux), I’m willing to bet that for every bug known to the right developers there are at least five that they happily know nothing about.

Microsoft relies heavily on a group of elite users they call MVP’s (Most Valuable Professionals, if I’m not mistaken), getting a bug reported requires that you get an MVP in the right area interested enough in your problem to report it to their point-person at the company. The process is extremely informal and not particularly publicized.

The Linux camp does things more professionally, I must say, but on the flip-side, reporting a bug is so daunting that only a few percentage of users is likely to report problems. One thing that makes reporting problems in Linux inconvenient is that the process is further complicated by having to decide who to report a bug to… is this a KDE bug? Is it an application bug? Is it a distribution bug? Is it a driver bug? Then, once that first round of questions is answered, you need to use that particular component’s bug-reporting facility. The easiest ones require that you visit a web site and register but then have familiar forum-like interfaces, while the others rely on mailing lists (seriously? Mailing lists in this day and age?).

I have lost count of how many times I’ve said fuck-it and lived with blatant bugs in the past because it was impossible or harder than it was worth to report them.

It’s late now, and I don’t have many ideas on how to improve the status quo, but there’s got to be a better way to make those who are able to fix things aware that something needs to be fixed.

Linux’s cost of entry: Almost prohibitively high

After giving it some thought, I’ve come to the conclusion that all the statements (and there’s a lot of them) about Linux being more stable/secure/efficient than Windows are really dumb. It’s like saying that anything makes a better writing instrument that a slice of bread. Anything is better than Windows, when it comes to those particular attributes. It’s called a tautology, if you’re into words.

In the universe of servers, I would only recommend Microsoft if you need to take advantage of any of a plethora of Windows-specific technologies, but I don’t run a server. I run a desktop system (two, actually) mostly for work, and I must say, after a bit over half a year into this experiment, the experience has been nothing short of a slew of uphill battles – some harder than others, and even though I’ll continue using it for the foreseeable future (I’m realizing how obsessive I can get), I’m getting to the point of admitting that expecting Linux in any of its hundreds of incarnations to make any inroads into the average users population out there, is a lost cause.

Today’s battle started because I have a 90-minute audio file that I need to transcribe and I found an audio player designed specifically for this task – Express Scribe, from NCH Software.

NCH’s web site has a link to download the file and not much else, so I clicked on the link, downloaded the file, and finally double-clicked on the file in the folder where I had saved it. This is what I got:

After typing my password and clicking OK, I got this:

I thought I did something wrong, so I repeated the above steps; maybe I mis-typed my password, but I got the same exact results as before.

Knowing full well that repeating a behavior several times expecting different results is a sign of insanity, I stopped trying that.

Eventually, I got the program to work, however, the real issue is that any normal user (especially any user who came to Linux from Windows or, if you’re into unlikely scenarios, from a Mac) would’ve stopped right there and perhaps wonder if the nearest Apple store is closed at the time.

This sort of thing happens often; at least to me. Being the geek I am, I tinker with things until I get them to work, but it’s never straight-forward. In Windows (I’ve never used a Mac, but I don’t think it’s very different), all it takes to install most programs is to run that program’s installer, just like I was expecting to do with Express Scribe, or the developer would take half an hour of his or her time to write a list of steps to follow.

NCH’s download page for Express Scribe doesn’t have anything other than “This is a compiled binary program made for Linux. The advantage is it does not require Wine. The disadvantage is some esoteric proprietary formats cannot be supported.”

Getting the program to run, at first, took opening a console and calling bash to interpret the file I had downloaded and even though it ran, the fact that every time I’d run it I’d get a dialog asking for my password and another mentioning that the installation went well, made me realize that rather than running, this thing was limping around.

In the end it took a number of web searches to find out that if I want to run the program I need to double-click on /opt/nch/scribe/bin/scribe or create a shortcut to it if I want to have it readily-available. (This is actually the solution to the problem.)

Granted, most applications available for Linux install in a more humane way, but this sort of thing has plagued my experience enough times for me to be able to say, with a clear conscience, that anyone who expects to do more with their Linux system than write documents and spreadsheets and browse the web, should be prepared to pay an entry cost that’s much higher than just having to learn and adapt to a different user interface.

Update – 2012-04-16: It seems that the Linux version of Express Scribe is not supported anymore. NCH Software’s web site has no direct link (that I could find, at least) to the page from which I downloaded the program ( as of this writing, in case you landed on this post looking for the application). The best way to use the program is through wine, as the native Linux version has a bug that makes it skip about 2 minutes ahead every time you pause the audio.

%d bloggers like this: