Human-Centered KDE
Open, Needs TriagePublic

Subscribers
Tokens
"Like" token, awarded by lephuong."Like" token, awarded by nikunjgoyal."Like" token, awarded by cuperino."Love" token, awarded by leonelle."Like" token, awarded by aronkvh."Love" token, awarded by hellokartikey."Like" token, awarded by niccolove."Love" token, awarded by martintorres."Love" token, awarded by fhek."Like" token, awarded by fusionfuture.
Assigned To
Authored By
cblack, Jun 19 2022

Description

tl;dr:

Actually seeing how people react to designs is one of the best tools for going above and beyond in designs simply guessing how they might react and having the presence or absence of complaints be the only feedback in regard to how effective a design is. The ultimate aim is establishing processees and tools for integrating actual people into the before-hitting-market design process rather than our idea of what actual people are like, that are accessible to people without needing a degree in psychology or the ability to convince the e.V. for funds for a professional and the ability thereafter to plan what the heck to do with those funds.

Motivation

Usability is one of the most important parts of any interface, to the extent that it has very strong repercussions on almost everything involved, ranging from as far as engagement and sales rates to the ability of disabled people to make use of an interface to longevity to public opinion to business adoption. Yet, the vast majority of people, including in KDE, don't really have a deep understanding of what usability is, what it does and doesn't impact, and more importantly, they aren't equipped with the tools to tackle it beyond their common sense and user complaints they hear.

The tools needed for a deeper understanding and handling of usability are often inaccessible to those without corporations willing to throw money at them for professional products or those without an exceptional abundance of personal free time and resources (and location), which makes integrating usability processes into a do-ocracy like KDE problematic, since there are only so many people with the latter, and fewer for the former, and yet still fewer with either that are able to put it to use for improving what we make in KDE.

This is ultimately the core thing this goal aims to tackle with help of the community: the inaccessibility of usability processes that can dramatically improve software to most of the KDE community.

This goal ties back to previous/current KDE goals, such as the Usability & Productivity initiative, the Consistency goal, among others. If those goals are improving a vehicle's engine, this goal is trying to get the vehicle a GPS.

Plan

The plan for improving KDE's overall maturity in usability stands on two pillars: organisational infrastructure and community.

The infrastructure here is both infrastructure in the technical and the human sense of the word: on one hand, yes, there is tech to be had, but there is also organisational infrastructure too.

On the technical side of things, this largely revolves around establishing tools for usability research. Many existing solutions for usability research are proprietary, making them a non-starter for communities established on ideals of openness, such as KDE.

Side Note For What "Usability Research" Means
"Research" in the context of usability or human-centered design isn't the hyper-formal concept of "research" in academia, at least not exclusively. The core concept of usability "research" is to see how something fares on actual people in a context that can provide more meaningful insights than displeased users in a forum, social media, or bug reporting sites, and can be anything from "simply sit and watch someone try and use something, taking notes on what's good and what's bad" to "use a type of specialised survey for seeing how people react to a particular thing" to actual academic-style research.

KDE is an ideal garden plot for cultivating new, open tools for usability (such as Polinpin), due to having both projects that have many low-hanging fruit for large improvements from even simple usability research techniques, and the established technical base that can create, maintain, and host (if needed) such tools to try them out on large projects. Flagship KDE products like Plasma and Krita have many opportunities for a mutually beneficial relationship between themselves and usability tools that can improve and be improved by experience gained from usage on real products.

Community

On the communal side of things, many segments of the overall KDE community are capable of directly contributing to the overall cause of usability with their unique skill sets; it is not simply limited to people who know how to get into end-user application code and make changes. The following is a list of examples of how:

Promo

As one of the few segments of KDE already directly and actively engaging with end users and forging communications with other communities, as well as spreading news far and wide, Promo plays a particularly important role in usability: their skill sets allow for developing in-house recruiting of people for usability studies, which is substantially more cost-effective than diverting e.V. funds to third-party recruiters, and substantially more effective at recruiting than "guerilla" techniques, letting usability studies become a tool in the community's toolbox, pushing overall software quality up, rather than an occasional splurge of luxury for something that we really want to be good.

Web

Like Promo, KDE's web folks are uniquely outward facing, and can help cast the recruitment net wider. Additionally, they can also help develop and maintain web-based research tools for usability, which make doing research that much easier.
Given the inherently dynamic natures of such applications, this is also a great opportunity to use non-static frameworks, which can attract new developers or give already-attracted-but-nothing-to-work-on developers an opportunity to come under the KDE umbrella with their uniquely web skill sets that may not be able to put them to use in our more standard fare native software or static sites.

Developers

On the end-user app side, developers are particularly empowered with the ability to make changes to the software based on guidelines and research to actually reap the benefits they can bring. They can also help to the cause of developing and maintaining native tools for usability, such as research-focused note-taking tools.

Other Communities

KDE doesn't exist in isolation, and the initiative of usability provides many concrete and tangible opportunities for KDE and other communities to come together and mutually improve each others' projects.

Some examples:

  • Comparative studies: Collaborate in joint with communities like GNOME, and kill two (or more!) birds with one stone to figure out how each other's software excels and where it can grow compared to the other, and how to exchange lessons learned to improve both
  • Cultivation of open source UX tools: One of the biggest blockers for many communities and organisations to improving their usability is the fact that many tools for the field are proprietary and expensive. The creation and promotion of these tools under the KDE umbrella will lift the ecosystem up at large, and not just KDE

Risks and needs

One of the biggest potential challenges is simply: old habits die hard. Usability processes are new to many people, and there's often a lot of misunderstanding of what they do and don't do (speaking from personal experience, where I've struggled to understand what something does and how to use it a lot, and subsequently I see others struggle in the exact same way I did when I try to share that knowledge with them), and any new tools and processes will need to get integrated into existing development habits.

As far as needs go, one of the biggest aims of this goal is to be self-sustainable: cultivating long-term infrastructure over using a temporary pile of e.V. funds to let third party organisations do a handful of things now, and then not mature as an organisation in any ways. All the things described in the goal can be achieved solely through already-established community labour and infrastructure. That being said, being able to pay professional organisations to do a few tasks could go into the scope of this goal, but I don't count it as an important or even a cherry-on-top thing.

Champion

Hi, I'm Niccolò Venerandi. I've been a Goal Champion for the past three years working on Consistency. The original goal proposal is from Janet, but she's currently not in the KDE community so I stepped in to make sure this goals gets a chance.

Interest

This section is intended for people other than the Champion to sign up and show support for the Goal.
If you are interested to actively join the effort and do the work, add your name below (this does not count as voting for the Goal):

cblack created this task.Jun 19 2022, 11:29 PM
fusionfuture added a subscriber: fusionfuture.
fhek awarded a token.Jun 20 2022, 6:54 AM

I am a bit confused by this "Human-Centered KDE" goal.

On the one hand it presents itself as trying to put more value on "human-centred design". Human-centered design is about community involvement in all stages of the process among other things. This is already a core pillar of the KDE community and front and centre in KDE's code of conduct. I would have assumed this goal was about guiding users to self-organise and contribute to design effectively.

On the other hand the goal constitutes that "the vast majority of people, including in KDE, don't really understand what usability is, what it does and doesn't impact, how to apply best practices to keep interfaces usable, the basics and importance of what usability research does for an interface, and other things.". This kind of sentence is the antithesis to human-centred design because it excludes people that are not "in the know" of being able to participate. It is however a popular stance among some schools of thought in design.

It is then explained that facilitating usability research is at the core of what this goal is trying to accomplish which also sounds to me like this is not about human-centred design and more about "experts" conducting studies and evaluating what usability changes should be implemented.

"One of the biggest potential challenges is simply: old habits die hard. People will need to get used to thinking about the end user and usability in more tangible ways" is implying that we haven't been trying to do this for many years even though the "Usability & Productivity" goal is being worked on since 2017.

Can you clarify how you plan to put usability research at the core of human-centred design and how this is different from what we have been doing?

I am kind of worried that this kind of focus on research will impede us when doing human-centred design in its original sense because empirical data tends to be understood as an objective source of truth while some people fail to realise the human aspect of it (like making mistakes in validity, reliability, objectivity, etc. in testing; many scientists being unable to identify wrong results from data; or applying results in wrong contexts).

niccolove updated the task description. (Show Details)Jun 20 2022, 5:22 PM
niccolove added a subscriber: niccolove.

On the one hand it presents itself as trying to put more value on "human-centred design". Human-centered design is about community involvement in all stages of the process among other things. This is already a core pillar of the KDE community and front and centre in KDE's code of conduct. I would have assumed this goal was about guiding users to self-organise and contribute to design effectively.

This seems to be confusion stemming from another meaning to "human centred design" that I wasn't aware of, and either way, debating about exactly what a title I thought of to be kinda catchy and Close Enough:tm: means will be kinda pointless, so yeah i'm going to not.

On the other hand the goal constitutes that "the vast majority of people, including in KDE, don't really understand what usability is, what it does and doesn't impact, how to apply best practices to keep interfaces usable, the basics and importance of what usability research does for an interface, and other things.". This kind of sentence is the antithesis to human-centred design because it excludes people that are not "in the know" of being able to participate. It is however a popular stance among some schools of thought in design

I don't really get how "there is a knowledge gap that I would like to see filled" is exclusionary in any way, other than that some people have more and others have less. The intended purpose is to help promote more knowledge of a "subject that seems close enough to common sense that most people don't really dive into the details but actually there's much to be learned" subject to everyone so that everyone can be better informed about this sort of stuff, not just designated experts.

It is then explained that facilitating usability research is at the core of what this goal is trying to accomplish which also sounds to me like this is not about human-centred design and more about "experts" conducting studies and evaluating what usability changes should be implemented.

If the most of the post being about promoting tools that make it easier for people that aren't part of a professional firm that can pay for expensive products to do user research (a fancy word for "seeing how it actually works on real people instead of assuming how it might work") and me explicitly saying that I don't see professional help being a component of this goal doesn't get the point that this is not about a designated group of Experts:tm: across, then honestly, I'm not sure what will. I may be having a bit of an overestimation moment though, so I will try and revise to better compensate for my nerdery on the topic.

Can you clarify how you plan to put usability research at the core of human-centred design and how this is different from what we have been doing?

yes

I am kind of worried that this kind of focus on research will impede us when doing human-centred design in its original sense because empirical data tends to be understood as an objective source of truth while some people fail to realise the human aspect of it (like making mistakes in validity, reliability, objectivity, etc. in testing; many scientists being unable to identify wrong results from data; or applying results in wrong contexts).

"Research" in a usability context is a different thing from "research" in an academic context. The primary thing is "see how actual humans react" rather than being super indirect academic-style for sake of producing The Perfect Data.

cblack updated the task description. (Show Details)Jun 21 2022, 3:06 AM
cblack updated the task description. (Show Details)Jun 21 2022, 3:08 AM
cblack updated the task description. (Show Details)

I'm not a fan of Steve Jobs but he had the right idea here I think:

“Some people say, "Give the customers what they want." But that's not my approach. Our job is to figure out what they're going to want before they do. I think Henry Ford once said, "If I'd asked customers what they wanted, they would have told me, 'A faster horse!'" People don't know what they want until you show it to them. That's why I never rely on market research. Our task is to read things that are not yet on the page.”

The good thing about an OSS projec is that its developers are also some of its most dedicated users. So developers should feel doubly comfortable stipulating what *they themselves want to use*, then asking the wider community for additional input. Gnome took took this to an extreme, I think to the point where even they even violated this principle (because how could anyone, even the developers, get by using mostly Gnome software?). But there should be some median between their way and KDE's "no user left behind" approach.

hellokartikey added a subscriber: hellokartikey.
tfella added a subscriber: tfella.Aug 4 2022, 2:45 PM

For clarity it should be mentioned here that the champion of this goal has left the community, so unless someone else picks it up, this goal is not actionable.

tynach added a subscriber: tynach.Aug 4 2022, 7:19 PM

I feel I should pitch in a little bit on this, because I have had some very frustrating moments with some KDE software that's been changed recently to be 'more user friendly'. I know this isn't exactly what the proposal is about, but I've seen the sorts of people who do promote this type of thing also making the same sorts of decisions in other software.

Sometimes, software is complicated because what it does is complicated. There's only so much you can do to simplify the workflow before further simplification backfires. Yes, it might look simpler and easier to digest to someone who sees it for the first time — which, incidentally, tends to be the focus of research that watches how people use software and measures usability — but becomes a hindrance to usability in the long run when a user has seen it many times already and just wants to be able to use it quickly and efficiently.

This goes beyond 'too many features, hide advanced ones behind an advanced panel'. For example, the new settings page for configuring KWin rules is much simpler and more consistent in design, and for adding one rule to a single program every so often will become significantly easier for people who are new to KDE. However, it is atrociously slow to add multiple rules to a single program window, because the subwindow for selecting a property to change completely closes after setting every single one. I've seen some people who even assume you can only set one per window type, which isn't true.

The new design has every feature the old design had, but it's significantly slower and more tedious to use than the old version. For anyone who makes frequent use of those settings, it's an absolute nightmare. The old design might have been uglier, more cluttered, and initially more confusing for new users... But it let you do a bunch of stuff all at once before closing, was still fairly consistent, and after a short while it was comfortable to work with.

The old design would not pass usability tests when sitting new users down in front of it, and the new design might... But usability tests like that are far from indicative of how software is actually used by people who frequently use it.

For clarity it should be mentioned here that the champion of this goal has left the community, so unless someone else picks it up, this goal is not actionable.

Indeed. Someone else will need to step up to be the champion of this goal before we can move it to the "Ready for voting" column.

because the subwindow for selecting a property to change completely closes after setting every single one

Thankfully that's like a one-line change. :) Feel free to propose it in the form of a merge request or a bug report.

tynach added a comment.EditedAug 12 2022, 10:16 PM

because the subwindow for selecting a property to change completely closes after setting every single one

Thankfully that's like a one-line change. :) Feel free to propose it in the form of a merge request or a bug report.

The subwindow in question acts as a drop-down list menu of properties. You click the property you want, the window disappears, and then you set the specifics for that property you just added.

The drop-down menu is implemented as a sub-window instead that covers everything else up so you only have a rough idea of what you've already done, the act of choosing which property to add was turned into a major step with its own dedicated subwindow (which cannot be moved because it's not really a window per se, just a UI element that covers almost everything up and darkens everything it doesn't), and that's not even the main thing I'm complaining about.

What I'm complaining about is the entire design of the new workflow, not a specific design choice with regards to one aspect of it. The entire fundamental idea behind how one uses the new UI is flawed. It was 'ugly' before having all of the properties visible and choosing which ones to apply by clicking a checkbox and changing values from several drop-down menus... But lets compare the workflows themselves:

  • Old way:
    1. Insert matching data (unless right-clicking a title bar and choosing 'Configure Special Application/Window Settings...'). This is all on one tab of the dialog box.
    2. Go to next tab.
    3. Click all the checkboxes for settings you want to control.
    4. Change all the drop-down parameters how you want, as well as any other settings for the relevant items.
    5. If any items weren't in that tab, go to the next tab and repeat steps 3 and 4.
  • New way:
    1. Fill in basic matching data. If you need to match by role, title, or hostname, that's now part of step 2.
    2. Add a property to change.
      1. Click 'Add Property...' to bring up the subwindow.
      2. Scroll through the list to the property you want, and click on a property to change, closing the subwindow.
      3. Change its drop-down property, as well as any other controls available to it.
    3. Repeat all of step 2 for every property.

Going by the numbers, that looks like '3 easy steps' until you realize one of those steps has 3 more steps in it, bringing the total to 5. So, on paper, the two seem just as easy, as both require the same number of steps.

However, consider how easy and quick it is to group a bunch of similar actions together. Clicking a bunch of checkboxes all at once? Easy! Don't even need to separate them out as individual steps. Changing a bunch of drop-downs? Just need to hover the mouse over them and use the scroll wheel of your mouse (which, by the way, doesn't work that great in the redesign because it constantly has 'tooltip-like' bits of advice pop up at the top of the screen almost every time you change one of the drop-down values.. Which scrolls them all and makes your next scroll click change the wrong drop-down).

You could say that one can mostly replicate that older workflow in the new one by just adding all the properties first. But even that takes longer than it should, since there's a lot more mouse dragging between the list of properties that opens in that fake subwindow, and the 'Add Property...' button.. Not to mention the need to search through the list for each item. While the list is organized, with related items placed near each other and even grouped within the subwindow's list, the position you scroll to is not preserved between entrances into the subwindow, which makes it an entirely moot point.

In short, there is no way to optimize one's interactions with the new UI. It is inherently, by design, slow and painful to use. Nothing can fix it except to completely replace it, because it is built upon a flawed view of how people interact with it.

Edit: I suppose if the subwindow stayed up until manually closed, one could just add a bunch of items, and then change the properties.. But why have a subwindow list at that point? Why not choose properties in a similar way you choose window types, with a normal drop-down menu that has checkbox items?

At that point, that's a significant enough change (especially since there'd need to be many other changes in addition to that, such as moving role/title/hostname matching back up with the rest of the window matching features, removing the 'Add Property...' button, etc.) that it might as well be considered another redesign.

because the subwindow for selecting a property to change completely closes after setting every single one

Thankfully that's like a one-line change. :) Feel free to propose it in the form of a merge request or a bug report.

Answering by reference here, although I highly doubt this is the right place for discussing this issue :P:

There is the long standing https://invent.kde.org/plasma/kwin/-/merge_requests/1954, which I had mostly forgotten since we couldn't agree on a suitable icon :)

adam added a subscriber: adam.Aug 21 2022, 6:34 PM

Notes from the refinement session:

As Janet seems to be no longer with the community, the Goal will not move to the next phase of the process. If any other person would like to step in, the possibility can be discussed.

I think this is a very valid goal, and I think it totally deserves to be voted. I'm willing to focus on this if it gets selected, so I'll step in to make sure it gets its chance. If Janet wants to come back to the community and lead this goal in the future I'll be happy to shift this to her anytime.

niccolove updated the task description. (Show Details)
bcooksley changed the edit policy from "All Users" to "Goal Setting 2022 (Project)".Sep 1 2022, 6:51 PM