08 December 2006

Why Computers Suck

There is only one basic human right, the right to do as you damn well please. And with it comes the only basic human duty, the duty to take the consequences.

--P. J. O'Rourke

Philo sent me a link to some P.J. O'Rourke quotes today, and although many are hilarious and insightful, that one stands out as my favorite.

But that's not what I want to write about today. I want to write about something that was on my bulleted list a couple posts ago: Usability.

iTunes 7.0.2 Sucks

In particular, I want to express my extreme disappointment with iTunes 7.02. And computers in general, but first let me slam Apple for a while.

First, let me explain about iTunes. I used to be an Apple user until around my second year of university, when I switched to Linux. It was only grudgingly that I allowed myself to get sucked into the world of Windows several years later, and I still have a soft spot in my heart for the cryptic elegance of Linux, as well as a deep and abiding respect for the unshakable, yet very expensive, standards of Apple.

To me, the message of Apple was always, "We will restrict our users to our hardware and our software, denying them choice and configurability, but in return, we will give them a quality, impeccably stable system with a slick user interface which is aesthetically unparalleled. And although we will charge them top dollar for it, it will be worth it to them, and they will be more than happy to pay."

I think there's a certain integrity to that statement, which, incidentally, has never been made by Apple in those words, but which they may license from me for an appropriate copyright fee. From graphic designers to "I don't want to know how a computer works" people, to astronomers, musicians, and black-coffee-drinking poets, they have amassed an enormous following that respects their "top dollar for top quality" policy.

I bought an iPod last year, and it has brought happiness to my life. The iPod is a beautiful object, and iTunes has, until now, been an excellent, or at least, stable and passable, software product.

Now fast-forward to September 12, 2006. Apple releases iTunes 7. With software from other makers, I often hesitate when upgrading and installing new versions, assuming that there will be unanticipated bugs, and instead wait a couple weeks to watch disaster strike the foolhardy. With Apple, though, things were different. Their entire business model was based on an unwavering commitment to quality and usability. Apple, I foolishly thought, is a company I can trust. Given that iTunes 6 was a touch on the slow side, I naively thought that iTunes 7 would be an improvement. And thus I clicked on the fateful "Download" button.

Now, when I run iTunes, my computer is unusable. Something that it does causes my "System" process to suck 50% of my CPU, and all of my applications hang for an indefinite amount of time when I click on things in iTunes. It is quite sporadic and difficult to pin down, but the effect is bad enough that I have had to give up using iTunes completely. Ironically, I actually listen to my iPod while sitting at my computer now.

Other people had worse problems, of course, and Apple released iTunes 7.0.1 to fix their issues. Then they released 7.0.2 to fix the rest of the problems. Then, apparently, enough of their customers were happy that they decided it was no longer cost-effective to respond to the desperate cries of users like me on their forums and actually fix their software any further.

So here I am, trying to make a CD for a friend, and barely able to use iTunes to do it. I have actually resorted to writing the track names down on paper to decide the order, which is what I used to do in junior high school when making mix tapes. Sad, sad, sad. It's not that I mind using a pencil and paper (even notepad hangs when iTunes is open), but my faith in Apple has been shattered forever. As soon as I get the time and energy, I will start exploring all of the iTunes clones and alternatives that are out there.

The Real Problem

But I'm not just talking about Apple and iTunes. This problem is much more endemic and sinister. What people need is stable, reliable, simple, and usable software. What the marketing people think people want is flashy, cool, new features and infinite configurability. Actually, that's also what the engineering people want to build. And perhaps it's even what some users think they need.

Unfortunately, all of this feature creep leads to memory-hogging programs that are unstable.

Now, instability is ok if we're talking about bleeding-edge technologies that people are playing with for fun. If you agree to beta-test some cool new software, the risk of instability is part of what you're signing up for. However, once you have valuable data entrusted to a computer, you want to believe that that data is safe. And yet the question no longer seems to be whether a Windows system will get gunked up, crash, and die, but rather, how long will it be safe to wait between full reinstalls?

Computers have made a transition from being high-tech toys to being a fundamental part of our lives. With that shift in roles comes a shift in responsibility. Microsoft and other developers of major applications now bear the responsibility to create systems where stability and security are the highest priorities. Of course this is a daunting task, but my point is that they shouldn't be putting their effort into adding bells, whistles, dynamic 3D shadows, and irritating talking paperclips to Word.

Here's a good example - the other day a friend of mine called me at 2:30am with a Blue Screen Of Death. What do you do when the computer bluescreens, will not boot in Safe Mode, and tells you only this?

IRQL_NOT_LESS_OR_EQUAL

Technical Info:

*** STOP: 0x0000000A ( 0x 010007E8, 0x 0000001D, 0x 00000000, 0x 804D9D57 )

This is completely unhelpful to any normal person who's not a sysadmin and who doesn't have a second computer handy to search for the error message on the web.

The fact is, most people don't even know where their documents are, much less the relationship between the "My Documents" folder in Windows and their "C Drive". These are the people whose computers will fall victim to viruses and crapware, and they won't have the foggiest idea of how to back up their data. Especially when the HP support line gives, "Try reformatting your hard disk and reinstalling Windows" as a first resort. Yes, they said that to my sister, and she lost all her data!

This doesn't have to happen.

Computers should not be difficult to use.

Software and system stability should be a priority.

We, as engineers, need to consider that software is actually used by real people. And we, as consumers, need to hold software makers accountable for these things.

I feel very, very strongly about this. People think I'm joking when I say I hate computers, but I think it's tragic that we are so dependent on them while they persist in their current state of technological immaturity.

Enough for tonight. Good night, everyone, and don't forget to back up your data.

6 comments:

lily said...

you took 033 right? your post reminded me of the first paper they make you read: "Worse is Better" by Richard Gabriel. it basically talks about how engineers shouldn't aim for completeness, but should instead focus on getting 80% of cases right in a fast/stable way. it was a big takeaway lesson of the class. i thought you'd be happy to know that some people are learning the evils of feature creep.

lily said...

speaking of betas, have you switched over to blogger beta? i tend to have the same faith in google that you did in apple, but i'm lazier. should i switch? and thanks for the warning about itunes. i still haven't clicked the download button and now i don't plan to.

Anonymous said...

I haven't seen much difference since switching over to beta, except now you don't need an extra nick & password to sign into your blogger account. I think...

Kern said...

As somebody who is (at least on paper) a computer engineer, I share your pain.

There's an axiom in computer engineering that says hardware tends to double in capacity/speed/power roughly every 18 months. That's pretty impressive. Unfortunately, software makers write bloatware DESIGNED to fully utilize the hardware that will be available when they actually release, so your PRODUCTIVITY doesn't increase at anywhere near that rate, and may in many cases (like Dylan's experience with iTunes 7) take a step back. That simply shouldn't be.

The compter I'm using right now has roughly 8000 TIMES as much RAM as the computer 64 computer I had as a child. 8000 TIMES!! The C64 actually had 32KB of RAM, and this machine is packing 256MB. But for the software of today, that's considered woefully inadequate and I feel like I desperately need to buy more.

The storage capacity, processor speed, etc. are similarly astronomically beyond the C64. But is this machine 8000 times as useful? 8000 times as fun? Certainly not. Yes, I can do lots of stuff now that I couldn't do back then, but I don't think it's living up to its potential as an unimaginably powerful computing beast. Why? For all the reasons Dylan cited. Because it's easier to market flash than substance. Because there's nothing "sexy" about releasing a new product that's just like your old product but with half the memory footprint and half the bugs.

The other thing I wanted to say was that even if you had some means to look up a blue screen error message, it probably wouldn't help. That's why the techie you end up calling almost inevitably ends up telling you to reinstall.

Software systems, like hardware systems reach a level of complexity where frankly, NOBODY knows how the whole thing works. If a small piece breaks, it can be fixed or replaced, but for a fundamental, core error, you just have to throw it out and start again.

Dylan said...

lily >

I never took 033, but I'm glad they address this issue in that class. I wonder how many people take it to heart.

I haven't switched over to Blogger Beta for two reasons - first, they haven't offered me the link to switch my whole blog over, and second, I've heard that people have had problems with it. I hope they get the beta features working soon for everyone, though... I'd love to be able to categorize my posts - "philosophical rants", "life updates", "exploring Japan", etc.

kern >

Amen to that.

And actually, I was able to help her fix the problem... apparently it came from a corrupt boot.ini, so by using the XP recovery console and running chkdsk /p (and possibly "fixboot", although I don't think she had to do that) we got it running again.

blah said...

YES, SOMEBODY SAID IT! I hate the bloody paperclip! What I hate more is the stoopid puppy that comes out in WinXP when you try to search for files. Not only is it irritating, it is not even anti-aliased properly!