How Configurable Should a Desktop User Interface be?
The Original Yama writes "In the world of user interface design there are two main schools of thought. The former maintains that the environment must be flexible and configurable enough to adjust to a user's needs. The latter takes the opposite perspective, arguing that many of today's user interfaces have become bloated and overloaded with features, and consequently have become difficult to maintain and use. KDE developer Mosfet shows how the KDE Project has managed to bridge the gap between the 'highly configurable' and 'less is more' camps."
http://www106.pair.com/rhp/free-software-ui.html
In fact, this news submission doesn't even include the rebuttal written by Mosfet two days ago, answering to Havoc Pennington's article, as linked above.
seems to me that it should be based on what kind of users you are expecting. Windows is not very changeable partly because the standard windows user will learn to use the interface given to him/her. with the more advanced user, with very specific needs and tastes, will want to be able to control everything. all that to say, its kinda hard to even imagine that such a bridge exists unless you want to cater to both parties. however, my hat is off to KDE, cause they do a pretty good job with both sides, though i imagine their standard user is a bit more advanced than many....
jsut a thought, at least
xao
xao
http://TheHillforum.hopto.org
The primary goal all OS vendors, should be to make a quick and responsive interface that is easy enough for anyone to get what they need done (No I do not need my desktop background to be an active web page).
There is no shortage of 3rd party utilities to modify a your desktop to your liking. Keep everything modular and people can add what they need when they need it.
"today's user interfaces have become bloated and overloaded with features"
Did the phrase "OS X" pop into anyone's head when they read that line? I sincerely hope that we've reached a turning point in UIs, and that people start thinking about efficiency and speed instead of bouncing transparent smoothed faded noisy two-toned etc. etc. junk.
(disclaimer: I'm not a Linux user at all, but neither am I a Windows fanboy, so this is totally an outsider's perspective)
I disagree. I think one of Linux' weak points is that it doesn't offer any real *alternative* when it comes to the GUI.
I think Linux needs some sort of wildly different GUI, perhaps not even based on the WIMP metaphore. Those people who are trying to make their GUIs exactly like Windows are missing the point: Why bother changing if you're getting exactly the same thing?
As for the question at hand: I think configuration options should really be limited to colours and fonts. Once you start doing things like rearranging buttons, or changing their glyphs, then the learning curve starts to get steeper for new users.
Mabster
When it comes to configuring the desktop, I personally believe that give as many options as you like so long as they can be locked by an admin. Nothing worse that having too many features on a public access machine. I find that most people use the defaults, except for changing the background.
If you use Windows and Stardock Windowblinds, you quickly realize that there are very few 'Skins' that allow you to use Windows as efficiently as the default appearance. The same is true of Windows XP themes, Winamp 2 Skins and Winamp 3/Wasabi skins. Even if they are beautiful, they have to have enough visual similarity to the original, or else the user ends up feeling that ha has to re-learn the interface.
The next Slashdot story will be ready soon, but subscribers can beat the rush and slashdot the links early!
A user interface should contain only the level of configurability that can be fully tested, and made relatively bug-free. I don't want WinXP type stuff that actually crashes my system, but I'd like to be able to do things like reskin my interface, and put any start menu or equivalent (or CDE interface bar while we're at it) at any place I like on my screen.
Bonus points for integrating a command line with the desktop, either as the background or in some toolbarish thing.
-Amalcon
Take a typical install program for Windows: you have three options:
- minimal
- typical
- custom
Minimal and Typical can configure many features of the product with a simple click. If you want total control, choose Custom.
Or, have your installer let the user choose Minimal or Typical, then customize from there.
Why can't this same type of system be used to configure a desktop UI?
Your options could be:
- Simple, lightweight
- Middle of the road
- Lots of eye candy, bloated
- Masochist
No one complains until you start taking away features.
.
For instance, I sure miss the edge-flipping I used so much in sawfish/gnome1.2
If the UI is completely configurable, eg, wrt mouse button function, how can I possibly document the functionality of my program? I can't say: Ctrl-Left-Click on this picture for foo-functionality, Right-Click for bar, Middle-Click for baz, because someone may have configured the UI so that the middle button closes the window, right simulates a double-left-click and ctrl-left might prompt them to save a copy of the picture in question.
Yeah, let's complain about the shortcomings of the Windows GUI and then proceed to completely emulate it when we have the unique opportunity to start from scratch and revolutionize before a deep-seated userbase has been established.
I disagree. I'm new to linux, and I love how much control the user has over the interface. Beats the heck out of two options (windows classic, windows xp, in two colors, green or pumpkin or whatever). I don't think that the GUI is what's keeping people away from linux. KDE looks and functions enough like windows to make almost anyone with a little experiece with windows PCs get the idea. What I do find that intimidates me about linux is that the operating system behaves so much differently that windows. not many people are used to a unix environment, or the way command line OSes work, and the steep learning curve keeps them from making the effort. I don't blame the GUI, so far it's one of the best advantages i have seen over windows.
Although some may find this a convenience I have found that most beginner to intermediate users find this a nuisance.
The problem is that when choosing a command like Tools - Options, the user expects the Options command to appear at the bottom of the Tools menu where it traditionally lies. It is the relative location of the menu entry that is significant, not the actual menu text.
The same applies for dialog boxes. After you have used an interface for a period of time, you eventually get to the point where you can place the mouse cursor at the position on the screen where the control you will click will be, even before the dialog appears.
Lots of irrelevent menu choices is a definitely a bad thing (*cough*kde*cough*) but randomly moving menu entries isn't necessarily a good thing.
If you don't want to repeat the past, stop living in it.
Kind of like what GNOME 2 did and why I find it so annoying to use. All of the really useful features (like the task list only showing iconified apps, to name one of many) were taken out.
It's starting to slowly get better, and some options can still be set with the gconf editor, but some are just completely missing...
There is no shortage of 3rd party utilities to modify a your desktop to your liking.
http://indiestep.sourceforge.net/
i recomend this...
xao
xao
http://TheHillforum.hopto.org
I'm not a KDE user, so I'm not actually saying that KDE is doing it wrong. But GNOME 2 is doing it right.
First, you design things so that they just work the way most users expect. You run tests to make sure you have it right.
Next, you make preferences dialogs with the most common options in them. You do let users configure things, but you make sure you don't have ten million options to sort through to find the one you want.
Next, you make an "experts" configuration interface; it could be config files, but in GNOME 2 it is GConf. (GConf looks a lot like the Windows registry, but it isn't fragile and centralized, and at its heart it's actually config files.)
Last, you make the system modular so that the really dedicated can swap out a module if they want something really different. If you don't like Havoc Pennington's way of looking at things, you can run Sawfish instead of Metacity. If you don't like Nautilus, you can run Gnome Commander or many other file managers.
Back when I was running GNOME 1.x, I actually hated the excessive number of options. I could actually maximize a window just horizontally, just vertically, or maximize both! Now with GNOME 2, all I can do is maximize both... but that's all I ever wanted in the first place.
steveha
lf(1): it's like ls(1) but sorts filenames by extension, tersely
That is the single truth that will decide what is the 'ultimate' GUI.
:p
The problem is, this absolute configurability must come with absolute ease of use.
I should be able to set up my GUI to look like whatever I want. I could have it look like, I don't know, CowboyNeal, while the guy next door, using the same GUI, can have it look like a carbon copy of Windows.
However, both of us should be able to do it *easily*. That is, clicking on buttons in a dialogue box.
Note: I don't speak of creating graphics and icons and such 'easily'. That's another ballgame.
What I speak of is being able to configure everything. What mouse buttons do what. Where the buttons on the tops of windows are. What those buttons do. How my scrollbar looks. The background. What window frames look like. How window focus works. Blah blah blah.
KDE is the closest thing I've found to this. It doesn't have all the customizing I'd like, but it's the easiest.
Enlightenment was approaching this back in the day - the problem there was you had to go diving through text files to configure things.
It should be stripped down to only those features that I like, arranged in a manner that helps me work the way I want to. Nothing more, nothing less.
How that effects *you* is *your* problem.
(Please note that the above is not the opinion of managment and is a piece written by the author with his tounge planted a bit in his cheek as an illustrative example of the essential problem in a reductio absurdum sort of way and vaguely following somewhat unclear tenets of the Scoratic Method. It has come to our attention that the Socratic Method may be prohibited by law in Athens, so we advise our Athenian compatriots to don their helms of wisdom and avoid reading the above lest they fall into coruption and dissolution. Hail Athena! Sparta must die! Oh, sorry, got carried away a bit there.)
KFG
I'm a long-time Gnome user and was quite dubious when I heard that Gnome 2.0 was going to simplify the configuration operations. Having used various 2.x versions for some size months I've realised that there is nothing I've missed. I've come to the conclusion that while there are a lot of useful configuration options you could put in there are also a lot that are useless or could be simplified (but seemed so cool at the time). I'm generally for configurability, but sometimes a good purge helps.
I can't take anything Mosfet says seriously after his inane rant against RedHat's "crippled" version of KDE. The article linked to does not improve my opinion of him. "I think KDE is better than GNOME." Thank you for your unbiased opinion, Mr. KDE Developer.
KDE has lots of configurability and hides some of it to not scare people. Is this really worthy of an article? Does he really think he's found some new principle of design that he needs to share with everyone?
I rate his article:
0, Stupidly Obvious
-Erwos
Plausible conjecture should not be misrepresented as proof positive.
--sex
Very popular slashdot journal for adul
Too late for that. Linux uses X-Window, which is far from achieving the start-from-scratch goals.
BEOS had something with their database file system and object-based UI (at system level). But they chickened out and settled for a JFS. (I'll omit the rest of their story.)
Another novel idea to the whole UI thing was NeXTSTEP (there after, OpenStep, thereafter, Mac OS X). I'm not talking about Carbon API here but rather Cocoa.
If you want to start from scratch, THAT is it. And if you'd rather it be on top of Linux, GNUStep is IT (aka, Cocoa for Linux, if you will).
I had been avoiding KDE for years,
using gnome as my desktop.
Until gnome 2 came out.
Then I felt like the gnome team had somehow
managed to slap handcuffs on me!
Almost like a Windows gui...
Go mosfet!
KDE isn't so bad as I'd anticipated,
and while enlightenment is pretty,
and I wish I could *effectively* use enlightenment as my windowmanager in KDE (it hasn't quite worked for me) KDE is (nowadays) nowhere near as bad a slug as it used to be...
Except when I'm working diskless of course,
then its blackbox.
But notice the difference here, between Linux and certain proprietary OSs?
I have the choice. I can choose if I want gnomes less is more paradigm or kde.
In windows... I guess I could use windowblinds or desktopX or whatever its called, but they just change the way it *looks*...
KDE for Windows XP? Anytime soon?
In the free world the media isn't government run; the government is media run.
What would be the point of designing anything for the average user? The average user uses the OS that comes with the box when they bought it, or at most an upgrade to a newer version of that OS. The average user never gets anywhere near a Linux box, or KDE, or Gnome.
Lets think about designing stuff for the people who are actually going to be using it.
Better to be despised for too anxious apprehensions, than ruined by too confident a security. --Edmund Burke
The problem on most open systems is inconsistency, because there are many different interfaces. For example, on my Linux system, I've noticed almost half a dozen different file open dialogs. Any one of them would be OK (sure...some are better than others, but I could get used to any of them), but having all of them is a problem.
This situation arises because the user interface decisions are made by the developers of each individual application (either directly, or indirectly by which X toolkit they choose to use).
Here's what I want. I want to decide which file dialog I like, which scroll bar behaviour I like, what dohickeys are on the titles bars of windows, etc., and I want every program on the system to obey that decision when I use it, unless I specifically ask or give permission for that program to do something else.
I think that ideally the level of "configurability" itself should be configurable.
:)
:-)]
This means that experienced users have more power over the looks, while novices can still play with some things without risking to mess things up ("where did Solitaire go?").
And I'm not only thinking an "admin/user" difference, there may be many levels... for example, one level allows only to change colors, another the desktop theme, and yet another level lets you change how the menus behave. And so on... It *should* be possible with a good integration of UIs, although coming up with something effective and not bloaty will be a real challenge. Not to mention that you need to set a standard... and that can be fight
But I think Apple machines are going there. Everytime I touch OS X I get the feeling that everybody sets it up to their own taste, while in XP things are much more standardized. [Linux is of course free-for-all as you can code your own whatever.
The ENIAC Demo Competition
Even though this is in the context of an OS' UI, I'll put this into terms with a single application's UI. I'm not a programmer, so what I'm saying is 100% from the end-user standpoint... There are a few main points I really evaluate when I look at a program for the first time: 1. Can I use it right off the bat? (not expert level) - does it make sense without having to read documentation. Obviously, when I would have trouble using some of the advanced features, or just want clarification of a feature, I'll go look at it. 2.Does the program serve its main intent? there are many programs which do serve their main purpose well, but for some reason, the devs get really excited and put in waaay too many features - this isn't bad if it doesn't slow down the use of the program and the program itself. It is bad if this clutters the UI to the point that its an eyesore - but on the other hand, if those extra 'buttons' to access the feature on default, it isn't intimidating for a first time user. What it comes down to for me is this: does the UI provide easy access to what I want to do, and is it easily customizable to get rid of/add what I want to do (power features) WITHOUT bloating the software, hence slowing it down... I have no idea if any of that made any sense, but I'm clicking Submit now.
The "desktop" metaphor implies that the ui should be as configurable as a desktop. Stable drawers full of crap, movable inbox full of crap, etc.
The user should be able to do whatever it takes to work better. As for the applications, I think this holds true too, to a lesser extent.
Very many tools seem to duplicate the workspace idea (Macromedia's MX suite comes to mind) so they should be configurable (to me, at least), but applications which don't replicate the workspace (e.g. a file manager, a text editor) shouldn't be user-configurable any more than an ink pen should be.
Personally, I want to be able to hack the living daylights out of everything in my environment. I dropped Gnome 2 because it started to feel like Windows. It reminds me of the early days of the phone company: you can have any color phone you want, as long as its black.
One of the major reasons the Windows desktop sucks, is that the programmers are forced to pander to some mythical vision of what "users" want that is the direct product of marketing and usability studies. Linux software is created by programmers who actually intend to use the software themselves, and it's better stuff all around. I am mystified by the attempt to adopt a process that has resulted in a car crash of a UI in the name of "making Linux mainstream."
Who needs it.
Win2k menus do this too. One of the first things I turned off. Just because a menu item isn't one of the things I haven't looked at today doesn't mean I don't want to see it there today. Intelligent submenu-ing of items into categories accomplishes the same thing, while not 'hiding' choices. Now obviously there can be a problem with this too, but I'm fairly sure that I've had less questions saying "Which submenu is blah in?" (cause it's usually intuitive) and more questions saying "Where did all my menu items go?" (cause those down arrows are not immediately obvious).
So, once again, Windows is not the answer to GUI design. What a surprise.
----------
(define (.sig) (cons 'my (list 'other 'car 'is 'a 'cdr)))
http://4horsemen.net
This sounds like a simple but it's a very important point. Configurability can be powerful but it totally screws up documentation.
It also makes it so that users from one system to another don't know how to use the UI.
Now, you can have high configurability, but in most cases THE DEFAULT configuration should be solid and easily available.
Simple configuration (like desktop colors, fonts, etc) should be easily available, but more advanced features should be kept for power users. And there should always be a quick way to "use the defaults" (like login dialog with a use default window mgr settings option).
- sigs are for wimps.
The UI should be appropriate to the task. Some tasks will benefit greatly from flexibility, some will not.
AutoCAD, for example, provides a pretty busy interface that regularly overwhelms beginners. However, it is also a highly configurable combination of command line, toolbars, menus, and context menus, with both scripting and programming facilities built in. When a moderately advanced user starts tinkering with it, the interface can be customized to provide enormous productivity gains for that user. (On the other hand, woe to the drafter who sits down in front of someone else's custom set-up.) It's very complex, and when I was a drafter I learned to love it.
However, as a drafter I was doing very repetitive tasks... I had small tools that saved me a few keystrokes and big ones that saved me hours. If I hadn't been doing highly repetitive tasks which were subject to some optimization, all that interface customizability would have been for naught.
Does an MP3 player need much beyond simple controls and playlists? I don't think so. Much of the customization in a program that performs a simple task will amount to eye candy... useless, but fun.
Simple tasks generally call for simple interfaces, while complex (and especially repetitive) tasks call for major customizability.
With reasonable men I will reason; with humane men I will plead; but to tyrants I will give no quarter. -- William Lloyd
has it been so long already, that the Great X11 Window Manager Chaos is beginning to be forgotten?
say, here's a beginner's guide sort of site for you. for the really exotic, not-even-WIMP-based ideas you'd really need a completely redesigned and rewritten application suite, which would take some little time to create, but a few of the more... exotic... WM's already out there might be good starting points. TreeWM, maybe Ion, maybe PWM, perhaps 3Dwm. or just go googling for "window manager", see how long that'll keep you busy...
maybe it's a sign of getting old, when you can clearly remember the days of "unix has too many GUIs!" and seeing the good point that was therein made.
This is just about the biggest hot topic in the world isnt it? here is my bit...
A UI has *lots* to tweak. pointers, buttons, windows. color, highlights, and now with 3d shading and drop shadows and etc etc..
Thing is most people dont change these things. Those who do usually go with 'sets/skins' and many of them are horrid evil monsters of the abyss.
Thing is do you really want to be able to configure all that stuff? With x-windowsyou can get in there and tweak everything. Thats all well and good. but who is gonna put a generic 'grandma' front end on that? And even if you have a nice screen to fiddle all the bits, will grandma even know what half the things are? Then you have the flip side of having almost nothing user configurable out of the box (Aqua). You can go 3rd party to go in there and chage the stuff, but then we are back the horrible skinning thing (as has been said elsewhere in this thread.
So the big question is how much is enough? How much is too much? Should anyone really waste the time letting people tweak everything? Does a compay that tries to make a coherent look and feel let people go and throw off the UI elements when they chose a 96 pt font for their "ok" button?
Mind you this is going to just get more fuzzy when the UI starts using vector 2d and 3d, and even more animated objects in the UI. Just wait untilyour head explodes when you see the pink hello kitty desktop of doom.
the latter generations of key punch machines.
True, you could set the drum with which columns to always punch, but just look at the price that we have paid for that little trade-off of convenience.
It's time we got back to basics.
Sam Nitzberg
By what standards? Your own? If it is to your own standards, then by all means, be happy you have the choice of _not_ running KDE at all :)
I think Daniel is on to something. I've used both desktop environments, and yes, I loved Gnome 1.4, and I hate Gnome 2. Why? Because it gets in the way with how I want my desktop to work. KDE provides the mechanisms to tweak how you want your environment to work. It's the first thing I did when I started KDE for the first time. After that, I never touched the UI configuration because it was _just_ right_ for me.
Also, my family here uses KDE and they never complained how it worked. They are used to macs, so I set KPersonalizer to use the Mac-like defaults. No problem at all, they were right at home.
And as for confusing options, well, tend to go explore in Kcontrol and change colors/icons whatever themselves, and they never had to call me over _once_. So the whole point is moot, for me, and my direct environment (a.k.a. family that use my systems).
I like KDE's flexibility. You hate "complexity". It all boils down to preference.
While I'm typing anyway, I might share an anecdote. At an internetcafe where I do some freelance work I set up some KDE kiosk-mode terminals (KDE 3.1), as a test to see if people would use them instead of the defacto policied-shut winders box. I set some up, with some nice apps (Kopete, Konqueror, Moz, Phoenix, kvirc, java stuff, flash plugins etc etc.), planted some icons on the desktop to start them, slapped a nice style on it, put some nice looking icon sets in there, and just let it sit to be used. They've been sitting in the shop for a few days now, running happily.
To my surprise, the customers liked the KDE boxes. Actually, they fight over who gets to use them! And of course there's the added bones of less headaches. The winders machines tend to clutter up so much at the end of the day, I need to zap them all and put a ghost image back for the next day. Never once was that needed with KDE.
It's just so cool how you can take _out_ KDE's flexibility of you need it. Does GNOME have a Kiosk framework like KDE's?
As mosfet writes:
Check this out to see a developers take on the whole "less-is-more" debate going on about Linux user interfaces
Now, I've no doubt he's a very gifted developer. But more often than not, a developers opinion on UI issues should be disregarded.
It's not because they couldn't potentially be good at it, it's because their brain is occupied with technical issues that have no relevance to an end-user.
Alan Cooper has written some pretty fine books about these issues, which I'm sure any developer related to UI design finds very informative. Some of the anecdotes are hilarious.
Unfortunately, it seems that Human Interaction Design is still not very high on the list when people design a product, resulting in there not being very many people that have specialized themselves in this field. It goes without saying that finding the right people for such a job for open source projects is tricky, to say the least.
Let's see, I started with the Atari 400 in 1979...
I've seen a few interfaces.
Provide a slightly-more-than-minimalist set
of defaults. Make it look nice, and be functional,
for 90% of the users that will never change a thing.
Then give the other 10% of us enough configurability
to hang ourselves with our mice!
It's 2003, right? 2D interfaces are pretty well understood
by now (WIMP: Windows, Icons, Mouse, Pointer) I can't
see things getting truly interesting again until we
go to 3D.
(grumpy old man voice) - I remember when we had to
hand-code our ~/.Xdefaults files, and we liked it!
I play around with lots of replacement shells on windows, and different window managers for xfree. With using multiple guis on multiple platforms all day, I'll share my thoughts.
:)
The major problem with most guis, is speed. I want my data fast, I want to work fast. Heres some common problems I see.
1. Cut & Paste. I tend to use shift-insert/ctrl-insert more often than ctrl-x/c/v. Application tend to support which method the developer wants. Right mouse cut/paste/select all handy in windows, should be in more unix guis.
2. Taskbar, when having 20-30 applications open, i want quick access. Binding keys is ok for quick launch, but give me task bar, task list, or some other task type folder is really useful. Nice icons, animation is neat, but dont slow down my system, or get in the way.
3. Alt-tab. Pesky little windows key combo seems to be ingrained in my head. I love to alt-tab back to the last application. I know shift normally mean go backwards, but 3 key combos i tend to ignore.
4. Anti Aliased fonts. When you see them, its hard to go back to non-aliased fonts. Like seeing HDTV, its that much of a difference. BTW, terminal font is for terminals, I like the look of VGA font for my terms. Clear, easy to read, and a standard. Ansi VGA for terms only. (Linux console works, even use it on all my ssh programs.) Guess too much old school thinking ingrained in me, OS2 had the perfect font in its command shell.
5. Mouse, 5 buttons. For games or applications, having a button there makes a task quicker. (I know its not UI, but its input related..)
6. Pixel Snap. IceWM has it, and found a handy program for windows (allsnap) that does it. Make it easy to have multiple terminal windows open, and I dont have to align by hand.
7. Virtual Windows, neat idea, but I find myself wanting to see my apps on the screen. So I tile, and keep sections open that i need to see, most common, excel spreadsheets with datafill while i have open ssh working.
So having my little pics, it narrows my choices of which gui's I use. Mostly, Im sticking with WinXP with cygwin/putty for now. On the unix side, icewm or kde. Nice icewm is only 600K and does most of what I want. Blackbox can be configured with most of my choices also.
I think the biggest problem now is consistency, and these developers are working hard at adding options to fix that. And its only going to get Better.
This is just the kind of thinking that is preventing Linux from becoming mainstream. Programmers/hackers like to be able to configure every tiny little aspect of their software, but the average user doesn't care about this - he just wants to use the computer to do his work. Windows, despite all its technical problems, gives the user a simple, intuitive interface that is exactly the same on any Windows computer. Linux people may claim they want to win users away from Microsoft, but to do this, Linux must be as easy to use as Windows. This means having an interface that is well-organized, functional enough that a CLI is never needed (but not bloated), and most important, consistent across all Linux systems. As long as Linux programmers continue to design the system to meet only their own needs, average users will not be able to handle it.
Hi I'm **** and I'm a recovering theme. Originally I just wanted to make my desktop look cool, sometimes lean and mean styles like fluxbox with borderless transparent terminals and some spacey background images. Other times I'd try for an elegant desktop where I could have a panel, some sytstem monitors and icons without making the screen look cluttered.
That was fine, but there was always more to do. Redesign some buttons here, alter a gtk theme to match the gnome theme there. Pretty soon I was out of control.
My rock bottom came when I downloaded the CVS source for e17. I spent day and night with it. All I ever talked about was Evas and Imlib2. My girlfriend left, I was fired from my job, friends eventually stopped coming round.
Then I met this guy named Bill. He helped me install Windows 2000 on my laptop and showed me how it was pointless to change any of the appearence settings because they all looked the same anyway. Thanks to him and the friends I've made in here I've been able to stick to word processing and other stuff on my computer, one day at a time.
Thanks for asking me to share.
:wq
Why, in the old days all we had to do to change the interface was get out the soldering iron and reconfigure some bistable multivibrators around. Then just drill a few new holes in the panel, add some blinken lights, and Presto!
But can you get a drop in bolt on the kill switch that can only be removed with dynamite these days? Nooooooooooooo! Can't even get a bloody Molly Guard for the things. Any damned kid can just walk right up and reboot the thing over and over again to their sticky little heart's delight.
"Daddy, what are you working on?" Boot.
Arrrrgh!
It's unseemly. Kids don't know how good things used to be.
KFG
Seriously, if any of you griping about KDE's interface haven't tried KDE 3.1, you owe it to yourself to try it. Phenomenal...
Waiting for KDE 3.2. KMail will actually have a useful spell checker, which will apparently be available for use in everything KDE, including Konqueror forms (like what I'm using to write this).
The Linux kernel is ready. KDE is almost ready. Then, all we'll need will be apps developers to produce stuff which doesn't feel/look/act/work like bad Windows shareware. (Integration, developers, integration! I need OpenOffice Impress to seamlessly handle videos, and Calc to do a polynomial regression!) Then Linux will actually be ready for the desktop and I'll be able to take that damned page off my site.
Fire and Meat. Yummy.
This article doesn't show anything of the sort. Having read the whole thing, it's just another article arguing that more configurability in KDE is better. There's nothing wrong with arguing this, but it certainly doesn't (successfully) explain how any gap is being bridged.
If anything, it again fails to solve the main problem that highly configurable interfaces have: That most people don't know what the best interface for them is.
If lots of configuration options are offered, people will choose what they think they like at the time. This doesn't mean they're right. It doesn't mean they'll get things done better or more efficiently. It doesn't mean they'll improve their reaction times with respect to Fitts law or Hicks law. It doesn't mean they'll have a better or more enjoyable experience using the interface. It doesn't mean they'll design a superior interface that'll prevent them from getting RSI or damaging their eyes. It certainly doesn't mean that someone else will be able to quickly and intuitively adapt to their interface, nor that they will be able to quickly and intuitively adapt to someone else's interface.
All that a configurable interface allows is for a user to change it to something that they think might be useful. Frequently, a person won't get around to changing the option, even if they realise they've made a mistake. Unfortunately, users aren't experts.
There certainly are problems that need to be solved, but the linked article doesn't solve anything.
First, let me say that I hate the direction GNOME is moving. It's just plain not as configurable as KDE, and what configurability their is, is buried in a rather opaque registry.
Second, I think the larger problem is not so much configurability, but complexity. It's not a matter of how many options are there, but how those options are presented. The main problem with human beings is not that they can't deal with large amounts of data, but that they can only deal with small pieces of a large data set at a given time.
This problem encompasses not just configuration, but all desktop GUIs (even OS X). The Windows/Menus/Icons/Pointer is just too complex. There are too many widgets, too many places to access functionality, too many places to display information. For those of you on Windows (I feel your pain) fire up Windows Media Player. The interface is a nightmare. It's even hard for me to use! There are at least six different locations where controls are located. Information is displayed in multiple locations. It's just a mess. Then fire up Word. There are dozens of icons that have absolutely no recognizable meaning. The problem reaches critical mass in a program like AutoCad (I'm an engineering major, so I have a vested interest in seeing this UI mess disposed of as soon as possible!) Dozens of icons, all similar looking. Context menus that have no relation to the object being clicked on. Weird interactions between the command-line, menus, and context menus.
This interface complexity hinders not only ease of use, but efficiency. Think of what happens when your PC starts using the swap file. It spends all it's time trashing the hard drive instead of doing real work. When a user is confronted with all the gidgets in modern UIs, their thought process and efficiency slows to a crawl.
To ease the interface mess, we need to rethink how humans interact with the GUI. A next-gen GUI would have the following features:
1) Little to no "widgetry" visible on-screen. The user should be able to concentrate on what he's working on, rather than be distracted by UI information. Think "vi" vs "MS Word."
2) One point of access to functionality. Like "vi's" command line or Houdini's keyboard-menus.
3) Succinct context menus. Context menus should have no more than a half a dozen entries, and should only function as shortcuts for functionality accessible from the "common access point."
4) No more windows. Overlapping windows are just confusing and require too much user intervention. A next gen GUI should be based on a full-screen application mechanism. For the relatively few times when more than one application needs to be visible at the same time, mechanisms need to be provided to facillitate this. This is an example of optimizing for the common case.
5) More use of tabs. Tabs are a surprisingly easy mechanism for users to pick up. Note that all the navigation menus on the web are a version of the essential "tab view" concept.
6) Larger UI elements. Since the UI would only show the elements absolutely necessary at the moment, UI elements could be large, which greatly speeds up pattern recognition in the human brain.
7) More use of color. Humans are remarkably sensitive to color coding, but for some odd reason, current GUIs only use color for asthetic purposes.
8) More use of text. The human brain is a language processing machine. Current GUIs rely far too much on metaphors and other elements that require user training, instead of just plainly telling users what's going on. Take menu entries. Instead of being short and cryptic, they should be detailed and explanatory. Who cares if that makes the menu bigger. Are you looking at something else while you're reading the menu?
9) Seperation of "background" tasks from "foreground" tasks. KDE is doing a great job of this with it's notification bar programs for noatun and kopete.
10) More powerful application management. The user shouldn't have to manually manage applications. Some intelligence should be applied to keep running applications easily accessible. For example, when I'm doing research papers, the "taskbar" concept just plain can't handle the explosion of application windows.
11) Global workflow enhancers. Many of the workflow enhancers found in high-end applications like Maya and Photoshop, like info-bars, undo-histories, etc, could easily be applied to applications in general. A consistent set of workflow enhancers would greatly help efficiency, while reducing the burden on application developers to write these systems.
The overall point of this concept is to streamline the computer/human interface. It reduces the dependence on metaphors, which is hard for users to inderstand, and allows them to interact more directly. An implementation of this concept probably would not be intuitive. (BTW, intuitiveness is a sham. Nothing is intuitive, except the three built-in human actions, sucking, grasping, and cuddling.) It would require a modicum of user training. But with the large numbers of locations where user training is available, such as workplaces and schools, along with the rising number of computer-educated sons/daughters/grandchildren/friends/etc, such training should be acessible. Most importantly, teh features of the system are such that a minimum number of concepts are required to understand the whole system. Once those concepts are understood, the user can proceed without further intervention.
A deep unwavering belief is a sure sign you're missing something...
I've come to expect a lot of bitching about gnome(-2.x) on slashdot, simply because the vast majority of users here are people who spend a LOT of time with computers. These are the people who bring up the dreaded workspaces vs desktops debate, bemoan the loss of edge-flipping, and berate the fact that you "can't do that neat thing I've always been able to do in WindowMaker." Others just shrug, smile patronizingly, and say "I don't see why everybody can't just use Emacs."
Ok, so, I have about 100 users in a large department all using linux -- currently both KDE and gnome-1.4 (rhl-7.3). All I can say -- I want an environment that doesn't require a computer degree to configure and operate it. Note -- my users are nearly all PhDs in Physics, or are on their way to obtaining a PhD in Physics, yet still they have trouble figuring out the interface. The notion of setting up our administrative assistants with a gnome-1.4 or a KDE workstation is bordering on silly at the moment.
However, looking at my shiny new gnome-2.2 installation, I must say that perhaps that is slowly changing. This looks MUCH more like an interface for the ordinary people who want to actually USE the applications, not hack them, or learn a separate programming language and a slew of wrist-numbing keybindings just to launch one successfully. Simplicity and responsiveness is the key.
Gnome is a very valuable project for those of us who are looking at maintaining a lot of desktops in a business or educational environment. Currently such setups are frequently limited to Windows or OS X, but both of these platforms come with a huge price-tag both in terms of the OS itself and in terms of admin time spent per each computer -- not only when it comes to the quickness of setup (remote customized pxe kickstarts vs. disk imaging, for example), but also in the area of patching and software maintenance (centralized package updating via RPM, including custom packages, vs... oh, hell, I don't know, everything I've seen on windows/osx is such an horrible hack). However, while administration benefits have been clear, adoption on the desktop has been slow to none, simply because there hasn't been a good, simple, and intuitive WIMP interface available for use on Linux for those who think of their computers as tools to do their day jobs and not in terms of a lifestyle or a political statement.
So, to those working on making GNOME a success on our business desktops I give a resounding cheer. To those who whine about workspaces vs. desktops, edge-flipping, and the fact that there are no longer five different clocks available for their panel -- I'm sure there is a windowing environment that will gladly welcome you. If you want eye-candy, look at Enlightenment. If you want a slew of features -- look at KDE. If you want lean-and-mean, look at WindowMaker and such.
But please don't abuse our cherished gnome developers if your favorite wm feature is not in 2.x, or that you cannot pass the --enable-throbbing-transparencies flags to applications any more. They are out to make a good business end-user desktop, and they seem to actually have a clue as to how to go about doing it. Now we need a gnome2-ified evolution and a decent gnome2-ified browser, and the underlying desktop structure is pretty much complete. Too bad OpenOffice(.org) is using its own widget set. I'm so tired of the "let's make our own widget set" mentality of modern projects...
Anyway -- Gnome2 developers: you are my heroes.
If you open yourself to the foo, You and foo become one.
On the ad-absurdium extreme of the customizable camp would be those who firmly believe that real users write their user interface from scratch. (the most fundamental stalwarts of this already extreme group would still like to get rid of those silly "high level languages" -- in the belief that only assembler gives access to the full power of the machine).
I haven't really delved enough into KDE and GNOME to decide which has produced a better compromise, but I am reasonably happy with what KDE allows me to stomp on.
And, of course, since it's open source, I still do have the choice of rewriting (or replacing) any part that doesn't modify to my satisfaction. (as long as I'm willing to read the dreaded highg-level-language source-code).
Sometimes boldness is in fashion. Sometimes only the brave will be bold.
I think a purely OO desktop would be ideal. Is there any movement towards an object oriented desktop model for linux? Personally, I think that the application model is dated. All an application is, is functionality bound to a package. I find this very limiting.
Imagine a desktop where you had a dictionary (spell checker), which could be applied to any text (this post, documents, other peoples web pages). That ruler tool would no longer be stuck to abiword. You would have a basic set of tools which you could decide how to put together based on your needs (and of course, assembled into new objects).
Maybe I am wrong. It may be too easy for the user to hack together their own tools. There's just too much money to be made in binding tools together. The average user wouldn't need to buy applications if they had all the tools they needed.
Could you imagine if staples demanded that you buy their supplies in packages (pencils, papers, erasers, staplers etc.. ) and demanded that you only use their pens with their paper? Is this not analogous to what the software companies do with their application paradigm?
...like what KDE offers a user on their first login?
The main control is a slider bar, with "very little eye candy" on one end, and "way too much eye candy" on the other. The drop-down "advanced" controls allow individual checkboxes for particular candy features; the slider just turns them on and off in groups.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
Over the last 2 months I've tried hard to find something better, settling on fluxbox for a while, then giving KDE 3.1 the earnest try. In the end I ended up back where I started, running enlightenment DR16.5 on all my linux boxes. I rarely am forced to work on a windows box, and wow does it remind me why I left. I would say the windows UI is the lowest common denominator, and for KDE or Gnome to try to emulate that is a waste of time. I'm with the poster who says why waste our time trying to copy windows or mac os, which IMHO is par with windows.
the rebuttal's comment that Mac OS is a very usable interface seems way off base. Simple, yes, but usable? in what way? With my setup on enlightenment I can work fast, manage multiple tasks easily, organize windows and have E remember evertyhing about it. Oh, and it just works. Want a program to start when I log in, I don't need to find some folder, or wade through half broken configuration programs, I just right click on the title bar of the program and go to remember, select restart application on login.
I want all my gimp windows to move together, right click title bar, go to groups menu and create a new group, don't want to have to do that every time, remember->group. I setup my own quick scripts to do various commands, throw them in my menu, and there I have it, left click on the desktop and I'm running anything I want. (This is my one complaint about enlightenment, that you have to restart enlightenment to get a menu change). the tooltips are great for users new to E, and the built in documentation is quite good as well.
eye candy? E's got it, snapshots of all my windows when I minimize them, or on on the pager. Ever seen the ripples effect? I like to use a wallpaper with a beach in the background and the ocean in the foreground, turn on ripples and you're at the beach. Mac OS X doesn't touch it with it's wimpy little mouseover growing icons. BTW, what's the deal with Mac OS? Is blue the only color theme you can get on the incredibly beautiful OS? Or does everyone just stick with it?
If you're a linux/BSD user and you're comfortable with the command line, and willing to invest an hour or so setting up your UI give enlightenment a serious look.
My Linux Command of the Day site : LCOD
Yes, keep it like Aqua.
The big Desktops out there Windows, Classic Mac, Aqua, KDE, Gnome - of them the only two IMHO that aren't configurable to the point a user gets in trouble are Classic Mac and Aqua.
Classic Mac is a little too static, I much prefer Aqua to anything else.
It's open to tweaking if the inner geek wants to tweak it, but for the normal user/student/professional it's just right. A user can fart around with things in the Dock to the point where they think they are really making themselves a custom computer and they don't crap up the desktop with icons.
They can't stretch out the Dock and make it take up the screen like one can with the Start bar in Windows, nor can they accidently click and move the mouse and have the bar magically go to a side or the top.
Apple did some...dumb things with Aqua as Jef Rankin has pointed out, but for the most part it's the least shitty Desktop out there.
Come on, guys, it's nice that Gnome and KDE bring a Windows/Macintosh-like desktop to Linux--lots of Windows refugees will be reasonably happy about that. It's also nice that some egregious usability problems, present in earlier desktops, have been fixed. But let's not pretend that there is anything fundamental being done here other than decent software engineering and avoidance of basic usability blunders.
To do substantially better, we will have to jettison the current straight-jacket of separate C/C++ applications and move to entirely new software architectures. And then, the distinction between "configurability" and "programming", between "user" and "programmer" will pretty much disappear.
Maybe we need more examples, but it's not only about keyboard shortcuts. That's a simple example to give, but not the whole story.
Examples of configurable things that can impact documentation of a product are window managers / behaviours, configuring "single click / double click" functionality, skins, etc.
Imagine you change to a look and feel where buttons are triangles. But in an application, the triangle shape represents some "state" or "status" information. Now the super customizable look & feel clashes with your application.
There are much better examples of this, but it's way too late to think of many. The point is, I'm not only talking about shortcuts, but UI configurability in general.
- sigs are for wimps.
Since when does "flexible and configurable" have to be "bloated and difficult to use"?
Here's a hint: Stop tossing us unnecessary crap like network configuration tools for Desktop Environment A, B, and C. Stop giving us "wizards".
I keep seeing the argument that we need to make all of this easy enough for your grandparents to use, usually citing Windows as a basis for comparison.
Bzzt. Keep friggin' dreaming. My grandparents and my aunt both use Windows, and they still can't figure even half of it out. It doesn't matter what version; people who aren't tuned in to computers are either going to get it or they won't. No amount of helping them along or gentle pushes is going to change that. If someone has the drive to learn, they will. Our job, as users and developers, is to try and keep things flexible and useable with a minimum number of casualties. So what if my 86 year old grandfather isn't using Linux? Concentrate on the people who've converted from Windows seeking a better alternative. Worry about your existing and long-time users. If you alienate these people, you've lost already, and by that time, your grandparents won't give a shit and neither will anyone else.
Some of you are probably thinking, "Yeah, right on!" Here's where i'll probably piss you off, if I haven't already (though I have a feeling many of you already think i'm rambling about nothing).
Desktops need to be attractive, at least to an extent. My thought is, if i'm going to be staring at something for hours on end, I don't want it to look like a remnant of a black plague victim. It doesn't have to look like some kind of weird coloring book gone awry (*cough*longhorn*cough), but it does have to look nice enough that i'm not gouging my eyes out. And really, is this so difficult to do without bogging down system resources? Think about it.
To keep things minimal but customizable, allow the user to change the colors, fonts, background, window borders; the basics, so to speak. Allow the use of gradients so things are a little easier on the eyes, and allow anti-aliasing control. A small bit of code will take care of transparency control for the applications menu, and the file manager and taskbar can be left to third-party applications and/or plugins. If you want to attract the more "non-geek" audience, offer up a package that has all of that stuff pre-built in as a bundle, so they don't have to do any footwork hunting for new capabilities.
And for chrissakes, stop with the ugly application interfaces. IRIX, Solaris, etc. are a good example of what i'm talking about, but there are *many* on Linux/BSD/etc. A lot of people could take a nod from some of the apps out there for QNX. Nice looking, but very clean, well-laid out, and uncluttered. In particular, I like phirc, but even if you don't like that specific look, I think it gets across what i'm talking about, if only a little. Better still, stop offering applications that are tied to ONE desktop. This whole "applications for Gnome" and "applications for KDE" thing is bullshit.
We've already got most of this with window managers like Blackbox, Fluxbox, Waimea, etc. In some cases, things are only halfway where they should be (in my eyes, anyway), in others, they fall very short. However, I still have to ask myself, with almost every desktop i've used, "what the hell was the developer thinking?"
I ask this even more with 99% of the applications i've used.
So perhaps the question shouldn't be about desktops being bloated so much as software in general, and the design problems that consistently plague them? Just a thought.
I think if I wanted some bozo who thought he knew better than I did how I like to work dictate to me how I should work, I would be using Windows right now, not Linux.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
It is not up to a Sun usability expert [to decide] what the best user interface is. It is up to the user.
No NO no NO NO ! Users do not know anything about what makes an interface tick!
Painting your car in stripes, adding fake exhaust pipes, Wunderbaums and antennae does NOT make it faster or easier to drive. Yet some people believe it does. They are called Rice Boys.
In my experience, cars that have been designed by engineers and usability people (from Lexus, Mercedes, what have you) are actually easier, safer and more enjoyable to drive than a Rice Boy Honda. These designers have spent decades on studying users and their habits. They are paid well for ensuring that all the buttons and controls you need are within an inch of your fingertips, and those you don't need are further away, but still within reach. These cars are also more expensive, but you get what you pay for. If your job is to drive a car for eight hours a day, you'd better get the most well-designed car you can afford; the choice between a Rice Boy Honda and a Mercedes should not be hard.
In the same way, if your job is to work with a computer for eight, ten or twelve hours a day, I'd expect you to get the best user interface you can afford. Anything else is plain stupid. How can you seriously believe that painting your user interface in stripes and adding blinken lichts and tons of eye candy would make it any faster, easier or more enjoyable to use?
Several years ago, Steve Jobs was heavily criticized for his decision to make the Mac OS X "Aqua" user interface look nice. Mac users thought that if Apple engineers spend their time on creating lickable buttons, they will forget about the usability. Their doubts were well founded, but luckily turned out to be unnecessary. The Mac OS X UI is a joy to use because of the underlying consistency, not because of the overlay of lickable buttons.
Until the KDE developers grasp that, there will be no Linux on the desktop.
--Bud
"highly configurable" and "less is more"? If you ask me, "highly configurable" by definition, incorporates "less is more". Or else it wouldn't be highly configurable...
Heh, on a side note I find it Ironic: OSes you deem bloated and "highly configurable" I have actually used the term "Less is MORE" when describing. Like OSX, even in it's simplest state, it uses MORE processor cycles looking pretty than I would ever want my machine using. At a conference I ran a TOP under OSX and watched as I simply drug a window around; it ate 85-90% of the CPU!
Less can definitely still be way too much!
I use XP at work which I deem "highly configurable" because I run it bare, looking indistinguishable from NT4.
The default Gnome2.2 install is very simple and straight-forward, Keeping It Simple is a lesson well-learned, but KDE has it's heavily intergrated desktop that tends to attract Win32-users some more. IMHO, the people trying out linux on their own now are people fed up with MS, but want to still have the idea of control over their system. People just wanting the computer to get things done should feel more at home with Gnome2. But then again, i'm a gtk-fanatic ;)
However, both these desktops need a decent amount of RAM, and for 64mb and less systems icewm does a reasonable job. Would be interested in peoples experience with XFCE4, with it's CDE-look it seems easier to learn for new users (just that i can't get used to it) and it's more attractive than icewm. Rox is great, but their program-install-method is a bit unconventional. A pity, as it's desktop is great (and gtk2 :o)
This sig is intentionally left blank
Sadly, I wasn't.
Consider this:
- How much time do you actually spend setting up your desktop/preferences/themes/etc... If you're like me, once in the beginning, and very occasionaly a little tweak.
- If you take the previous point into account, don't you agree that these settings should not clutter up your UI, and be stashed away somewhere?
- The more choices are on the screen at any given time, the more time you loose making up your mind. You don't need the distraction of having to deal with prefs when working on something.
So, I personally generally like them "invisible" - give me good defaults, and no boatloads of pref applets. Gnome2.2 does this pretty well imho.
Now when I DO want to change something, I would be very annoyed if I wasn't able to. However, I think most people that want to change their settings are a bit more advanced (caveat: for this premise to be true you better have to have good defaults). I very much doubt that these advanced users (what mosfet refers to as the userbase that want their prefs) can't handle changing the settings in a gconf-like registry. After all, you don't need to do it that often.
If changing a certain setting in Gnome becomes very popular, someone will write a little frontend for it, which over time gets integrated in Gnome proper I suppose - that's what happens if there's enough demand.
Bottom line: make customizing possible, but resist exposing the prefs in the UI when it doesn't make sense to. The newbies and experienced users get something with good defaults that they can use right away, the experienced users additionally have the option of diving into gconf-editor when there's no pref applet for what they want. Since they do this really rarely it shouldn't be a problem, and it's a bunch of clutter, implementation work and testing that's avoided.
That way everyone's happy. Newbies, experienced users, and the developers/designers that actually have to implement and test the little UI's that end up everywhere and untested because it's such an obscure pref very few people use it.
Of course this only works if Gnome does actually expose the needed prefs through gconf - but since I've been using Gnome2(.2) I haven't found one I needed or wanted that wasn't there yet, so I suppose for this user they're doing a good job.
Configurability YES. Clutter NO.
Most non-technical users don't configure anything. They just don't see the need. If it works, why change it? Witness the enormous number of Windows users who have MSN as their IE homepage, who have Tahoma (or Arial for older Windows versions) as font, and who have the standard icky-turquoise, blue, or Teletubbyland backgrounds.
Hence, as long as the defaults are right, there's no great need to spend months umming and ahhing over just how configurable the interface should be, because most of your users won't even bother looking for the controls, they'll just take what they're given. Let's call these people the appliance users, because they tend to treat a computer as a simple appliance to get a few simple tasks done, and outside of doing those tasks they tend not to play much (apart from Solitaire and Minesweeper!). Some of these people are probably better off with a simple appliance-like interface like OEone, rather than a classical WIMP interface. Altogether, the appliance users are maybe 85% of all computer users, possibly more.
On the other hand, it seems as though technically-minded users prefer greater configurability rather than less. They do not mind spending half a day setting up their work environment, because they feel it gives them extra comfort and productivity in the long run, or simply because 'it's cool to make things work the way I want them to'. Let's call them power users, because frankly, that's what they are. This group is somewhere between 5-10% of all computer users, but are by far the most influential on the purchasing decisions of others because of their knowledge about computers.
Then there is a third large group, who sit somewhere in the middle. This group looks for a modicum of flexibility but also looks for a sane set of defaults, enough customizability to make a GUI their own but also to have an environment which 'just works' to get on with the things that they need to do. Let's call these people the 'happy medium' users. These users probably make up somewhere between 5-10% of all computer users, a similar figure to the power users. Apple specializes in catering to this group of users, and probably has a hold on half the users that belong to this group. With MacOS X, Apple have begun to branch out into catering for power users too.
This is what I don't understand about Gnome 2's change in direction: all the major GUIs make an effort to satisfy the applicance users simply by having an initial interface that's not too overwhelming and by having a sound set of defaults. Linux GUIs have made great strides towards satisfying this group in the last year or two - I think there's not much to choose between KDE and Gnome for this group, to be honest. Linux GUIs have, previously, always been good at satisfying the power users. However, Gnome 2 appears to have all but dropped support for power users in favour of catering for 'happy medium' users.
This doesn't make good strategic sense. They have dropped support for one group (power users) in favour of another group, less influential on computing purchasing decisions ('happy medium' users) of approximately the same size. They haven't gained any numbers in doing so, but instead have upset and annoyed a lot of their existing users, most of whom were influential 'power users'.
And why have Gnome done this? Sadly I think it is because their usability team is in awe (for evidence, see for example the essentially pointless button order switch to copy Apple's way of doing it) of what Apple has done with their GUI but don't understand that Apple is a niche player with a GUI that is heavily adapted towards their target market - the 'happy medium' user.
This is why I cringe whenever I see usability engineers talking about Apple all the time. Sure, MacOS has a nice GUI, but without understanding the reasons why Apple took the decisions which make it a nice GUI and the context in which those decisions were taken, you have learnt very little about it at all.
Until KDE or Gnome gets easier to install and setup, I don't have a choice but to continue to use Windows on the desktop. I know lots of you will say "Yea, but its easy, just do this...." but thats not the point. I get paid to make the company money while reducing costs, period. Since I am very familiar with Linux, and have run it on servers for years, I am a perfect candidate to switch once it is more cost effective. Because I am a bonified capitolist, I'm not interested in changing from MS to OSS purely for political reasons. It has to be for financial reasons. I don't mind learning how to setup Apache, sendmail, ftpd and other daemons that are directly related to generating sales, but I don't have the time or inclination to become an expert on setting up KDE, when I can just pop a copy of winblozes on our staff's computers.
Right now, it would cost me more to install a free OS, train, configure and maintain it, than to just use Windows to begin with. We do use Star Office instead of MS Office on most boxes that need it, saving us a wad now. That was an easy transition. We have switched most of the servers over to Linux servers, because they offer better performance on lower end machines, allowing us to recycle machines effectively. The problem isn't the Linux kernel, or supporting programs. The problem is the GUI. Since we don't use the GUI on servers, its not relevent. Since the users depend on the GUI on the desktop, it is very relevent.
Eventually, Linux will be more cost effective, and I will be the first to change every machine. Once the GUI doesn't have 1000 options to dig through and the applications don't all work with different hotkeys, that will be the time to switch. And while I am not a MS fan, the fact is they make a pretty damn good GUI. Give me a bonified Windows 95 (not 98+) interface on a Linux kernel, not just one that kinda looks like it, but one that WORKS like it, and I will give you a wad of cash happily.
Tequila: It's not just for breakfast anymore!
Yes, but why is it so necessary for Linux to take over the world? We have thousands of pieces of software, an extremely active user community, and we crank out absolutely fantastic stuff -- except, of course, the developers who are hell bent on trying to reach that 95%. That stuff, IMHO, is bloated, buggy, and derivative. And I think I know why.
This is one of the secrets of interface design, listen carefully: everyone is right.
I have been working on a next-gen OS user interface for about two years in my spare time. Some of you might remember a posting from a week or so ago; I asked what a UI designer could do to make some positive contributions to an Open Source project (and I got some great answers). Now, I'm going to ask for some more advice, and hope that this story isn't so far down in the queue that it gets overshadowed.
First some backstory.
This interface I've designed works on two guiding principles. The first being that users no longer need the desktop metaphor. It does away with it completely. The second principle involves chaging how you work by tracking different paths of behaviour on the part of the user. For instance, the OS tracks a History of Everything. If you've ever used Photoshop's History palette, you have an inkling of what I'm talking about. You always have available to you a branching diagram of where you've been and what you've done, into the past (to a certain extent), and have the ability to change your path or backtrack and try a new method.
I've also made extensive use of modern computing interface ideas. You still wave a pointer around using the mouse, and control things with the keyboard, as there is a certain amount of knowledge that cannot really be 'undone' in the typical user's mind. This is not a bad thing, but it does make it more difficult to truly break new ground. One instance in my project is the use of GUI Windows - I've basically done away with them in favour of Pie Menus. Window-pane type objects still exist when appropriate, but generally are reserved for Applications (another paradigm that is necessary out of pure economics).
Anyways, I don't want to give away a whole lot here yet as I'm still finishing it. It's in the form of a Flash projector that you can run full-screen to get an idea of what I'm talking about.
Now, my question (still with me?)... do you, Slashdotters, think that you would truly be willing to 'put up' with a radically new interface paradigm, if you thought it was worthwhile? I know the question sounds a bit spurious, "of course I'll use it if its better". But you need to think. The very limited testing I've done with a small group of people has had great feedback, but also great growing pains. The grip that your UI habits have on you are incredibly strong. The vast majority of frustration amongst users occurs when they become accustomed and familiar with a particular function, and then it changes on them. Even if the change is better, it is fequently painful for the user -- even to the point where they will discount the experience entirely as being 'not right'.
Of course, my project could just be an abject failure so far. :) But I don't think so. Personally, i believe that using a computer should be like playing a piano. The information should just glide, enabling inprovisation, suggesting alternatives, and generally a whole lot of fun. Think Minority Report. Didn't you just giggle when you saw that interface?
Anyways, enough gibberish. Slashdot, your thoughts and suggestions are much appreciated, as I am basically targeting this UI initially as a windowmanager replacement for one of the Linux distros and possibly OS X... and moreover, I am targeting this UI at YOU.
Thanks.
If Jesus wants me it knows where to find me.
I'm sure this won't get noticed and I'll bet I'm repeating something else, but here's some more gas on the fire:
Put as many options as you possibly can in there. And then some. Let the user custimize his system to his personal tastes so that when he clicks "Login" he feels at home.
On the other hand, to reduce system bloat, only install/run/use good defaults. I wouldn't mind the features of Windows if they didn't decide to turn them all on by default, and the same goes for other OSes as well.
The idea that you can't have many options and little bloat is a myth. Good defaults make it possible, and all developers should understand this.
~Dalcius
Rome wasn't burnt in a day.
Something that never ceases to amaze me, in my decade of using both Windows and various Unices/Window Environments, is that even in the year 2003, cut-and-paste between apps in Unix is still spotty.