ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Main Area and Open Discussion > General Software Discussion

Godin: the end of dumb software

<< < (2/6) > >>

40hz:
I'm going to have to side with mouser.

I'm all for error trapping and data validation routines. Those are absolutely essential. But I have yet to work with any predictive system that doesn't generate more unintended results than I can live with.

I think a lot of the motivation to create these so-called smart programs comes from a subconscious desire to take the actual user out of the loop: "Just think how much more efficient our programs would run if we could just get rid of the human operator and let the machines talk directly to the machines."

It almost makes a strange sort of sense when you think about it. If you removed the variability of human interaction from the design criteria, most programs would be a piece of cake to develop and maintain.

When my girlfriend teaches riding, she tells her students that there has to be at least one "clue" in the picture. Either the rider can have a clue; the horse can have a clue; or they can both have half a clue each. But no matter what, there has to be one clue in play - or they're both going to get hurt.

I think the human/computer interaction has much in common with that. The more we dumb down (or be allowed to dumb down) the end user, the more "smarts" we're going to need to build into our systems. And since we ourselves are not overly good at anticipating and predicting each others desires, I wonder just how capable we are of coding a system that is.

In the end I think it's largely going to remain a techno pipe dream.

Smart software is no antidote for a dumb user.

---
Mini rant follows. Feel free to ignore.

SpoilerI love Seth. He's a trip, a fun speaker to listen to, and a great guy on or off the podium. But when it comes to this topic, I think he's gone way overboard. And this really bugs me because I'm sure he knows better.

Personally, I'd like to see a piece of code - any piece of code - that Seth wrote. I say that because I doubt very much he ever has. Because if ever did write a program, I think he'd realize just how much 'smoke' he's blowing in his essay, and probably never submit it.

Like the saying goes: Nothing is ever impossible to the person who told you to DO IT.

SKesselman:
(Mostly to 40hz:)
What if it's already been done?

Access could be made into a more user-friendly software. I need Access, but don't use it. It's too hard. Any relational db with the right UI can do what Seth is talking about, so I don't understand why it's such a big deal for someone to create something more user friendly than Access, with Access.

The only smart feature I agree with is the ability to link. I'm sitting here waiting for the only software that will let me connect whatever I want to whatever else I want, and which will allow me to view these links in a pane. Smart. Maybe GemX will release it, maybe not. They're not talking. Their program doesn't automate simple tasks (I don't like that, either), but rather gives the user the option to link all contacts, notes, external links, emails, what have you. Finally!! (Well, almost, it's not here yet.)

40hz, please understand that to us clueless end users, computers are just things made by people, and sometimes we don't see why people cannot create what we consider to be basic features. We don't know they're techie pipe dreams. We just know we have a lot of little programs all over our PC becuause we cannot get what we need from one program. Close this, open that, update this, uninstall that...we see computers doing things much, much more complex than this, every day. We fly people to the moon, perform surgeries, we even have artificial intelligence, so what's the problem with linking data? Given what computers are capable of, and with one missing feature in every single piece of similar software discussed, I, too, am pretty frustrated, even if my idea of smart computing differs slightly from the writer's.

And, web apps are no better.

mouser:
Sarah's comments made me want to add another point to what i was trying to say.

I think it's important to distinguish between software designed to be intuitive and easy to use, vs. those programs that try to guess what the user wants and thus HIDE the complexity and options from them, and not bother making the user perform some actions.

MS Word is a great example of a program filled with features that are trying to do things smartly/automatically so that the user doesn't ever have to think about what's actually going on.  This is really nice when the program guesses properly about how you want your paragraphs and pages broken up and formatted -- but i do believe i've lost 2 years of my expected life span screaming at the program when it insisted on breaking up pages and applying new formatting craziness behind the scenes that i did not want.

The controversial option in MS Office apps of re-arranging the menus so that the common items were dynamically moved to the top of the menu, and least common ones were moved off the main menus, is another perfect example of how trying to be "smart" and show the user what they probably need at any given moment, can lead to increased complexity for the user when it fails to guess properly.  The loss of predictability is such a catastrophe that I believe such things are almost always better left out.

Here's a good test to figure out if your new smart user interface idea is worth adding.  Compare the *complete* help manual instructions you'll have to give for the function.

Let's look at Godin's AM/PM example.

* The old way help file "Choose the time of your appointment and indicate if it is AM/PM using the drop down combo box."
* Here's the new way help file "The program will try to guess whether your appointment is AM/PM based on your past habits.  Check to make sure the guess is correct.  If not, re-select the proper am/pm setting using the drop down combo box.  If the program is consistently wrong for you, you can disable this automatic guessing by going to View->Preferences->Heuristics and changing the Guess mode to disabled."
If that last item seems familiar, you might have read it in one of my help files.  I'm guilty of plenty of that kind of heuristic optional stuff.  BUT I don't claim it's there to make software "easier" to use -- it's there because a lot of us love to tweak a million options to get things the fun way we want them to be.

Some programs may indeed benefit from this kind of "smart" interface guessing -- if the aim is really to streamline user input to the maximal extent, then sure go for it.  But i do think you pay a non-trivial price in terms of consistency, clarity, control, and predictability, and that most of the time you would be much better with an interface where the user always performs the same few steps each time.

tranglos:
but i do believe i've lost 2 years of my expected life span screaming at the program when it insisted on breaking up pages and applying new formatting craziness behind the scenes that i did not want.
-mouser (September 13, 2009, 06:14 PM)
--- End quote ---

That's been exactly my experience too. I know when I want my quote marks curly and when I want them straight. You, Mr. Word, have NO idea.


Let's look at Godin's AM/PM example.

* The old way help file "Choose the time of your appointment and indicate if it is AM/PM using the drop down combo box."
* Here's the new way help file "The program will try to guess whether your appointment is AM/PM based on your past habits.  Check to make sure the guess is correct.  If not, re-select the proper am/pm setting using the drop down combo box.  If the program is consistently wrong for you, you can disable this automatic guessing by going to View->Preferences->Heuristics and changing the Guess mode to disabled."-mouser (September 13, 2009, 06:14 PM)
--- End quote ---

LOL, that's exactly it. And I suppose this is a very useful test for an app designer when trying to choose between being "dumb" or "smart". If you are 100% sure you won't need a checkbox that says "Disable Guess mode", and if after extensive usability tests no-one complained, then (maybe) go ahead. But if you want to put the feature in but feel you'd better add this checkbox, too, then it's a bad idea right there and you should stop.

tranglos:
Isn't Godin also mixing two very distinct issues here? The am/pm example, with all its faults, is indeed an example of "smart" behavior, inference from historical data or heuristics based on common scenarios. The example is imperfect, but even from my limited coding experience, I think historical data is often immensely useful to have. I kick myself all the time for not adding creation date to every item in every app I've ever written. I think every record in every database should have a creation and last modification timestamp at least, also a read count and maybe the time spent displaying/editing the record; and if at all possible, every database should store every version of every recdord that ever existed. Often impractical, yes, but how helpful when you need it! I'd use it all the time. And Godin is right: a feature to filter out the most often and least often accessed data is very handy.

On the other hand, I don't quite see connectivity (link this item to that one, link my items with all my coworkers' items) as being in the same category of design concepts.

Linking and sharing seem to be all the rage now, but - color me cynical - I suspect the goal here isn't to make applications smarter, but rather to enhance data-gathering capabilities for our dear friends, the advertisers. Even my beloved Google Reader has sprouted all the nuisance "share this, rate that" options; what are they good for? Am I always supposed to be reading only what everybody else has already read? Or why would anyone be interested in what I'm into today? The information I get from "sharing" this or that with "friends" isn't really useful to me. It's data, but I don't think I am the intended recipient. If I were the CTO at Doubleclick, ah, then it might just be a goldmine.

Spoiler(And what's the deal with Twitter anyway? Is this guy a typical Twitterer? My train is here! Yay! - really?)

And anyway, doesn't the Outlook/Exchange combo already do much of the linkin' and sharin' he describes? Maybe it doesn't mark deceased people with color codes, but that wouldn't really be tasteful, would it? I'm really wondering about this specific example Godin's using.

Edited to add: Google tries to be smart in unobtrusive ways, and often it works. GMail has some algorithms built in for detecting dates in email, and when they trigger, it puts up a link to add an appointment in the Google calendar. That would be cool if I were using Google Calendar. But it, too, guesses wrong sometimes, and at least once I've seen it suggest creating an appointment with a date well in the past. And that's just dumb.

There's also a GMail lab thingie that detects the word "attachment" (and variants) in your messages and prompts you if it thinks you forgot to attach a file. It's happened to me a few times. Nothing beats finishing your work on time, then forgetting to attach it and going to sleep for 8 hours, while people in a timezone half the globe away are going frantic. But I wonder if it's smart enough to know the word attachment in languages other than English. And of course if you often discuss attaching things in your emails, the helper would become a nuisance again, and you'd turn it off.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version