KDE 4.2 usability issues – Part 1

I usually use GNOME and am quite happy with it. Recently I decided to try KDE 4.2 because some GNOME applications are lacking features I need. KDE 4.2 makes a nice impression, however KDE is lacking very much behind GNOME in the usability section. In this blog entry I wrote down what annoys me most about KDE 4.2 and how I think it should be fixed. I mainly wrote this article to suggest improvements to the KDE developers and not to make KDE look bad.

For testing I used Kubuntu 9.04 Alpha and its KDE 4.2.1 packages. I guess most issues apply to KDE itself, however some may originate from Kubuntu’s packaging. UPDATE: All opinions represent my personal view and as I’m no usability expert one might argue how significant my opinion is.  I wrote this article  mainly to show KDE developers what a normal user with no tech background would expect from his desktop environment. While my propositions certainly need to be discussed I believe that my critique is appropriate in most cases.

Kickoff menu (KDE application launcher)

kickoff

KDE’s application launcher Kickoff: Note the superfluous Applications label over System Settings. The hard disk Windows_Vista is missing in Places althorugh it’s shown in Dolphin.

places

Dolphin Places Bar: All disks are shown. However the language is German althorugh I switched KDE’s language to English.

Let’s have a look at the Kickoff menu. The first thing I noticed about it is that the tabs on the bottom do not “feel” right. If you hover about a clickable item in KDE the item usually changes slightly to indicate that it is clickable. For example the icons in the panel become brighter. The tabs in the Kickoff menu miss this effect and therfore it suggests that they are not clickable.

More things I don’t like:

  • The “Applications” label next to “System Settings” in the Computer tab is irritating, because System Settings is not really an application. The label should be removed.
  • Notice that my other hard drive “Windows_Vista” is missing in the Kickoff menu. This also applies to USB drives. I like the idea of places in the Kickoff menu but showing only some places is quite useless.
  • The applications list requires too many mouse clicks. When you select a category the category list is replaced with the contents of the category. To see the category list again you have to click on the left arrow. Far too many clicks if you try to find something. I would recommend just extending the menu to the right when the user selects a category, leaving the category list visible. In times of default screen widths of 1024+ this is really no issue, besides that, who works with other applications while the launcher is open? UPDATE: KDE developers suggested that extending the menu to the right would require too much mouse movement. As this is a thing of personal preference I hope that an option will be added.

    The icons of the application categories are too big and wasting much space, if they would be smaller scrolling could be avoided.

My other wishlist items for the Kickoff menu:

  • Adding applications to Favorites should be easier. For example place a clickable star next to the applications name when the user is hovering over it. The right click context menu should be removed, because users do not expect to find a context menu in another menu. “Add to panel” and “add to desktop” can be done using drag and drop.

    kfav

    My suggestion for handling favorites.

  • An option to put the five tabs (Favorites, Applications, Computer, Recently Used, Leave) of the kickoff menu directly into the panel. This would save a lot of clicks.

Desktop

I generally like Plasma, especially since putting icons back on the desktop was reintroduced. However there are some (mainly preferences) issues left:

  • desk11

    Desktop icon: The (+) button from Dolphin is missing while hovering over it.

    Icons on the desktop (or in folder views) behave slightly differently than in Dolphin. For example no (+) buttons appears while hovering over an item. Why is Dolphin’s folder viewer component not used for folder views? Consistency is very important from an usability point of view. UPDATE: Dolphin’s folder viewer seems not to be suited as a Plasma widget, mostly because of background and transparency issues. So I guess making the Plasma widget more like Dolphin is the best solution.

  • When right clicking on the desktop I notice that the context menu presents me two different settings: “Appearence settings” and “Folder View settings”. This may make sense from a technical point but is very confusing. Both preference dialogs should be merged.
  • Desktop Settings: The whole “Desktop Activity” section is useless. Please replace it with a simple checkbox “Allow icons on my desktop”. UPDATE: KDE developers pointed out that more desktop activities will be added in the future. However there should still be a label explaining what the choices do in normal user language.
    “New Theme…” should be called “Download Theme…”. The “Get New Wallpapers…” should be moved up to the Picture combobox and also be renamed to “Download Wallpapers….”. As the monitor on the right only shows the preview for Wallpapers it should be moved to the corresponding section.

  • Test Activity Settings: Besides its strange title it makes a good impression.

Dolphin (File manager)

Dolphin preferences: After clicking on “Use current location” Dolphin adds file:/// infront of a local path. “Use default location” should be replaced with a radio button and called “My home directory”.

Dolphin is a very good KDE application. However I am missing a decent file search function like that in Mac OS X Finder. Is this planned for KDE 4.3? I certainly hope so.

Clicking on “Network” in Places presents me with “Network Services”, “Samba Shares” and “Add Network Folder”. How is a user supposed to know what “Samba Shares” means? In my opinion the best solution is just display the scanned local network with different icons for different services, i.e. Windows logo for SMB, printer icon for IPP, router icon for UPNP,  disk icon for SFTP, terminal for SSH. Dolphin’s group mode could be enabled by default for that and would provide a good experience.

Besides that I found two very minor issues in the preferences dialog:

  • The General tab should be on top. (consistency!)
  • In the Startup tab Home Folder should be renamed to “Folder to show in new windows” and it should consist of two radio buttons: “My home folder” and “Custom folder” together with the location input textbox. Besides that the button “Use Current Location” appends “file:///” in front of the path which could be confusing. “Use Default Location” should be removed.

Konqueror (Web browser)

Konqueror should be retired or radically changed. It tries to combine too many tasks (file browsing, web viewing, file preview) in the same program and does nothing of them well. File browsing should clearly be removed as Dolphin has matured to a very good file manager.

Konqueror showing a PDF file: The toolbars are overloaded, the user has no clue what belongs to the browser and what to the PDF viewer.

File preview could still be useful while browsing the web, but please add a simple option to save the file you are currently viewing (toolbar icon!). Merged Okular and Konqueror toolbars are very confusing (happens when viewing PDFs with Konqueror), seperate them, i.e. put all Okular components in the area where the website would appear and add a yellow bar “This is a preview of PDF-Documentfilename.pdf <Save>” over it.

Konqueror’s worst part is its HTML rendering capabilities. Most Web 2.0 sites don’t work with KHTML (GMail, Google Calender, iGoogle to name a few). Please, please switch to WebKit by default. I know, many people don’t like Apple having control over KDE’s HTML component. But what’s so bad about it? Nearly all websites are tested with WebKit and it’s actively developed by many people. It also follows web standards and Qt already provides support for it. KDE can fork WebKit it if it does not like Apple’s decisions. UPDATE: Strictly speaking this is no usability but a technical issue, but most users just notice that Konqueror is not able to render their favorite web page.

Then there are a lot of things Konqueror has to learn from Firefox. First of all non intrusive questions for storing passwords. After that a nice bookmark system like in Firefox 3 would be nice. I especially like the combined bookmark/history search with page title display in the Firefox location bar. Then the default configuration should be less annoying, I mean the default warnings about cookies, SSL, etc. I suggest this should all be put in a security/privacy dialog that is displayed at first start and has a “Normal” and “Paranoid” preset.

Many people would suggest, that I should just use Firefox. But this is no solution because Firefox is a GNOME application and terribly integrated in KDE, i.e. open/save/print dialogs, file handling, etc. I would however be very happy with a Firefox KDE port to replace Konqueror. (possibly this is even the best solution when done right!)UPDATE: As Qt/KDE Firefox ports seem to die faster than they are created the probably most realistic option is to port Arora to KDE and replace Konqueror with it.

KDE 4.2 usability issues – Part 2

Okular (PDF/document viewer)

KDE

I really like Okular, it is part of the reason why I am trying KDE. I only have three small remarks about it:

  • The leftmost bar with “Contents”, “Thumbnails”, “Reviews”, “Bookmarks” is a little to big for my taste in the default setting. Why not rotate the labels and make the icons smaller? Just look at how it’s done in Amarok 2.0 with the the Collection, Internet, Playlists and Files panes.
  • Why is “Configure Backends…” a seperate menu entry in Settings? Please merge it into the options dialog.
  • The Editor settings in the options dialog should be removed and Okular should use the editor set in the global KDE preferences. UPDATE: I realize this can be useful if you want Okular to open your LaTeX source at the line you are currently viewing the resulting PDF. But more explainations for this settings and an option to use KDE’s default editor would certainly help.

Besides that small problems the Okular developers have really done a great job!

System Settings

This area really needs work! The first thing you notice is that System Settings are separted in General and Advanced. Generally this is no bad idea, but the way KDE does it is really confusing. Why ist Network Managment and Printer Configuration advanced stuff? Every user needs it.

The categorization and many item names are misleading. Some need merging. My proposition:

Look & Feel: Appearance, Desktop & Screensaver, Notifications & Sounds, Window Behavior, Accessibility
Personal: About Me, Regional & Language, Passwords (instead of KDE Wallet), Desktop Search, File Associations & Default Applications, Session & Services (merge Service Manager and Session Manager)
Hardware: Display, Keyboard & Mouse (merge with Input Actions), Sound (instead of Multimedia), Printers, Network & Internet (merge Network Settings and Network Managment), Power
System: Software, Fonts, Data & Time, Login Manager

Remove: Sharing (does actually nothing, could be added to About Me), Akonadi configuration (I really see no sense in configuring the path to a MySQL server, if some users need this please make it an external program to run from Konsole), Audio CDs (move into application that rips them), CDDB Retrieval (same as Audio CDs), Desktop Theme Details (add to Appearance), Digital Camera (should not be needed in times of plug and play), Hardware (has actually not much to do with real hardware, really nothing a user should change, the distribution should configure that, please make it an application to be run from the Konsole), KDE Resources (I don’t really understand that one, I supposed Akonadi was now in charge of calendars, addressbooks and such things, please remove it or explain what it does.)

The Advanced tab can therefore be completely removed.

UPDATE: After a long discussion on the KDE usability mailing list we came to the conclusion that the Advanced tab has its purpose but it really needs clean up, more explaining labels and a warning that users should not touch advanced options if they don’t have very special needs. In my opinion it should only be accessible via a shell command (to protect it and hide KDE’s not so nice parts) but others disagree.

I will now go through the most important settings.

Appearance

Generally all appearance panes (except Fonts and GTK Styles and Fonts) provide the ability to choose a theme. However this is done in very different fashions. Style and Windows provide a combobox but Colors and Splash Screen use a list with different preview locations. I suggest to change all panes to a layout similar to the Splash Screen pane. List on the left with buttons for theme installation under it, option tabs on the right with preview underneath visible from every tab.

 

Style

Remove Fine Tuning tab and merge it into first tab. Add tab for merged Desktop Theme Details.

Color

Okay!

Icons

Just merge Advanced into new layout.

Fonts and GTK Styles and Fonts

Should be moved to the bottom because they do not follow the layout of the other panes.

“Install scrollbar fix…” seems to be an ugly hack, is this really needed? I have never used it and my Firefox works fine. UPDATE: “Advanced” would be a proper place for such an option.

Windows

Rename to Window Borders. Merge Decoration Options and Buttons into new layout.

Splash Screen

Okay!

Emoticons

Okay!

Desktop & Screensaver

Please add the appearance settings from the Plasma desktop, i.e. right clicking on desktop->Appearance Settings….

Move Launch Feedback to Notifications & Sounds.

Furthermore the size and alignment of controls is inconsistent, for example compare size of “Number of Desktops” in Multiple Desktops and “Start automatically after” in Screen Saver.

 

Please add a new pane called Desktop Edges and combine the Screen Edges properties from Desktop Effects, Screen Saver and Window Behaviour. This would combine all the scattered “screen edges” options.

Ironically KDE provides use with an option to NOT use it’s own sound system.

Notifications & Sounds

Remove System Bell pane, instead add an option per event to ring the system bell.

Remove the tab “Player Settings”, the KDE notification system should always use the KDE sound system. What’s the sense of a common KDE soundsystem when nobody uses it?UPDATE: Another solution I’d be happy with is moving this setting to “Advanced” options.

 

Window Behavior

Window Behavior

Rename this to “General”. Move “Active Desktop Borders” to new Desktop Edges pane in Desktop & Screensaver.

Window Specific

Add an explanation what this pane does exactly.

About Me

Password & User Account

I would expect this to display my own addressbook card. What is SMTP server for? “At Password Prompt” really does not belong here, please put it into the Password settings.

Paths

Users would expect Desktop path in the Desktop & Screensaver pane. Autostart path should be moved to Session & Services.

Accessibility

The options “Use System bell whenever …” and “Use KDE’s system notification mechanism whenever …” should be removed and replaced with KDE notifications setup for that events. (after adding system beep as possible notification)

File Associations & Default Applications

Default Applications

Consistency should be improved, at the moment each default application pane uses a different mechanism to choose an application. Nearly same situation as in the Appearence settings. Why are no web browsers selectable?

File Associations

Okay!

Regional & Language

Country/Region & Language

It does not fit into the area and is displayed with a scrollbar (see screenshot!). If it really does not fit resizing the window would be acceptable but displaying a horizontal scrollbar for a panel with controls in it is the last thing a window should do. Besides that there are the usual inconsistencies (control width). Why does KDE use two completely different method for selecting “Country or region” and “Languages”? Just display both of them as lists.

Keyboard Layout

I would never expected to find that here. Please move/add it to “Keyboard & Mouse” settings. Keyboard layout is a property of the hardware not of the country you live in or the language you speak.

What is the “Disable Keyboard layouts” option for? Does my keyboard stop working when I select it? Perhaps you mean “Use system layout”? But how to set the system keyboard layout?

My keyboard layout is disabled, but I’m still writing this text! What does this option really do? Does an average user need it?

I stop here with my discussion of KDE’s system preferences. There a lot more issues there I haven’t discussed, but I hope I managed to mention the most important things.

UPDATE: I would like to point out that most developers of the preference panes did a good job. The inconsistencies are not a fault of the individual developers but merely a result of KDE’s decentralized development process. Nevertheless I hope that some UI guidelines get established and developers sit together to improve the overall “KDE preferences experience”.

Conclusion

None of the above issues makes KDE unusable. However together they really degrade the whole KDE experience. Even if users do not notice these problems consciously they have a strange feeling when working with KDE. They become unsure of what will happen when they perform certain actions. KDE makes users feel unsure. Most users I know who tried KDE went either back to GNOME or MS Windows, because they always had a subtle feeling of dislike for the interface.

KDE definitely has potential. Its main advantages over GNOME are its use of a modern programming language (C++) and a state of the art GUI toolkit (Qt). Now that Qt has been released under the LGPL we can expect that much commercial software will use it and therefore integrate well into the KDE desktop. The modular architecture (KParts) opens interesting possibilities not available in GNOME. In fact one can say that KDE is technically superior over GNOME in most areas.

Despite that nearly all distributions have dropped KDE as the default desktop and focus on GNOME although writing programs for it is quite difficult (using object oriented C hacks).  The GNOME developers focused on polishing and improving their user interface (please do not confuse user interface and usability with eye candy) instead of adding more and more (partly useless) features. UPDATE: In fact SUSE Linux Enterprise was the only distribution to drop KDE support, others used GNOME as their default desktop from the beginning.

I hope that KDE developers realize that they should focus on the overall user experience and stop implementing new features and eye candy for the next releases. UPDATE: I noticed that most problems apply to old KDE applications (these ported from KDE 3 or earlier), the newer ones seem to be designed with usability in mind (Dolphin, Konqueror, Gwenview). The KDE team seems to be on the right path but there are still many things to do. Now that KDE 4.2 is feature equivalent to KDE 3.5 I hope the developers will focus even more on fixing the usability problems.

Most issues do not require hard work but can probably be fixed in less than a month. Useless or very rarely used features should be removed or moved to the “Advanced” settings panel. All dialogs especially the preferences and system settings need some serious cleanup.

UPDATE: I wish to thank the KDE developers from the KDE usability mailing list for the fruitful discussion, their inputs on these problems(see archive for details) and their willingness to fix the mentioned issues. Realizing that KDE has come a long way since 3.5 I also wish to stress that this article should not be seen as a rant about KDE but a detailed listing of problems that need fixing from an end user point of view. As a blog is not an ideal place to discuss such matters I would be happy about a KDE usability wiki where users can upload screenshots of usability problems and post their opinion on how these issues should be fixed. I certainly plan to write another article about some KDE applications (e.g. KMail, Kalender, Kopete, KMix).

I am certain the KDE developers will be able to solve the usability issues and provide a seamless Linux desktop experience.