Archive for the ‘Rambling’ Category

When a program has nothing surprising to say, it should say nothing.

Sunday, December 7th, 2008

Is there something about Windows that encourages developers to design shoddy user interfaces? I’m not sure if you can point to any one thing, but here’s a perfect example of what I mean. I don’t ever use Windows as a primary OS anymore (pure Mac and Linux for years now, never been happier), but I keep it around via Boot Camp for browser testing and gaming. When you plug a device in the audio jack while running Windows via Boot Camp, this is the message that pops up:

You just plugged a device into the audio jack!

Really?! Perhaps because I intended to use it?! Complete with the exclamation mark and all, as if it is some huge feat of ability. The message does nothing functionally, draws your attention and remains until you close it, and serves no useful or arguably informative purpose. Then, when you remove the headphones:

A jack has been unplugged.

I know, it’s painful and completely unnecessary. I can’t entirely blame Windows for this as the driver is a third party program by C-Media, but come on people. It’s time to sit down, get a nice cup of coffee and read two books before you design another user interface: Steve Krug’s Don’t Make Me Think and Donald Norman’s The Design of Everyday Things. If nothing else, just respect the Unix design philosophy, especially the Rule of Silence:

Rule of Silence: When a program has nothing surprising to say, it should say nothing.

Plug headphones (or a USB device, or monitor, or FireWire device, or external hard drive) into a Mac sometime. It Just Works!™ … no message, no gimmicky “device plugged in!” sound, it just does what you’d expect.

My Canvas

Sunday, December 30th, 2007

Welcome to my little corner of the web. I’m currently majoring in computer science and minoring in music at Utah State University while working for the Programming and Design Team in USU’s Department of Information Technology. Most of the time work seems to be full-time and school is the side job, but reality sometimes reminds me that this is not exactly the case. Don’t get me wrong though—school is important and has taught me much, but working on the PAD team has taught me more about computers and even about life than I have ever learned in a classroom. It’s exciting to be integrated into a team that deals with projects from every facet of a University and hence from innumerable facets of technology.

Hopefully, I’ll share a piece of this here that you may stumble across while perusing the interwebs and it might serve a good purpose for you. That’s the ideal situation though—there’s much potential for it turning into me rambling about topics that may only interest a few people. But, to those few, welcome! ;)