brainflak bits

Aug 05

The beloved Mr. Toast now enfolds my iPhone in his crusty embrace. I am content.

The beloved Mr. Toast now enfolds my iPhone in his crusty embrace. I am content.

Aug 04

UI Crimes

I’m a bit of a usability zealot. Not a rabid Nielsenesque pillar of usable virtue, but it is on my mind about 20 hours a day. Which means I see a lot of User Interface Crime around me every day. And while UI misdemeanors are too numerous to get very excited about, the UI felonies that assault me are many, too.  A few recently-noticed ones:


1. DVD Menu of Mystery

Now, I actually keep meaning to do a whole site on DVD navigation crimes and achievements, but until I become that much of a curmudgeon, here’s one that pops up again and again.

On the screen are two choices, such as “full screen” vs. “wide screen” or “play movie” and “scene selections. Each has a button/underline, outline, glow, etc.  One is white, one is gold. You use the right or left arrow button on your remote, and they switch. Which one is selected? What will happen when you click? Who in the H-E-double hockey sticks knows?? Aargh.


2. Versatile switch

The driver’s and front passenger’s doors on our car each feature a little rocker switch on the inside. Same switch. But while the one on the driver’s side locks and unlocks the doors, the same switch on the passenger side raises and lowers the window. Come on, people…


3. Legion of Beep

The gas pump beeps when you slide your card. It beeps when it wants you to push enter. It beeps just after you push each number of your zip code. It beeps to tell you the zip code is done. It beeps to tell you to choose an octane. It beeps to tell you you have done so. It beeps to tell you to remove nozzle and begin fueling. It beeps in a slightly irregular rhythm to let you know it is pumping. It beeps to let you know it is almost done pumping. Etc. Etc. Etc.

Each beep is the same beep. Loud. Same pitch. Most are either delayed or anticipate the event to which they are presumably attached. So no matter what you do, there is a pretty much steady stream of beeps more or less evenly spaced. This is not audio feedback. It is useless. It is abuse, really. Not as bad as the klaxons that punish fast food workers for not having removed the French fries from the oil, but still pretty bad.


4. CPU-speed scrolling

Once upon a time, there were some actions in a GUI that you wanted to have happen as fast as the computer could manage. Saving files. Applying edits. Scrolling the window. Processor speeds were such that scrolling the window as fast as possible, with no delay or damping, made for a nice, leisurely scroll.

It seems that 95% of desktop applications are still written this way. So as you try to select an area bigger than your viewing window in Photoshop, as soon as your cursor reaches the edge of the window it ZOOOOOMS to the edge of the document, about a parsec from where you wanted to be. You go back. You try again. Good luck.  Same problem with word-processing apps. click the scroll bar buttons and the thing scrolls down to the bottom so fast that the top edge of the document breaks out through the top of your monitor and gets embedded in the acoustic ceiling tiles above.

So please add some timing code? Computers are good at time. Pretty please?

Ok, I’d better stop now. I can rant on this for days on end. No one wants that.

UI Crimes

I’m a bit of a usability zealot. Not a rabid Nielsenesque pillar of usable virtue, but it is on my mind about 20 hours a day. Which means I see a lot of User Interface Crime around me every day. And while UI misdemeanors are too numerous to get very excited about, the UI felonies that assault me are many, too. A few recently-noticed ones:

1. DVD Menu of Mystery

Now, I actually keep meaning to do a whole site on DVD navigation crimes and achievements, but until I become that much of a curmudgeon, here’s one that pops up again and again.

On the screen are two choices, such as “full screen” vs. “wide screen” or “play movie” and “scene selections. Each has a button/underline, outline, glow, etc. One is white, one is gold. You use the right or left arrow button on your remote, and they switch. Which one is selected? What will happen when you click? Who in the H-E-double hockey sticks knows?? Aargh.

2. Versatile switch

The driver’s and front passenger’s doors on our car each feature a little rocker switch on the inside. Same switch. But while the one on the driver’s side locks and unlocks the doors, the same switch on the passenger side raises and lowers the window. Come on, people…

3. Legion of Beep

The gas pump beeps when you slide your card. It beeps when it wants you to push enter. It beeps just after you push each number of your zip code. It beeps to tell you the zip code is done. It beeps to tell you to choose an octane. It beeps to tell you you have done so. It beeps to tell you to remove nozzle and begin fueling. It beeps in a slightly irregular rhythm to let you know it is pumping. It beeps to let you know it is almost done pumping. Etc. Etc. Etc.

Each beep is the same beep. Loud. Same pitch. Most are either delayed or anticipate the event to which they are presumably attached. So no matter what you do, there is a pretty much steady stream of beeps more or less evenly spaced. This is not audio feedback. It is useless. It is abuse, really. Not as bad as the klaxons that punish fast food workers for not having removed the French fries from the oil, but still pretty bad.

4. CPU-speed scrolling

Once upon a time, there were some actions in a GUI that you wanted to have happen as fast as the computer could manage. Saving files. Applying edits. Scrolling the window. Processor speeds were such that scrolling the window as fast as possible, with no delay or damping, made for a nice, leisurely scroll.

It seems that 95% of desktop applications are still written this way. So as you try to select an area bigger than your viewing window in Photoshop, as soon as your cursor reaches the edge of the window it ZOOOOOMS to the edge of the document, about a parsec from where you wanted to be. You go back. You try again. Good luck. Same problem with word-processing apps. click the scroll bar buttons and the thing scrolls down to the bottom so fast that the top edge of the document breaks out through the top of your monitor and gets embedded in the acoustic ceiling tiles above.

So please add some timing code? Computers are good at time. Pretty please?


Ok, I’d better stop now. I can rant on this for days on end. No one wants that.

Someone in my office took issue with the rampant face-splashing, and taped this to the mirror above the relevant sink.

Someone in my office took issue with the rampant face-splashing, and taped this to the mirror above the relevant sink.

Aug 03

What is this fondness people have for “Under Construction” pages? I scarcely work with a client who does not want bunches of them. They want to create the entire structure of their envisioned content and functionality as empty pages, and make it live in that condition. Aargh! People, just type out an outline of your grand vision. Don’t impose it on the world. Scribble it on a napkin, then put the napkin in a safety deposit box or on a gallery wall as you need. I try to explain two things to these folks:

It’s a cruel joke.
	A network of empty pages is not landscape of foundations open to the sky, much less an ethereally beautiful cityscape of skeletal frame buildings. it’s a row of dark, curtained booths with inviting signs on them like “Chinchillas,” “Smexy Girls,” and “Fried Snickers™.”  But when the visitor enters each booth, she finds it empty. Each one is not known to be empty until you actually walk in.
	
	People don’t put up with that crap. This has two important aspects:
		If someone clicks on a link that takes them to an empty page, they will almost certainly NEVER CLICK THAT LINK AGAIN. You might later build magnificent art, a Gmail-killing Web app, or an irresistible message, but none of the visitors who came before will ever, ever go there!
			After clicking a few of these cruel links to empty pages, a user will LEAVE YOUR SITE OR APPLICATION. They will quickly conclude that they are in a depressing ghost town, with tumbleweeds blowing down the street. They will likely miss any actual cool stuff you already have.
		
So: DON’T DO IT! Forgive the “outsider typography” (thanks substitute), but I’m begging here. Create only the pages and interfaces for which you NOW have content and functionality ready. Let the lacunae intrigue and tempt the visitor. On your Barnaby Jones fan site a link labeled “Episode List” that goes to an empty page will cause people to click once and never again. A temporary LACK of an “Episode List” link will have your visitors wondering why you don’t have one, but when you’ve finished that section and the “Episode List” link appears, both new and repeat visitors will gleefully click upon it.

Trust me. Just do as I say. Don’t make me rant again.

What is this fondness people have for “Under Construction” pages? I scarcely work with a client who does not want bunches of them. They want to create the entire structure of their envisioned content and functionality as empty pages, and make it live in that condition. Aargh! People, just type out an outline of your grand vision. Don’t impose it on the world. Scribble it on a napkin, then put the napkin in a safety deposit box or on a gallery wall as you need. I try to explain two things to these folks:

  1. It’s a cruel joke.
    A network of empty pages is not landscape of foundations open to the sky, much less an ethereally beautiful cityscape of skeletal frame buildings. it’s a row of dark, curtained booths with inviting signs on them like “Chinchillas,” “Smexy Girls,” and “Fried Snickers™.” But when the visitor enters each booth, she finds it empty. Each one is not known to be empty until you actually walk in.
  2. People don’t put up with that crap. This has two important aspects:
    1. If someone clicks on a link that takes them to an empty page, they will almost certainly NEVER CLICK THAT LINK AGAIN. You might later build magnificent art, a Gmail-killing Web app, or an irresistible message, but none of the visitors who came before will ever, ever go there!
    2. After clicking a few of these cruel links to empty pages, a user will LEAVE YOUR SITE OR APPLICATION. They will quickly conclude that they are in a depressing ghost town, with tumbleweeds blowing down the street. They will likely miss any actual cool stuff you already have.

So: DON’T DO IT! Forgive the “outsider typography” (thanks substitute), but I’m begging here. Create only the pages and interfaces for which you NOW have content and functionality ready. Let the lacunae intrigue and tempt the visitor. On your Barnaby Jones fan site a link labeled “Episode List” that goes to an empty page will cause people to click once and never again. A temporary LACK of an “Episode List” link will have your visitors wondering why you don’t have one, but when you’ve finished that section and the “Episode List” link appears, both new and repeat visitors will gleefully click upon it.

Trust me. Just do as I say. Don’t make me rant again.

Aug 02

I quite like this piece by John Kraft.  I’m a fan of the weird sub-genre that exists in my brain linking this work with things by Thiebaud and Hockney: spatially flattened streetscapes, bringing together a delirious sense of distance with a godlike unobstructed perfection of visibility and a fairly thrilling assertion of shocking steepness.  I’d better go violate more copyrights and blog what I’m talking about here, later.

I quite like this piece by John Kraft. I’m a fan of the weird sub-genre that exists in my brain linking this work with things by Thiebaud and Hockney: spatially flattened streetscapes, bringing together a delirious sense of distance with a godlike unobstructed perfection of visibility and a fairly thrilling assertion of shocking steepness. I’d better go violate more copyrights and blog what I’m talking about here, later.

Aug 01

“I flatly declare that a man fed on whisky and dead bodies cannot do the finest work of which he is capable.” — George Bernard Shaw

This machine offers no tea, coffee, or other non-water beverages as far as I can tell. So…why is this LCD not just a sticker? What other values might it display? Do I want to know? “Funny-smelling Reclaimed Water?” “Pure Carbon Tetrachloride?”

This machine offers no tea, coffee, or other non-water beverages as far as I can tell. So…why is this LCD not just a sticker? What other values might it display? Do I want to know? “Funny-smelling Reclaimed Water?” “Pure Carbon Tetrachloride?”

Jul 31

I remain ambivalent about cutesy computer jargon. Fatwire Content Server’s cleverly denormalized attribute tables are stupidly named “Mungo Tables,” but I don’t have a better name to suggest. When a CRM software vendor’s presentation mentioned the modular application components they call “Nugglets” I managed not to laugh. Even when I asked them question after question about Nugglets, just to get them to say “Nugglets” again, I kept my guffaws deep inside.

But sometimes naming conventions matter. When a developer working for me named his CSS classes IronMan, Gambit, NickFury, and Thor I had to explain to him that he was making his code no more maintainable than if he had used the similarly non-semantic default classes that a WYSIWYG editor uses: Class1, Class2, Class3, etc.

I don’t know. Maybe I should embrace this practice and name my Java classes JuneCleaver, Mussolini, and CharlizeTheron. But I cannot. I have too much pity for those who came later.  Too many painful memories of working with an ASP page called Send_Email_To_Debbie.asp, whose functions were called f1, f2, f3, etc.  Too much remembered horror at the Remedy application with tables named t0013445, t200287, and t002443 containing columns called c004332, c005221, c110087 and other things I cannot and must not recall. *shudder*  Those are far from cutesy, of course. They are the equivalent of naming your database tables Pazuzu, Humwawa, and Hasturhasturhastur. Not helpful.

Well, I’d better stop my pointless ranting. I have to go look at some Mungo Tables.

I remain ambivalent about cutesy computer jargon. Fatwire Content Server’s cleverly denormalized attribute tables are stupidly named “Mungo Tables,” but I don’t have a better name to suggest. When a CRM software vendor’s presentation mentioned the modular application components they call “Nugglets” I managed not to laugh. Even when I asked them question after question about Nugglets, just to get them to say “Nugglets” again, I kept my guffaws deep inside.

But sometimes naming conventions matter. When a developer working for me named his CSS classes IronMan, Gambit, NickFury, and Thor I had to explain to him that he was making his code no more maintainable than if he had used the similarly non-semantic default classes that a WYSIWYG editor uses: Class1, Class2, Class3, etc.

I don’t know. Maybe I should embrace this practice and name my Java classes JuneCleaver, Mussolini, and CharlizeTheron. But I cannot. I have too much pity for those who came later. Too many painful memories of working with an ASP page called Send_Email_To_Debbie.asp, whose functions were called f1, f2, f3, etc. Too much remembered horror at the Remedy application with tables named t0013445, t200287, and t002443 containing columns called c004332, c005221, c110087 and other things I cannot and must not recall. *shudder* Those are far from cutesy, of course. They are the equivalent of naming your database tables Pazuzu, Humwawa, and Hasturhasturhastur. Not helpful.

Well, I’d better stop my pointless ranting. I have to go look at some Mungo Tables.

Jul 29

I think that ALL of the classrooms at my elementary school would have needed this warning label.

I think that ALL of the classrooms at my elementary school would have needed this warning label.

Jul 28

Three-year-olds have important opinions like the programmers who work for you. They have quirky beliefs like your Uncle Jack. They are just as pure of heart as you’ve been told. And at times (often frequent and extended times), they emulate Mr. Furious, WHOSE POWER COMES FROM HIS BOUNDLESS RAGE!!!!! Beware.

Three-year-olds have important opinions like the programmers who work for you. They have quirky beliefs like your Uncle Jack. They are just as pure of heart as you’ve been told. And at times (often frequent and extended times), they emulate Mr. Furious, WHOSE POWER COMES FROM HIS BOUNDLESS RAGE!!!!! Beware.