Thursday, December 4, 2008

Sorry Joel

One of my interests of late has been computer programming. The company I work for is a Microsoft Partner so I have been getting into .NET 3.5 and C# - with my latest focus being WPF (Windows Presentation Foundation).

I've always been a fan of the underdog - the minority voice that speaks out against current popular thinking - and two of the guys I've been keeping an eye on for a while now are Jeff Atwood and Joel Spolsky, who coincidentally have recently joined forces and created http://stackoverflow.com/ - a programming Q&A site with new ideas that has absolutely taken off.

I have a lot of respect for Jeff and Joel, who are incredibly talented and intelligent, have both had a lot of software development experience, and both making money for themselves in various business ventures. They also both have quite a following on their blogs. The thing that attracted me was that their ideas they present about programming and software development are well thought out, well presented and are not mainstream. They are doing what their beliefs and experiences have told them is right, not what some textbook or Highly Paid Consultant tells them is right.

There has been a couple of posts from Joel lately that I don't agree with.

The first one was this: Don't Hide or Disable Menu Items. In this article, Joel argues that rather than disable menu items (i.e. make them grayed out and unclickable) if they're not relevant to the current page/window/action, you should instead leave everything enabled all the time and explain to the user via a text box or some other mechanism why you shouldn't click on it.

I completely disagree.

It's like if I do a Google search to try and solve a particular problem, and I see a link that I get excited about because it looks like it might be interesting or solve my problem or whatever, and then I click on that link and I get an “Under Construction” page or “404 not found” error, then I am disappointed and will probably never visit that site again. There are many articles around the web that agree with me on not having "Under Construction" pages – including at least one from Jakob Nielsen (http://www.useit.com/papers/1994_web_usability_report.html - it’s old but it is still relevant today).

I think it’s the same with leaving menu items enabled. I think it would be better to hide them completely until they are relevant to whatever action I’m performing. If I am trying to do something and I see a menu item that could be what I need (because let’s face it, menu items are ambiguous a lot of the time) and I click on it only to find out that I’m not allowed to do that action, then I get disappointed and/or frustrated, and the more that happens the less I am going to use the product. Isn’t usability all about reducing the choices that people have to make, about making it easier for them? (Which reminds me, Joel is being a bit hypocritical here beause in an earlier post he argues against offering too many choices to the user!) Also, if I do display a message box, then that means another click for the user. If you really must insist on displaying a message then I think a tooltip over a disabled menu item would be better because then there is no extra work for the user.

As an example – in most modern MP3 players, if a song isn’t playing the stop button is either grayed out, doesn’t exist, or doesn’t do anything if I click on it. If I click on it when a song is stopped it would be overkill (and annoying) to display a message telling me I can’t stop the song because it is already stopped – and it means an extra click where it’s not necessary.
Along the hypocritical lines is his post on Anecdotes. In it he laments that there has been a lot of so-called "research" that is simply unproven stories and anecdotes presented as fact. Later in the same post he then explains:
"Now, I am not one to throw stones. Heck, I practically invented the formula of 'tell a funny story and then get all serious and show how this is amusing anecdote just goes to show that (one thing/the other) is a universal truth.' And everybody is like, oh yes! how true! and they link to it with approval, and it zooms to the top of Slashdot."
And it really is true - that is his style! But come on Joel - this "Do as I say, not as I do" attitude is really disappointing.

Sorry Joel, but these two articles, along with your increasingly NPD view of the world is starting to make me wonder whether I will continue to read your blog.

That's the internet for you though. Question everything you read and if you don't like what you see, go somewhere else!

No comments:

Post a Comment