Advice for Developers: Make Common Usage Easy
Ken Hendrickson writes "Thomas Sowell has some fantastic common-sense advice for software developers from the viewpoint of an ordinary user: Make it easy to do what almost everybody wants to do. I don't believe he uses Free Software; that means that Microsoft is not satisfying their customers, and Free Software can perform better than Microsoft even in the ease of use area!"
As far as Televisions go.. this really isn't the case anymore. With more and more high-end TVs taking over the market and as they continue to do so in the future, thanks in part to HDTV, there will be a brutal setup process just to turn it on and start watching any kind of TV.
The point is that these devices/programs are being made for just about everyone they need to adapt to everyone's skill level. In the case of software development, it doesn't make sense to create several different versions of software with different default options turned on or off. A lot of the times this software has to be scaled to many different types of users on both ends of the spectrum. As a software developer myself, I try to make things as easy as possible that once the program is loaded they can begin their intended task. However, this may not always be possible all of the time.
I do agree with the following though... Stupid bundled software.
Hmmm.
M$ products are really easy to use for the people that use them.
To make OS products more widely used they have to be easy and intuitive for your common non-geek user to use. This is an area we have failed in before. The products that are easy and intuitive to use from OS do well.
Note to developers... this is a very very very big deal if you want your product picked up. It's not just how good your product is at doing the technicalities but how easy you can do them with.
Evolution or ID?
that means that Microsoft is not satisfying their customers, and Free Software can perform better than Microsoft even in the ease of use area!
When "Free Software" has a sizable amount of the desktop market then I think we can say that. Until then, how many years has it been "this year for desktop linux!"???
I found it a good read here
The key difference between a Programmer and a Senior Programmer is that one of them is Mexican.
This goes directly to the geek factor. Certain types of people like to interact with technology, whether it be primitive or in front of the curve. Learning enough about the ins and outs of the technology and production leads to epihanies, eureka moments and generally groking the thing at hand.
"Academicians are more likely to share each other's toothbrush than each other's nomenclature."
Cohen
For that matter, if it took his guru that long to install, maybe he needs a replacement guru.
Now I'm for simplified interfaces as much as... say 80% of the other respondents here, but there's nothing wrong with juicing up the user experience at the same time with some eye and ear candy.
It sounds to me like what Thomas Sowell really needs to do is learn how to use the VOL and MUTE buttons on his laptop. If he's unlucky, it requires some FN-key combination. If not, he's too dumb to keep on living. -B
What about trying to learn from games, and for example; stop using menus? Those small labels on the upper part of the windows, there are a lot, but we seldom use a few of them.
Ergonomic interfaces don't present more than a few options at a time, if my memory es corerct there were studies about using more than 7 options as being confusing. If few options are presented, you don't need menus.
What's in a sig?
At this point I don't think you can strongly claim that OSX is any more useable than Windows or GNOME or KDE.
programmers and engineers design (for the edge case), and how people really want things to work (make the common cases easy.)
Think about any programming/engineering class you've ever taken. How did your professor test your project? He/she ran all the edge cases against it so see where/if it failed. People learn from their mistakes, some of us anyway, and so they learn that they HAVE to anticipate and make provisions for the edge cases. Yes, the majority of users will never run up against those cases and yes it would make more sense to write a program that catered to the majority of those using it. But if you do that what happens to those of your users who run that edge case?
Summary: The reason programmers and engineers are taught to design against the fail cases is so that if and when they arise after production it is not a disaster. The reason programmers and engineers continue to do things this way is because they've been taught to.
On a side note; it is a good book, i agree.
The only way to get rid of a temptation is to yield to it.
-Oscar Wilde
Will slashdot ever drag itself into the year 2004 and provide the ability to edit posts?
I sure hope not. Now being able to add an addendum, I could agree with. But, even that is risky.
Consider for a moment that there are always active trolls who repost previously 5 star posts just to get karma from unaware mods. Now take the case of an editable post. You can get the post modded to 5 then swap the contents out with a porn troll. Not pretty.
Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
As an ideal, software should make simple things simple, and complex things possible. Both of these require talent, but the former is certainly the less glorious and more thankless. If you are highly skilled, and design your software meticulously with usability in mind, you can make a software task appear so simple that users wonder why it took you so long to write.
Patrick Doyle
I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
This is something I think FireFox has gotten very right. Don't want to mess around with settings? Great. It works right out of the box.
I've installed FireFox for about a dozen people now. So far only two have even bothered to open the Options dialog. They don't care how the options are set, as long as they can browse. The two who have opened the Options dialog think the customizability is great but those two are not the majority of users.
My username does not make me Apathetic. It's irony, get it?
Those, like Mr. Stowell, who simply want their old computer to work and do all the things it used to might give free software a spin. Most people are pleasantly surprised to see their old computer come alive again with Knoppix. Windoze PCs that won't boot anymore are great for such demonstrations. Mepis is the easiest of the Debian based free beer distribution I know of to install. Sarge is not much more difficult and is cleaner as well as more free as liberty. People on a budget will be happy that their old PC once again plays games they love with sound they can turn off.
Friends don't help friends install M$ junk.
Honey, I shrunk the Cygwin
I am unimpressed with people who complain about being beaten brutally once a week. Perhaps they don't know about people who are beaten brutally every day?
I don't know--if an OSS programmer writes something that is hard to use, two things will happen:
1. People will complain. Long and loud.
2. People will write patches or offer constructive criticism.
Some developers will design solid UIs from the start, requiring only minor tweaks. Some will create freakish monstrosities requiring many iterations and possibly a fork to fix. Some programs will remain unspeakably awful, probably because nobody needs their functionality enough to use them and demand repairs.
Remember, this sort of thing happens with closed-source proprietary products, too. IBM and Microsoft are well represented in the Interface Hall of Shame alongside many smaller developers.
~Idarubicin
Wow! That makes my day. An article by Thomas Sowell featured on slashdot! He's a great writer, and he happens to be a conservative black too. Please read some of his other articles too while you're at it.
I watch Brit Hume on Fox News
Come on folks, saying that making the common cases easy is a dumb thing to do is like saying the Win32 API is better than a clean API because of the cruft. A chunk of you sound like you measure you manhood by the complexity you can handle. That's being counterproductive and wasting your own time.
If you think that all cases are edge (tough) cases then you haven't done enough analysis or you don't understand who you are targeting your app to. A common case made easy for iPhoto won't be the same common case for a Photoshop or power Gimp-user. Let the computer do the simple shit for you so that you can focus your brain power on the tougher cases.
No, it isn't easy to build simplicity into an app to make the common cases easy. It requires the ruthlessness of someone willing to toss out good code/interfaces that almost, but doesn't quite work. It also requires placing your end-user (of whatever skill level you've targeted) ahead of your own desires for the app. Tough to do, but well worth it in the end.
You just have to ask yourself do you really want to take 27 steps (hypothetically) to configure a printer *every* time? Wouldn't you prefer to just have to do 3 steps 98% of the time and save the brain power for that difficult 2%?
"All the darkness in the world can not quench the light of one small candle."