Coding Horror

programming and human factors

Usability Is Timeless

Jakob Nielsen's new book, Prioritizing Web Usability, is a worthy companion to the previous two. Now it's a trilogy:

  1. Designing Web Usability: The Practice of Simplicity (2000)
  2. Homepage Usability: 50 Websites Deconstructed (2002)
  3. Prioritizing Web Usability (2006)

You can tell Jakob and his co-authors are growing ever more skilled at the practice of simplicity; this book is the first in the series to drop the colon and subtitle.

Prioritizing Web Usability book cover

The very existence of the new, updated book hints that usability guidelines evolve over time. In one of the first chapters, Nielsen makes this explicit by revisiting earlier web usability issues to see how much they've improved in seven years. Each usability issue is rated from zero to three skulls to indicate how severe the problem is today:

1. Usability issues that are still major problems today

XXXLinks that don't change color when visited
XXXBreaking the back button
XXXOpening new browser windows
XXXPop-up windows
XXXDesign elements that look like advertisements
XXXViolating web-wide conventions
XXXVaporous content and empty hype
XXXDense content and unscannable text

2. Usability issues that are less important due to improvements in technology

XSlow download times
XFrames
XXAdobe Flash content
XXLow-relevancy search listings
XXMultimedia and long videos
XXFrozen layouts
XXCross-platform incompatibility

3. Usability issues that are less important because users have adapted to the web

XUncertain clickability
XXScrolling
XRegistration
XXComplex URLs
XPull-down and cascading menus

4. Usability issues that are less important because designers have learned restraint

XPlug-ins and bleeding edge technology
X3D user interfaces
XBloated design
XSplash pages
XMoving graphics and scrolling text
XXCustom GUI widgets
XNot disclosing who's behind information
XMade-up words
XXOutdated content
XXInconsistency within a web site
XXPremature requests for personal information
XXMultiple sites

When comparing the severity of these 34 usability issues with their historical severity in 2000, Nielsen notes that most of the progress can be attributed to designers learning restraint:

Resolved by user adaptation11%
Resolved by advances in technology10%
Resolved by designer restraint21%
Still an issue58%

Relying on user education or technology fixes to address usability issues means you'll be waiting a long time. Most of the immediate benefits are realized by designers who learn to follow usability guidelines. But designers are fallible, too, so there's no guarantee these problems won't crop up again later, or in slightly different forms.

The data presented in Prioritizing Web Usability shows that usability guidelines do evolve over time, but slowly. It also illustrates how the core principles of usability are timeless:

From 1984 to 1986, the U.S. Air Force compiled existing usability knowledge into a single, well-organized set of guidelines for its user interface designers called Guidelines for Desigining User Interface Software, ESD-TR-86-278 (also available as a pdf). Jakob Nielsen was one of several people who advised the undertaking. The project identified 944 guidelines, most of them related to military command and control systems built in the 1970s and early 1980s, which used mainframe technology.

You might think that these old findings would be irrelevant to today's designers. If so, you'd be wrong. As an experiment, we retested 60 of the 1986 guidelines in 2005. Of these, 54 continue to be valid today. Of the total 944 guidelines, we deduced that 10 percent are no longer valid and 20 percent are irrelevant because they relate to rarely used interface technologies. But nearly 70 percent of the orginal guidelines continue to be both correct and relevant 20 years later.

This is one of the reasons I urge software developers to study and understand the principles of usability. It's one of the precious few bodies of knowledge in a developer's toolkit that will still be useful twenty years from now.

Discussion

Is Amazon's Mechanical Turk a Failure?

Amazon's Mechanical Turk Service is a clever reference to the famous chess-playing hoax device, The Mechanical Turk. The Mechanical Turk dates back to 1770, and has quite a storied history. Read through the Wikipedia article if you have time; it's fascinating stuff.

The Mechanical Turk

The secret of the Turk, of course, was that it wasn't a chess-playing machine at all. There was a small person inside, controlling the machine.

Similarly, Amazon's Mechanical Turk is a machine that harnesses the work of hidden humans. It's a service that attempts to match people to small, bite-size units of work that are unsuitable for machines.

As of this writing, there are 128 Human Intelligence Tasks available via the Mechanical Turk task page. The reward for these tasks ranges from $1.00 to $0.10, skewing heavily toward the bottom of that range. Almost 100 of the 128 tasks are $0.10 each. Here's a quick sampling of the available tasks:

  • Transcribe a 9 minute, 2 second podcast ($2.31 w/bonus)
  • Write a review of a blog ($1.00)
  • Make ten 2-3 sentence posts in a fansite forum ($0.50)
  • Write a 2-3 paragraph blog entry ($0.50)
  • Provide 3-D and 4-D ultrasound pictures of your baby ($0.40)
  • Send unsolicited junk faxes from California companies ($0.25)
  • Say 6 phrases in Turkish ($0.10)
  • Write a short plot description of the movie "Black Snake Moan" ($0.10)

Read through some of the available HITs yourself. Be sure to click on the HIT to get the details on the job and any rules. You're at the mercy of the requester; it's up to them to judge your work worthy of payment.

Based on the quantity, quality, and type of tasks available, I think Amazon's Mechanical Turk may be a failure. It's been almost two years, and almost all the tasks have one or more of these problems:

  1. obviously and suspiciously spammy
  2. require a lot of subjective human intervention and effort for "grading"
  3. the rates make working in a sweatshop seem lucrative

What I find ironic about Amazon's Mechanical Turk service is that Amazon built an entire business around the value of user reviews. The strength of the user reviews is one of the main reasons I frequent Amazon. That's user-submitted content that people invested countless thousands of man-hours on. And Amazon didn't pay anyone a dime to do it.

I think the secret to running a viable Mechanical Turk service is, paradoxically, to do away with payment. Instead, they should have chosen a reward system based on intrinsic motivation. Intrinsic motivation is the reason why..

  • People willingly contribute millions upon millions of dollars worth of electricity to efforts like Folding@Home so they can show up on the leaderboards with their team.
  • People spend hours submitting and rating articles on Digg and Reddit in the hopes that they will be promoted to the front page, and by proxy, increase their standing in the community.
  • People actively convince others to join them on social networking sites like Linked In, MySpace, Classmates, and Facebook-- to increase the size and power of their networks.

Nobody's paid to do any of the above. And yet each item I listed is easily equivalent to multiple Turk HITs. The best explanation I've found for this behavior is in Mary Poppendieck's Team Compensation (pdf).

There are two approaches to giving children allowances. Theory A says that children should earn their allowances; money is exchanged for work. Theory B says that children should contribute to the household without being paid, so allowances are not considered exchange for work. I know one father who was raised with Theory B but switched to Theory A for his children. He put a price on each job and paid the children weekly for the jobs they had done. This worked for a while, but then the kids discovered that they could choose among the jobs and avoid doing the ones they disliked. When the children were old enough to earn their own paychecks, they stopped doing household chores altogether, and the father found himself mowing the lawn alongside his neighbors' teenage children.

Were he to do it again, this father says he would not tie allowance to work.

In the same way, once employees get used to receiving financial rewards for meeting goals, they begin to work for the rewards, not the intrinsic motivation that comes from doing a good job and helping their company be successful. Many studies have shown that extrinsic rewards like grades and pay will, over time, destroy the intrinsic reward that comes from the work itself.

The theory of intrinsic motivation goes a long way toward explaining why Amazon's unpaid user reviews are so popular and effective, and yet the paid Mechanical Turk service appears to be withering on the vine.

Poppendieck notes that choosing a payment reward model can be an irreversible decision: once you go down the path of monetary rewards, you may never be able to go back, even when they cease to be effective, as they inevitably will. I think that's clearly the case for Amazon's Mechanical Turk.

Discussion

EA's Software Artists

Electronic Arts is a lumbering corporate megalith today, pumping out yearly game franchise after yearly game franchise. It's easy to forget that EA was present at the very beginning of the computer game industry, innovating and blazing a trail for everyone to follow. Gamasutra's article We See Farther: A History of Electronic Arts reminded me how instrumental EA was to the early history of computer gaming.

EA's infamous "We See Farther" ad promoted computer game programmers as artists if not rock stars. I distinctly remember seeing these ads as a dorky, computer-loving teenager. I wondered, could being a computer programmer be.. cool?

Can a Computer Make You Cry?

Okay, maybe not so much with the leather glove, but still. It was a glimmer of hope. According to Electronic Arts, computer programmers weren't just programmers; they could be software artists. And the earliest EA games even looked like rock album covers:

Early EA games

EA also created the very concept of a sports game franchise, primarily with Dr. J and Larry Bird Go One on One. This game was huge. The squeaking sneakers, the smashing backboard, the licensed marquee players. It was arguably the breakthrough sports game.

Dr. J and Larry Bird go One on One

It's impressive that Electronic Arts is still around after all these years. But I wonder what happened to the grandiose sentiments expressed in the We See Farther ad:

These are wondrous machines we have created, and in them can be seen a bit of their makers. It is as if we had invested them with the image of our minds. And through them, we are learning more and more about ourselves. We learn, for instance, that we are more entertained by involvement of our imaginations than by passive viewing and listening. We learn that we are better taught by experience than by memorization. And we learn that the traditional distinctions-- the ones that are made between art and entertainment and education-- don't always apply.

We're providing a special environment for talented, independent software artists. It's a supportive environment, in which big ideas are given room to grow. And some of America's most respected software artists are beginning to take notice. We think our current work reflects this very special commitment. And though we are few in number today and apart from the mainstream of the mass software marketplace, we are confident that both time and vision are on our side.

I sure wanted to believe in software artistry at the time. EA's history proves that this is an unusually difficult vision statement to realize.

Discussion

SEOs: the New Pornographers of the Web

There's something about the Search Engine Optimization (SEO) industry that I find highly distasteful. I've never quite been able to put my finger on it, until I read Rich Skrenta's pornographers vs. SEOs.

Ron Jeremy, porn superstar

It's all clear to me now.

SEOs are the new pornographers of the web.

Money is the most prurient interest of all. Just as pornographers sell sex, SEOs sell money. They trade in get-rich-quick schemes via search traffic.

Rich pointed out this SEOmoz post as an example:

My favourite Digg irony is the hatred the (a-HEM) Diggorati have for SEO, coupled with the fact that they fall for linkbait All. The. Time.

Every so often, one of our employees will roll into the office and announce, "I'm going to get on Digg today." Said employee will sit down, write something and then nervously monitor the server as predicted Digg occurs. I can only remember one instance in which this tactic has failed. The post does not always come from SEOmoz; in fact, it's often posted elsewhere. Sometimes, some Diggers will catch on to the fact that the submission came from someone affiliated with SEO and the comments will get nasty, but still the diggs keep going up.

If that's not pure gaming of the system, I don't know what is. There are entire guides on how to properly linkbait, such as Andy Hagans' Ultimate Guide to Linkbaiting and Social Media Marketing. Read it. I did, and now I feel like I just walked through a sewer.

Although SEOs pay lip service to the quality of the content, it's clear that the focus is on one thing, and one thing only: naked, raw greed.

Look how big my $%^@ paycheck is!

Jason Calacanis is probably the most prominent critic of SEO techniques.

The SEO folks got really pissed off at me for saying "SEO is bulls@#t" last year, but the truth is that 90% of the SEO market is made up of snake oil salesman. These are guys in really bad suits trying to get really naive people to sign long-term contracts. These clients typically make horrible products and don't deserve traffic. That's why they're not getting it organically. So they hire the slimebuckets to game the system for them.

There are some whitehat SEO firms out there, but frankly the whitehat SEO companies are simply doing solid web design. I don't consider them SEO at all. SEO is a tainted term and it means "gaming the system" to 90% of us.

So much of what is optimistically termed Search Engine Optimization is basic web design 101. And yet the seedy SEO underground will still try to convince you their super-secret methods-- their magical snake oil-- is the only formula for success.

In fact, the only difference between SEO "experts" and pornographers is that pornographers are more honest about what they're actually selling. Hiring a SEO expert to increase the quality of your site's content is like renting a porn video for the plot and character development. Stop kidding yourselves.

What's most depressing about all of this is that reliance on SEO is ultimately self-defeating.

Let me tell you a story about my cousin, Steven. Steven wanted to become a musician. He had a rock band he diligently put together, and they recorded an album. When he played the album for me, he described it as a mixture of Green Day with some Linkin Park. He told me how he took the best of both bands and created his own sound.

The problem was, his music was boring, and his band sounded like hundreds of other indie bands.

Steven was just an average looking guy, his band was good but not brilliant, his music was solid, but not different. Steven believed in his band, and he was just good enough for everyone to encourage him to go on working on music, but never good enough to attract a fan base.

But Steven never even tried to build up fans. He never played his music for totally random people, and asked them for their opinion. All he did was try to get the people at the record labels interested in his music. He called and hounded, he stalked and staked out. He kept chasing those labels for years and years, and then suddenly gave up.

Steven did not care about the music. Steven cared about the money. Steven did not concentrate on getting his music to the people, he concentrated on getting his music to the people who would guarantee him money and connections.

When you focus on SEO, you're focusing on money and connections. If that's your goal, then have at it. But don't be surprised when people see through you for what you really are.

Discussion

Firefox as an IDE

Although I prefer IE7's native speed and feel for day-to-day browsing chores, there's no doubt that Firefox is my primary web development IDE.

Whenever I need to troubleshoot HTML, CSS, or JavaScript, I immediately reach for Firefox. That's primarily because of two incredibly powerful developer extensions for Firefox:

1. Web Developer Extension

Firefox Web Developer Extension screenshot

WDE has lots of useful features, but the most wonderful thing about WDE is that everything is editable in real-time. Edit the CSS, edit the HTML, and watch your changes take effect as you type. It's like magic.

2. Firebug

Firefox Firebug screenshot

Firebug is a richer tool than WDE; it goes far beyond real-time editing of HTML and CSS, and delves deeply into profiling and debugging JavaScript. It also offers metrics on download time and download order over the wire. I highly recommend checking out the Joe Hewitt Firebug power user demo movie to get a sense of its full feature set.

I can't imagine debugging a web app without these two essential tools, which transform Firefox into the Visual Studio of browsers. It'd be akin to writing a .NET application in Notepad. In fact, I feel so strongly about the utility of these extensions that I'm stopping to donate $10 to each project, right now. This is part of my ongoing monthly contribution to small software vendors.

If you haven't used these tools yet, I envy the experience you're about to have. Download them both and start experimenting. If you have used Firebug and WDE, I encourage you to share your favorite tips in the comments.

Discussion