Posts RSS Comments RSS 405 Posts and 1,413 Comments till now

Archive for the 'KDE Dev Blog' Category

QOTD

Since I havn’t posted in a while, a quick QOTD:

kawakokappa (10:55:29 AM): could you imagine reproducing a series of steps with half of them missing?

seele varcuzzo (10:56:15 AM): no, and youre going to make me core dump if you make me

My New Year’s TODO List — Everyone else has one

Oh hell.. why not. Maybe if I say I’m going to do something on public forum, I’ll actually get it done Smiling

Of course, I shouldn’t give myself the entire year to do some of these things, so maybe I should set an expiration on each item.

Put up the KDE Usability Project tests and reports I gathered in December

I think December was a month off for everyone. I did get a little work done here and there, but one thing I started and didn’t get a chance to finish was reorganization of usability.kde.org. Many of you provided me documents or links to usability tests and reports from 2005, I just need to put them up.

Let’s try to do this (or at least get started putting documents up) by the end of January

Start organizing and writing conference submissions now

Alas, I think there were 6 conferences I wanted to write submissions for and I only got to two of them. Part of the problem was lack of time, and lack of time yielded the problem of lack of material composed, and lack of material composed yielded the problem of lack of submission. I need to plan and manage my time better.

Start scanning deadlines and planning reports now. Annual conferences are typically held around the same time of the year with the same deadlines, so I should know most of them by now Sticking out tongue

Start gathering and organizing tests, references, notes, etc. for my thesis

Although my thesis is probably another year away, I seriously doubt three or four months will be enough time to test and analyze data, collect and evaluate references, and write a 50-100+ page graduate thesis. I’m in the data everyday anyway, so I might as well start taking notes.

This doesn’t have a solid expiration, but I should start as soon as tomorrow with bookmarking possible references and thinking about user test design.

Get back in to KDE-Edu

The Edutainment Project was one of the first projects I got involved with when I joined the KDE development community. Sporadically over the past year or so I provided them with some feedback about their interfaces and a few reports. They are a wonderful group to work with and very welcome to feedback which is going to help improve children’s success and acceptance of the software.

Ideally, I would like to have another interface and contextual evaluation done by the end of March.

…and then there’s the HIG

Poor El, I think she’s done the most work on the HIG without much help (from me included). I wish I had a solution for the lack of participation. I thought maybe putting it on a wiki and making it more accessible for people to edit would help — I think I edited it for about a month before I stopped. We really need to get a move on the thing, at least get a draft out the door by the end of the year.

We need to make some serious progress in the next 6 months. In particular I will take responsibility for the Toolbars, Menus, and Labeling sections, and try to have at least debatable information by the end of March with a preliminary draft by the end of June.

Overall, I think this is a pretty ambitious list of things to get done this year (mostly in the first half). Cheers to motivation!

Contextualizing Shortcuts and Separating Man from Machine

One month ago I presented some ideas for an application repository. This interface would give users an unrestrictive way to search and explore software installed on their system within several contexts. The system is one part of a response to dissastisfaction with the KMenu. The other parts of my solution include an interface to quickly launch applications and a “smart” system to help the user relate data and applications together as tasks.

Here is part 2: The Application Launch Menu (including contexualization)

Hundreds of applications could be installed on a system, but only a small percentage of them are actually used. The KMenu is bulky and slow to navigate through for finding an application you know and use often. Moderate and advanced users who are more familiar and comfortable with the system may create more easily accessed shortcuts, however over time they may collect and become clutter. How can we fix this?

Well first off, just about everything is in the KMenu. Software we use, software we dont use, software we launch from documents instead of shortcuts, software we didnt know was even installed… its a lot of “stuff”. Although we may create shortcuts on our desktop or use the CLI to quickly launch known applications, at some point we still resort to browsing through it to find something we havnt used in a while or ever. The application index, as previously mentioned, provides and easier and more intuitive interface to facilitate our browsing and searching. That helps fix the times we want to discover software.

What about the software we already know and the documents we open often and treat as applications? The launch interface should help curb the desktop clutter we resorted to when the KMenu was too much for the job.

But first, let’s define a context.

Currently the KMenu has no context. It is a one-stop-shop for system configuration, session control, application shortcuts, searching… everything! Part of the difficulty it has in its organization and information visualization lies in the lack of context. Since we dont separate user applications from system applications, we have to create a hierarchy to define that. Since we dont have user preferences or meta data or contextual information, we try to guess categories and labels the user will find intuitive. By the time we actually get to the software, there are so many hoops the user has gone through its a suprise they havnt forgotten what they were looking for.

Tasks related to interacting with user information such as documents, email, and images are very user-centric. User’s manipulate their information with use of tools which can manipulate them.

Tasks related to things such as hardware configuration, changing backgrounds, and screen resolution are
machine-centric. They effect how the system looks, behaves, and reacts to the user. It doesn’t effect the user’s data. Changing the widget theme could be a goal of the user but the machine is what is changed, not the user’s documents.

“But what about the grey area of sysadmins who regularly edit config files by hand?” Then those files become information for those users, and the applications they use to manipulate them are in a user context. Monitoring network traffic does not effect the users data and is a reflection of the machine. Tasks such as viewing apache logs or editing configuration files create a user (not machine) context for those system files and it becomes user information.

Provided is a mockup of what the user’s menu could look like:

user info context menu

User’s Shortcuts

Similar to the frequently used programs in the Windows Start Menu, the left half of the menu (column closest to the mouse) is a collection of shortcuts the user can drag and drop and rearrange in whatever order they want. If what the user is looking for is not in their shortcut list (or contextual menus I describe in a bit), they may browse applications (a link to the application index is below the list of links) or directly search for it using the name or a description (with the search bar at the top of the menu).

Users expect effort to be required while browsing, so a link to the application index where they start from the beginning will suffice. However, if the user had an idea of what they want, they are less forgiving of the effort required. The search bar can pass the query to the application index and present the user with the results page. That way, there is one action necessary to get a result yeilded in a short amount of time. If the query was sufficient, their target item should be available in the results. If they need help or to refine their search, query help and lower rated hits could be suggested.

‘Tasks’ and Smart-menus

To the right of the user’s favorites are a series of contextual menus, user- and system-defined. This panel contains collections of files (applications, contacts, and documents) which relate to each other and are often accessed together. These menus can act as shortcuts to contexts greater than one or two files.

Creating “Tasks”

With these menus, users will be able to create custom “tasks”, documents which are frequently needed in order to complete a goal. There could also possibly be a button which will “open all files” to provide a one click way to begin a task. Each item is also clickable to be able to open individual items.

Panel “Buttons”

You may have seem this panel design before, including Microsoft Outlook. These types of button-menu interfaces work well to create a context based on a descriptive label. They have tested well qualitativly (acceptance/satisfaction) and quantitativly (performance/comprehension) in usability tests. From a design perspective, they are a good way to provide additional space while preserving context and understanding of the information.

System-defined Menus

The smart-menus will be described in more detail in my next installment. Basically, the user will be able to create ’smart’ filters to generate automatically updating, yet somewhat bounded lists of their information. Examples include “Recently Installed Applications” or “Files opened with Kate in the past 48 hours”.

I realise now I should have also created a ‘machine’ system menu to help you visualize the different contexts. It would be fairly similar with the ability to create ‘tasks’ such as ‘website administration’ or ‘review and edit user accounts’. User your imagination and if you think of a frequent scenario that could be sticky, send me a mail.

Next time I will go in to more detail about the information itself and some of the mechanisms we could use to help create better organization, labelling, “smart” filters to help users create tasks, file tagging and meta contet, and all that good stuff. Knowing how the information works together with the system for the user will help bring the application index and the launch menus together for a solution which could ultimatly replace the KMenu.

No More Noise

Many of you have probably seen or read some of the emails being posted on the OSDL DA mailing list. Theyve been on slashdot, blogs, and forwarded to other mailing lists.. but what have they accomplished?

Nothing.

Thats not to say nothing important gets discussed on the mailing list. After the meeting it seemed as if people were getting organized and starting to discuss and solve problems. Barely two weeks later, we have cross postings and flaming from seemingly professional contributers. People who dont know the meaning of the word are bashing ‘Usability’ and contradicting themselves in the next line. Gnome and KDE attack and defend their software through the guise of their sponsors. People are yelling and spamming and arguing for the sake of such, and original comments are getting lost.

Professionals eh? Usually that requires some degree of professionalism.

The list has turned in to a match between who has the biggest and loudest mouth, waving their software around as if they were comparing penis size.

Really, I have better things to do with my time. I can’t justify pouring through 50 emails a day just to find one intelligent message to comment on. Not all of us get paid to do this. Not all of us have jobs which encourage us to read mailing lists and participate in the community for 8-10 hours a day. So when we volunteer our time and sanity, we do it out of love for OSS with pie in the sky ideals for making the world a better place. Its just not worth me getting stressed out and upset about something that is supposed to be enjoyable. Thats what my job is for.

I care about KDE, I care about usability, and I care about the OSS community. If I didnt care so much I wouldnt use what little vacation I have to go to meetings and give presentations. I wouldnt spend my weekends and evenings answering emails, setting up calls, and reviewing interfaces. I dont care about getting paid or popularity or how many articles I get mentioned in. I want to help give people an affordable, comparable, and usable alternative to the overprices operating systems which have taken over the world. I want to give people a choice.

But right now, I’m going to sit in my corner, read and write papers, talk to my friends in the lounge, and continue giving willing developers interface usability feedback. Sure, we need people to participate in cross-project initiatives to fill some of the gaps the community is challenged with, but its not going to be me.

The OSDL desktop architects group is an important one, but until people grow up and get organized I’m withdrawing my participation. Someone else can filter noise all day.

/rant

Cleaning House and Freshening Up @ Usability.KDE.org

i spent a part of this weekend working on the kde usability website. unfortunatly it doesnt get updated very often, and considering we have dated ‘recent news’ on our home page.. the content looks quite dated.

anyway, some of the things i am working on is to improve the site as a public portal for people interested in the project, developers looking for usability information,and press looking for information about the kde usability project. there arnt many examples of our work on the site, and finding informatino about the work we *have* done is a bit of a chore. most of it is hosted on openusability, but there are many reports and tests which have been done outside of the core crew.

having this collection of recent work will act as a good reference for developers, provide a public image for kde usability, give other usabiltiy engineers a taste of what kind of work we do, and be a good place for current usability engineers to publish their work and get feedback. there has been a ton of work done in the past year, so lets show it to the world.

although there will be some restructuring, unless you compare the two site you wont notice much of a cosmetic change. im slowly swapping out content so there arnt any holes or broken links, so you might not notice a difference at all until you look for old or new information. ive surfaced some important information pages from the hierarchy to make them more visible and accessible from the top level and added some usability resources, articles, and links. the most of the content and work will be with the usability reports of which i havnt started.

last week i put out a call for usability reports to create a forum for our work. el was wonderful enough to send me some of the work shes done which isnt strictly on openusability. even if its a link to an external report or website or blog entry, pass it on to the mailing list! [kde-usability at kde dot org].

lastly, i would like to put some bio information on the page to those willing to participate. almost every kde project has information about its developers, and for the usabiltiy project this is important! working with developers requires creating a relationship to get to know the developers and project better, and a good way to start is introducing yourself on the website. if you would like to be listed on usability.kde.org and have contributed to kde usability in the past year, please forward your information to the mailing list [kde-usability at kde dot org].

« Prev - Next »