Most programmer think they know how to do UI. (Frankly, I think many of them do, to a certain extent, if they're reasonably smart and understand ideas like not throwing too many options at the novice user)
It's visual design where the failing comes in. I think.
Programmers know UI based on what they do as programmers.
Programmers need the 80-bazillion options Visual Studio requires, because Visual Studio is a tool for making other tools.
On the other hand, users don't need all those options (at least, for the average user). Users want a hammer, not a combination forge-lathe-grinder with optional fiberglass extruder.
The argument is constantly made, "What about 'power users' and people who really do need extra functionality?". Fine, OK: put that stuff "under the ho
The argument is constantly made, "What about 'power users' and people who really do need extra functionality?". Fine, OK: put that stuff "under the hood" and document its location and functionality. But don't put in a user config dialog with 27 tab groups, 40 options per tab, with an 'Advanced' button on each one.
Way back in days of yore, when Microsoft was still working out how to do overlapping windows, there was a company called Geoworks that produced a really nice office suite for the PC.
I won't go into details about it, but one of the really cool features was that each application had a tunable user interface. For example, you could set the word processor to user level #1 (novice) and it would turn into Windows Write: most of the controls went away, and you ended up with toolbar buttons for italic, bold, underline, etc, plus justification options; you got simple menus that let you pick things like the font and size directly; you got really, really basic page layout features --- I think it let you pick your paper size, and that was it.
OTOH, turn it up to level #4 (expert) and it turned into Word. There were controls everywhere. Hierarchical editable character and paragraph styles, embedded fields, hyperlinks, a full vector drawing package including rotatable text (also with hierarchical editable styles), a full bitmap drawing package, up to four seperate customisable toolbars, ruler and frame based layout, etc, etc.
And they used the same files.
So it was perfectly possible for Precocious Teenager to log in in expert mode, put together some pretty templates, and then Grandma could log in in novice mode and type text into them with simple formatting. Mum and Dad could use levels #2 or #3, which gave you more features without the overwhelming complexity that level #4 gave you.
It was such a startlingly good idea that I am not at all surprised no-one appears to have done anything similar.
(Hmm. You might still be able to download an evaluation copy here [breadbox.com], but I suspect it's a pig to run on a NT-based Windows. Worth a look, though, if you want to be amazed at what it's possible to do on a 2MB real-mode DOS machine.)
The Xine GUI includes this functionality. There is a dropdown where you can select Beginner, Advanced, Expert and Master which controls the number of options in the Setup window. Of course, xine-ui is otherwise horrible in many, many ways.
It was such a startlingly good idea that I am not at all surprised no-one appears to have done anything similar.
It's not used much because it sucks. Time and time again it was found that users cannot reliably rate their own skill, or they are scared of missing out on features. Typically almost all users chose "Advanced", despite their actual level of proficiency.
It also tended to be used as a way to cover up the fact that a program had too much stuff crammed into it in a bad way.
Microsoft has contemplated this for years as it is a fairly common request. Raymond Chen, whom you might know better as the creator of the wildly popular TweakUI, has been a Windows developer for several years. He has a blog entry [gotdotnet.com] describing why they've never done this. On a side note, I've come to realize that Microsoft only makes products for 2.1 audiences:
1. Home/Inexperienced/Novice Users. This is your corporate drone, your mother, and the kids at school. They all want to get on the PC, get the email, write some documents, and surf the web. Don't care much for how or why things work, only that they do. This is why we end up with the gaudy Fisher Price interface and wizards and all sorts of unfunctional junk.
2. Systems Administrators. Your friendly neighborhood BOFH. He's just gotta keep the servers going, the desktop machines running, the database functional. Plenty of options, tweaks, dull grey backgrounds, policies, ways to make things work if you're sitting at the server console.
2.1 Developers. Yadda yadda yadda... need apps to sustain a monopoly... the whole bit. They get things their way inside Visual Studio and not very much else.
What I object to is there's no class for the ever-growing market of Techies. People who understand the desktop machine they use every day. Many of these are programmers or systems administrators so they know what's going on, they know how they want it done, and they know how they want the computer to do it. Unfortunately, theirs is a life of constantly changing unfunctional defaults to more efficient alternatives, which is of course a mind-numbingly difficult task after you've done it more than once. If we can have predefined security templates [microsoft.com] that apply to a machine to change a slew of default options, why not expert templates?
Microsoft has contemplated this for years as it is a fairly common request. Raymond Chen, whom you might know better as the creator of the wildly popular TweakUI, has been a Windows developer for several years. He has a blog entry describing why they've never done this.
I think to say they've "never done this" is a bit extreme. Word for Windows v1 had a novice mode that hid about half of the menu options. Obviously its not as good an example as that the parent article posted, but it was certainly a sta
There was a program that use to do this on the mac. From memory I think it was an older version of Interarchy (ftp client).
Basically when you started using the program you were at 'novice' level and only simple things were exposed to you. Then depending on the number of downloads and the amount of data etc more and more options would become available to you. The big advantage of this was that for new users the more powerful features would become available. A dialog would popup on startup and explain what t
Systems programmers are the high priests of a low cult.
-- R.S. Barton
programmers think they know UI (Score:4, Insightful)
(Frankly, I think many of them do, to a certain extent, if they're reasonably smart and understand ideas like not throwing too many options at the novice user)
It's visual design where the failing comes in. I think.
Or maybe I'm just generalizing from me.
Re:programmers think they know UI (Score:5, Interesting)
Programmers need the 80-bazillion options Visual Studio requires, because Visual Studio is a tool for making other tools.
On the other hand, users don't need all those options (at least, for the average user). Users want a hammer, not a combination forge-lathe-grinder with optional fiberglass extruder.
The argument is constantly made, "What about 'power users' and people who really do need extra functionality?". Fine, OK: put that stuff "under the ho
Re:programmers think they know UI (Score:5, Insightful)
Way back in days of yore, when Microsoft was still working out how to do overlapping windows, there was a company called Geoworks that produced a really nice office suite for the PC.
I won't go into details about it, but one of the really cool features was that each application had a tunable user interface. For example, you could set the word processor to user level #1 (novice) and it would turn into Windows Write: most of the controls went away, and you ended up with toolbar buttons for italic, bold, underline, etc, plus justification options; you got simple menus that let you pick things like the font and size directly; you got really, really basic page layout features --- I think it let you pick your paper size, and that was it.
OTOH, turn it up to level #4 (expert) and it turned into Word. There were controls everywhere. Hierarchical editable character and paragraph styles, embedded fields, hyperlinks, a full vector drawing package including rotatable text (also with hierarchical editable styles), a full bitmap drawing package, up to four seperate customisable toolbars, ruler and frame based layout, etc, etc.
And they used the same files.
So it was perfectly possible for Precocious Teenager to log in in expert mode, put together some pretty templates, and then Grandma could log in in novice mode and type text into them with simple formatting. Mum and Dad could use levels #2 or #3, which gave you more features without the overwhelming complexity that level #4 gave you.
It was such a startlingly good idea that I am not at all surprised no-one appears to have done anything similar.
(Hmm. You might still be able to download an evaluation copy here [breadbox.com], but I suspect it's a pig to run on a NT-based Windows. Worth a look, though, if you want to be amazed at what it's possible to do on a 2MB real-mode DOS machine.)
Re:programmers think they know UI (Score:1)
Re:programmers think they know UI (Score:2)
It's not used much because it sucks. Time and time again it was found that users cannot reliably rate their own skill, or they are scared of missing out on features. Typically almost all users chose "Advanced", despite their actual level of proficiency.
It also tended to be used as a way to cover up the fact that a program had too much stuff crammed into it in a bad way.
Re:programmers think they know UI (Score:5, Interesting)
On a side note, I've come to realize that Microsoft only makes products for 2.1 audiences:
- 1. Home/Inexperienced/Novice Users. This is your corporate drone, your mother, and the kids at school. They all want to get on the PC, get the email, write some documents, and surf the web. Don't care much for how or why things work, only that they do. This is why we end up with the gaudy Fisher Price interface and wizards and all sorts of unfunctional junk.
- 2. Systems Administrators. Your friendly neighborhood BOFH. He's just gotta keep the servers going, the desktop machines running, the database functional. Plenty of options, tweaks, dull grey backgrounds, policies, ways to make things work if you're sitting at the server console.
- 2.1 Developers. Yadda yadda yadda... need apps to sustain a monopoly... the whole bit. They get things their way inside Visual Studio and not very much else.
What I object to is there's no class for the ever-growing market of Techies. People who understand the desktop machine they use every day. Many of these are programmers or systems administrators so they know what's going on, they know how they want it done, and they know how they want the computer to do it. Unfortunately, theirs is a life of constantly changing unfunctional defaults to more efficient alternatives, which is of course a mind-numbingly difficult task after you've done it more than once. If we can have predefined security templates [microsoft.com] that apply to a machine to change a slew of default options, why not expert templates?Re:programmers think they know UI (Score:2)
I think to say they've "never done this" is a bit extreme. Word for Windows v1 had a novice mode that hid about half of the menu options. Obviously its not as good an example as that the parent article posted, but it was certainly a sta
Re:programmers think they know UI (Score:2)
Basically when you started using the program you were at 'novice' level and only simple things were exposed to you. Then depending on the number of downloads and the amount of data etc more and more options would become available to you. The big advantage of this was that for new users the more powerful features would become available. A dialog would popup on startup and explain what t