« Wither Radio Shack | Main | The Best Start-Up Haiku »

May 27, 2007 9:36 AM

Why Do Computers Suck So Much?

It’s 2007.  I was ready to go for my long run at 9am.  It’s 9:27am.  I’ve spent the last 27 minutes trying to get iTunes on my Vista-based laptop to sync my newly downloaded podcasts properly with my Nano.

10 minutes was spent fighting with iTunes before I gave up trying to get it to find my Nano (and then trying to close / restart iTunes.)  10 minutes was spent rebooting Vista (shut down / restart / reload everything.)  It’s finally now syncing properly.  Yes, I’m still living the iTurd life.

The age old solution of “turning it off and turning it back on” is the solution.  Egads.

Now – before you just say “switch to a Mac” – I have a whole series of things I do on a Vista box that don’t work well on a Mac, so I’m basically out of luck there also.  Maybe I should have been a luddite this morning and just gone run without my iPod and my Garmen Forerunner 305.  Or maybe I should just quit whining and accept that as long as this stuff is completely messed up, there’s massive opportunities for all the companies I like to invest in.  “Sucking less” continues to be an effective strategy.

Posted in: Computer Industry

COMMENTS (12)

Why? Simple: Product development races faster and faster until the products "suck" so much they are of small or even negative value.

This is a special case of the general reason: Quite broadly, situations get worse and worse until they are constrained by hard limits.

To make products, and other life situations, "suck" less, one approach is to insist on a norm of high quality: Save the frustration of situations that "suck". Typically get to use a product longer and, thus, avoid the risk of a replacement product that will "suck". Broadly, respect people who hate things that "suck".

Another approach is to use fewer new, bleeding-edge products. In particular, I'm surprised that you would want to use Vista yet. In two years? Likely. Now? Not me! Heck, my next operating system will likely be Windows Server 2003.

To hope that iTunes will reliably do a synch operation on Vista is being really optimistic!

Another approach is, stay with products and services that are well proven and, for a given usage, stay in the well-traveled middle of the road and quite far from boundaries, limitations, or situations or features likely used only rarely. E.g., recently I used some DVD burning software to try to write some large, deep file system directory trees to DVD. The software did "suck" and went into 100% CPU busy ultra-slow mode for no apparent reason. Finally got a ZIP program that honors the 64 bit NTFS file system addressing, put the trees into a few ZIP files, and let burning software see only those few files in a shallow tree. Then the software worked fine. My business partner said "I could have predicted that". He was correct; I had asked too much of the tool and blew it.

Also, in selecting products, try the usual broad engineering advice -- KISS or "keep it simple, ...".

E.g., there was a time when OS/2 was a better operating system than Windows. Then I tried to use an OS/2 e-mail program that really did "suck". But, SMTP and POP3 e-mail really does follow KISS. So, one afternoon, in great frustration, I found the Rexx API for TCP/IP and wrote my own e-mail software. Used it for over 10 years and just loved it. E.g., there was absolutely, positively no chance that my computer could be 'infected' with a computer virus received via e-mail. Indeed, I did receive what appeared to be some virus software and enjoyed looking at the code in binary. Look? Yes. Execute it? HECK NO! But, I never did an 'open' on e-mail; 'open' is a disastrous, dangerous operation missing from the SMTP and POP3 standards and dreamed up by some e-mail software developers somewhere -- they may have laughed themselves sick over all the computer security problems they caused. E.g., anywhere in my file system, in 'project oriented' documents, would just insert the date header line (yes, I did let myself see the header lines!) of an e-mail message in a file and, then, to see the e-mail, just use one keystroke on that line. Worked GREAT and remains one of the most useful features for e-mail I've ever seen. In time, I'll implement something similar on XP, but it will be MUCH more work.

As far as I know, I have no FAX software on my XP system, and I certainly do not use dial-up for Internet access. Still, one of the most useful devices in my XP system is an old FAX-modem card! I have my telephone plugged into it! Then, in nearly any file, on any line with a telephone number, one keystroke 'dials' the phone number. This little tool follows KISS and is darned useful.

Note: My XP system makes the FAX-modem card COM3. So, a little editor macro reads the line and writes a standard modem AT (attention) command to COM3. Super KISS and works great.

Broadly, a large fraction of recent and current effort in computing is in directions orthogonal to any very useful or valuable progress. A lot of the most popular 'paradigms' were long sense 'mined out' of potential.

In particular, for iTunes, great for Apple and Jobs but not for me: I am just awash in my favorite music and have no interest in a portable music player.

sigma , May 27, 2007 12:47 PM

Brad,

The solution really is simple (and will get simpler with some announcements next month), but all you have to do is get a Mac and run Parallels. This will get you a super fast system that runs both OS X and Windows Vista.

BWJones Author Profile Page, May 27, 2007 2:32 PM

Just hold out for the flash-based Zune. Some people are saying June 1 will bring some interesting annoucements, but I don't know that for a fact.

Terry Gold , May 27, 2007 2:51 PM

Brad,

It's time you went with Ubuntu or some other Linux distribution - it's a long march, but it will eventually overwhelm Windows, OS-X and anything else out there. Too many coders, too much freedom to innovate and separately, to perfect.

Get on the train already.

Michael

Michael Stich , May 27, 2007 3:13 PM

I have to second the Parallels comment. I know it sounds to good to be true, but bear with me for some proof.

Credentials first: I'm a long time Mac hater (give me another damn mouse button, okay?) that was reluctantly forced to use one just after OSX came out. OSX made me Mac-ambivalent -- no love but no real hate either. Generally, I'm an XP, Win2K MS-Office user. I've spent time on Unix systems but I don't believe everyone should just use Linux...

My Sony Vaio craptop died with a motherboard-level fault two days before I needed to give a bunch of important presentations. Some of the SW I use won't run on Vista. I couldn't find a local store with a reasonably priced laptop running XP, so I tried a MacBook with Parallels. I have a technically inclined PC-oriented buddy who had been swearing by Parallels for several months.

It works, and it works well. You can install multiple OS's as virtual machines. I installed a vanilla copy of XP with MS-Office, Feedreader, Adobe Photoshop and Illustrator, Firefox and a bunch of other odds and ends. Everything works. What's more it actually runs faster than my very comparable Sony Vaio (it was an Intel Core Duo too).

Parallels lets you use USB devices, DVD-drives, network devices (Bluetooth, wifi, ethernet) within the virtual machine. You can also share files between your "XP" machine and the Mac it's running on.

You can run XP full screen or in a window. I'm also running a copy of Debian Linux.

The latest version of Parallels also has a poorly explained mode called "coherence" which allows you to run the XP apps alongside Mac apps i.e. not within an XP window. That's really cool if you're using multiple apps on OSX and XP at the same time.

I believe Vista runs just as well, although I personally have not tested it.

This is a vanilla MacBook purchased for $1299 from the Apple store in Durham. Initially I had 1GB of RAM and had no problems, but CompUSA had 2GB at 60% off when they were closing the store, so I upgraded.

It's shocking how well this works. And it really does perform faster than my previous laptop. As a side note, the included iLife suite is superb at making it easy to author DVDs from photos and movie clips -- I put together a gift for an elderly relative in a 2 hour plane ride...

Try it -- you might like it ;-) If you'd like any more details, send me an email -- I'd be happy to answer questions...

fewquid , May 27, 2007 5:42 PM

either get a mac, or hum while you run, or both :)

robin , May 28, 2007 2:38 AM

Try using Juice 2.2 for your downloads. It makes the iTunes interface completely pathetic and shows how un-usable it really is.

Mike , May 28, 2007 7:49 AM

I can't wait for the day when every device is hooked to a web-based storage system. Obviously it would require ubiquitous broadband, but we're getting closer and closer...

Imagine when people laugh at the prospect of syncing from one device to the other, or when terms like DVD and "storage medium" are replaced by terms like "how much grid space do you have?"

Probably a pipe-dream... but it'd be pretty sweet.

Robert Dewey , May 28, 2007 8:20 AM

Brad - ok, as the founder and president of ProtoTest I'm not objective about this. But over and over again we see companies put so little emphasis on QA!

They don't want to pay for smart, talented testers. Good white-box and automation testers cost what developers do. Most companies want to pay help-desk money for testers.

They don't want to start the QA process at the beginning of each dev cycle. Testers are left out of requirements meetings, design meetings, code reviews. And in spite of the rise of test-driven-development (TDD) in agile cultures, unit testing is still very weak in most companies.

They prioritize new features over quality almost chance they get. Whatever discipline they have around QA and test goes out the window when the pressure to deliver rises.

I'm not suggesting a heavyweight, process-intensive approach is the answer. Not everyone is writing the inertial guidance system for a satellite. But there are ways to use a context-driven approach and achieve much higher software quality and reliability. Better quality (within software products and between them) is possible.

Brad, I share your pain.

Pete Dignan , May 28, 2007 9:15 AM

Hey Brad,
Go with a Zune ;) My iPod is now a second class citizen (prefer the Zune s/w interface)

That said, Parallels is pretty sweet for a WinXP user but for Vista you're let down in that you can't use the BootCamp version of Vista in Parallels. Fusion from VMWare does let you do that (but I've had some hiccups with networking with that one)

Whatever you get though - as you probably know - there's a balance between making money for th company and producing a good reliable product that's going to have a good lifetime...

OffBeatMammal Author Profile Page, May 28, 2007 10:11 PM

Computers do not suck so much, it’s the software engineers. Software engineers suck even more. Being a software engineer myself, I think over the years the quality of engineering in software has been slowly going downhill and it has been no secret. While I know some of the reasons why software is sometimes deliberately designed so that is difficult to use with certain third party products (forced migration strategy anyone??), I would like to take your question as an opportunity rant on my dissatisfaction with the quality of software design and engineering in general. It’s just something that has been irking me for some time.

Software engineers tend to forget that software engineering is a craft. It’s a craft whose beauty is in the detailed attention paid to the relevance of the functionality and the quality of the finished product. Engineers tend to forget this fact and their managers tend to be ignorant of it. Engineering managers have been lacking in identifying great engineers. More often than not, engineering managers do not understand the composition dynamics of a great software engineering team. Most managers mistake the person who can whip up the code the fastest (and rant differences between technologies and languages) to be a great engineer and they stack their teams with a whole lot of those types of engineers. A great engineer is a person, who can not only find smart solutions to complex problems but one who can also simplify the solutions to complex problems. The smartest guy in the room is not necessarily a great engineer but just a smart guy. In my working with some of the engineers and their “program/product managers” from some of the “tier one” software companies, I noticed that a lot of them were simply just smart guys and not necessarily great engineers because they failed to make abstractions of software that were any less than “smart abstractions”. The average user is better served not by smart abstraction of software but rather by simplified abstractions. The end result is software that just does not “simply work” as the average user would expect. Instead, users must know that this and that needs to be done before they can complete their tasks because to a geek engineer, his/her tester and their program/product manager, that is “so obvious”. What they fail to understand is that users have an affinity towards simple abstractions as evidenced by the fact that when all else fails, the user falls back on the simplest abstraction of all “turning it off and turning it back on”. I have not been around long enough to say software is not longer being developed the way it used be but I have been around long enough to know that software is neither being designed not engineered the way it should be. Software engineers, who view their work as a craft, should view “simplicity of solution” as an essential element of quality of their work.

Tom Chikoore , May 28, 2007 11:06 PM

Brad,

I'm with Robin's comment:

"either get a mac, or hum while you run, or both :)"

I'd offer a twist:

"hum while you run out to get a mac & fusion :)"

Come on, like any advice I could offer you on this would be of any help to you?!!

Josh Lane , June 2, 2007 8:49 AM

Thanks for signing in, . Now you can comment. (sign out)

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)


Remember me?