(-: Home of the backwards smiley.

Why I Hate User Interface Debates

Date/Time Permalink: 09/18/08 11:38:00 am
Category: General

Ah, it's another post about UI Aesthetics! Quick, let's everybody get in line to kiss up to Apple and Microsoft for giving us shiny shiny pretty. And then we'll find a couple of stray dogs and name them "Linux" and "BSD" and then we can kick them until they cower, for not having as much shiny shiny pretty.

Yeah, sure, I like pretty UI as much as anybody else. Right here at my desktop guide, I show each desktop interface dolled up to its most charming. I even got some good looks out of TWM, for the luvva Mike! I draw a whole gallery of wallpapers, just because I like pretty, too. Also, because I don't know how to do more important things. Yet.

But in the whole UI-debate, there's a point many people are missing out on.

All computers have a finite amount of resources. All of them.

Got that? This applies to every digital device from your watch to the LHC at CERN and IBM's Blue Gene. All computers have an upper limit to how much processing per time unit they can do. If this limit did not exist, encryption would not work because you could brute-force any algorithm instantly. So, we're all on the same page regarding how computers are science and not magic, right?

So: Given finite cycles, you can either have those cycles devoted to drawing pretty pictures on the screen, or have every last cycle devoted to mofo almighty-god power.

The "ugly" programs (and the Linux command line) are for power users. Windows, Mac, and the pretty Linux desktops of Gnome, KDE, Enlightenment, and Compiz are for pretty users. You want a slick UI that makes you feel like you're in a science fiction movie? Have at it.

But I am never happy with how fast my computer can compute. If my program compiles in five seconds with a shiny desktop, then I want it to compile in three seconds with an ugly desktop. If my ray-traced scene renders in five hours with a shiny desktop, then I want it to render in four hours with an ugly desktop. By the way, that ray-tracing is not facetious; the scenes that win the IRTC take *two months* to finish, according to the artist. For a freaking picture!

How about your browsing experience? This page probably loaded in a second or two for you on DSL, and I don't even want to think about dial-up. For DSL, that's two seconds wasted, incrementally added together for every page you visit. It should also be reading itself out loud to blind users, translating itself automatically into every written language for everyone who looks at it in any locale, converting its dimensions automatically for every device anyone might view it on from a PDA to a movie theater screen, and rendering exactly the same in every single browser. It should also be 100% secure, forever.

We don't have that. We're so far away from that, that's it's practically a miracle that you're just able to read this right now.

Same thing from the design perspective. I want programmer hours to go towards making the program rock-solid and powerful, then they can worry about the coat of paint. Ugly programs that run fast and correctly get a B grade from me. Beautiful programs that run fast and correctly get an A. Beautiful programs that run like shit get an F.

Think of all the frontiers that computers have yet to conquer.

  • Think of cars that drive themselves so there's no more traffic accidents. That's 1.2 million deaths worldwide per year right there.
  • Or perfect weather prediction systems that could see the exact path of a tornado or hurricane, weeks in advance, to give everyone plenty of time to get out of the way.
  • Or chaos simulations that could warn of economic crashes, and even advise steps to head them off. Are there any stockbrokers on Wall Street this week who could go along with me on that one?
  • Or computer-designed, biologically-engineered foods that could feed hundreds where we only currently feed ten.
  • Or medical knowledge systems that could instantly diagnose any disease. Just last week, one of my neighbors dropped dead from aortic aneurysm, also known as "the silent killer" because it does not produce symptoms until it's too late.
  • Or engineered antibiotics that could be tailor-made for every germ as soon as there was a sample.
  • Or cybernetic eyes to let the blind see.
  • Or assistance systems for the handicapped. Pardon me for being so wangsty, but I don't mention often that I have a son with a combination of cerebral-palsy and autism. He's hitting his twelfth birthday soon, and he has yet to utter a single, solitary word in his whole life. We have therapy and clinics and specialists for him every day, trying to find out if it's possible for him to ever communicate with the outside world. It took us years just to diagnose him. Some headway in computer assistance for autistics is there, but it's still primitive. If I knew how to solve it myself, I'd be solving it right now instead of writing this. As it stands, I have an answer for the doctors more often than they have an answer for me.

Come to think of it... The hell with pretty user interfaces! We shouldn't be wasting our time! Save it for the Jetsons Age; right now we're still in the Stone Age. This week only marks the 50th birthday of the integrated circuit - the foundation for what we know as computers today - counting from the first demonstrated working model on September 12, 1958. Figuring 6000 years of recorded history, the integrated circuit has been with us for 0.0083 of it. We're still banging rocks together, and instead of getting with it and inventing the hammer, we're arguing about what color to paint the rocks.

Computers could be solving 100 times the problems they solve right now, if only they were more powerful. We could be saving millions of lives with more powerful computers.

But we can't do that. We all have to waste time making everything pretty, or people bitch.

Have a Very Linux Day!

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

suddenly the moon