How a usability student found his way to KDE – and why there are so few of us
When I read Jens Reuterberg’s blog post about his impression of the relationship between KDE and designers of all sorts, it reminded me of how I first got in touch with KDE and what we could learn from that experience.
It all happened back in 2008. I was a psychology student interested in usability and a happy Ubuntu (and thus Gnome2) user at the time. Most of my fellow students were not all that interested in computers – let alone Free Software. However, there was one girl – punk-like looks, living in an alternative community, had worked as a sysadmin before starting to study psychology – the prototypical “Free Software chick”. She wasn’t really into usability, but we often talked about Free Software. One day she told me that she had read a news article on a tech website (Heise or Golem, not sure anymore) about a program where students could do usability projects in Free Software in the summer, called Season of Usability. It was organized by OpenUsability, an organization with the aim to bring usability experts into the FOSS world. Sadly, Season of Usability was discontinued in 2010 and by now OpenUsability is pretty much dead as an organization, though members like Björn Balazs, Peter Sikking or Celeste Lyn Paul are still – more or less, Björn definitely more – active in FOSS. I was really excited about the opportunity to combine two of my passions – usability and FOSS! I applied and got accepted for the “KDE4 Human Interface Guidelines” project, mentored by Celeste Lyn Paul and Ellen Reitmayr. Together with another student, we worked on the KDE4 HIG and UI design patterns over the summer. It was really fun. After the project concluded, I asked Celeste whether there was more I could do. She pointed me to a UI review of KPackageKit she was doing together with Björn, so that’s where I met him.
After that, I was hooked and have been contributing to KDE (sporadically at first, then more and more regularly) since then.
So let’s recap which factors had to converge to make this happen: I was a student interested both in usability and FOSS (the only one of that kind in my department). However, even with these interests, I was not regularly reading any typical IT websites (I was more into usability/UX/design-related websites, like most people interested in this topic), so I learned about Season of Usability only because of my fellow student who was into FOSS too and did read IT-related websites. I was lucky enough to be a student when the second to last Season of Usability happened. And I was selected for the KDE SoU project (I had also applied for other projects, so I might as well have ended up somewhere else).
This illustrates one of the big problems we have when it comes to getting new people from fields other then software development to join us: KDE just isn’t visible outside our core audience, which is Free Software and IT enthusiasts. Our promo team does amazing work, but they mostly reach technology-related press. Linux Magazine, Ars Technica, ZDNet, Muktware, Heise, we’re very very visible in all of those. They pick up our release announcements, they even pick up things we didn’t want them to pick up (Martin Gräßlin has a story or two to tell about that, right? 😉 ). But you won’t reach many designers or usability people there. They read completely different sites and blogs, even if they do use some of our software (e.g. Krita). They may use our software, they may even love it, but they might not even realize that they can actively contribute to it! When I read interviews with Krita users on their news site, the question “Have you worked for or contributed to any FOSS project?” is always some form of “No”. And it’s not because they’re lazy assholes. These interviews are usually with people who give their work to the Krita foundation to sell in their shop, so they do want to give something back, they just don’t know how (other than by donating their art to sell or donating money)! And we have to change that, if we ever want to grow our team to more than a handful of people.
This is what we aim to do now, thanks to the push that comes from Jens’ fresh new look into our situation and his ambitious ideas!
You outline one opportunity to reach new graphic people in your article – Krita. It is a great tool people use that do not know / care about KDE yet. Perhaps we can work together with them to be recognized beyond our natural borders?
Absolutely. In fact, Krita is what brought Jens Reuterberg to us in the first place, so it will certainly be a key part of our visibility / “recruiting” effort.
Once I worked at Project Neverland to improve kde.org. I started full speed, motivated and inspirated and delivered several mockups and clickable demo’s. After a while, I got the message “Tnx for the ideas but [xxxxx] will do the job. He has super plans beyond imagination and is a great programmer”. I waited, and waited and in the end the project died. KDE.org is still the same text wall as it was before, another GUI minded guy was disappointed with the amount of work throwed in the trash can.
And that is the biggest problem I think. Designers are at the bottom of the chain. If you can’t make it yourself, you are kinda doomed. UXers are mostly called for icons, instead of full UX design. Slogans in the community as “If you don’t like it, you can clone the source and ask for a pull” and “Coder decides” don’t really help with that. UX designers should be on the top. Not because we are better than others, but as a good design process never starts with code.
One very good example of how UX guys improve the system is Björn Balazs with KNetworkManager. The latest video shows a very different GUI than the first video. All by iteration, feedback and pure IxD (as he knows icons can be done last). The design is still not perfect, but he takes his time and it improves with every iteration. Once it’s done, coders can do what they are good in: making ‘our’ dreams reality.
Having a group of people without even the slightest bit of coding experience and skills, but all the more interested in UX would be a great benefit for KDE I think. I might opt in, hoping it restores my faith in OSS and design 😉
Point 2: If there is a nice “Showcase” website of KDE, I offer banner-space to reach half a million users outside the traditional scope 😉
I feel with you. Getting into the community as a non-coder is pretty difficult. As a programmer, you submit a few technically sound patches here and there, and you’re in. You can change things, and if there is no strong objection to a change based on either technical problems or people’s personal preference (how often the latter happens depends strongly on which part of KDE software you’re working on), these changes usually get accepted.
That’s not the case for interaction designers. We cannot submit patches. We can “only” submit mockups and hope that developers like them so much that they are willing to implement them. This doesn’t make life easy for us.
On the other hand, I don’t think we can expect developers to just implement what we suggest simply because we suggested it. This works in a company, where there are clear roles and developers are paid to implement what’s coming from designers. Not so in the FOSS world. Our developers usually code in their spare time, unpaid, so nobody can dictate what they should do.
That’s why we will still have to convince them. And before that, we have to gain their trust, which may take quite some time. Over the years, I have gained the trust of quite a few KDE devs. When I suggest something to them, I still have to give arguments for my suggestions (which I consider to be a good thing, actually), but they are more likely to accept my suggestions, because they know that I know what I’m talking about.
The problem, however, is that before people have that standing in the community, their work can be very frustrating. Therefore, a big challenge is keeping people from throwing in the towel before they’ve made it through that difficult starting phase.
And thank you for your offer for banner space! We’ll get back to that once I’ve convinced Jens that we need a website to represent us 😉
On the other hand, I don’t think we can expect developers to just implement what we suggest simply because we suggested it. [….] Our developers usually code in their spare time, unpaid, so nobody can dictate what they should do.”
That is clear to me. Trust is gained very hard as most devs have seen GUI guys come and go, not realising why it is like that. A suggestion to improve X or Y is sometimes (mis)taken as critic instead of help. And as the designer can’t write code, every suggestion is more workload which is almost never appreciated 😉
“Over the years, I have gained the trust of quite a few KDE devs. When I suggest something to them, I still have to give arguments for my suggestions (which I consider to be a good thing, actually), but they are more likely to accept my suggestions, because they know that I know what I’m talking about.”
That is why a real UX group might come in handy. This way a suggestion is not only seen as the opinion of one person, but as an advice/recommendation of that particular group. Which can discuss, stimulate and inspire each others. That might bring in new people at higher pace as the trust is already ‘secured’ by some trusted members of the group.
there is now a call to revitalize the design crew of KDE, organized by the very Jens Reuterberg mentioned in the beginning. I think this is a great time to hop on with your UX skills. We do need them, that’s a fact.
I’d like to strongly encourage you to get in touch with Jens and join his new forming team. You can also join email@example.com and just say “I’m in” 😉
Your comment made me grin: Of course I’ve already talked to Jens, long before both his blog post and mine 😉 I’ve been involved in Jens’ plans pretty much since he came home from the Plasma sprint. In fact, this blog post may be considered as part of that plan.
>> “I don’t think we can expect developers to just implement what we suggest simply because we suggested it”
Well as a developer in KDE*, I don’t really agree with that. I can’t tell you how much happiness it gives me to implement something that Thomas, Nuno and other folks suggest. That is because I’ve seen improvements, in one hour you folks can do what devs cant do in months. \o/
* Plasma Media Center to be specific
Aaaaaw, I love to hear that! That’s the sort of quotes which companies put on their websites as testimonials 🙂
Okay, so let me rephrase what I meant before: We may come to expect that at least those developers who have had positive experience with our work will trust us so much at some point that they implement everything we suggest. What we cannot do, though, is force you guys to implement anything. Even if you’ve implemented 100 of our suggestions and were always happy with the result, if you simply don’t like suggestion 101, you won’t implement it, and there is zero we can do about that.
well yes, if the 101th idea is too difficult to implement, or doesn’t work that awesome after implementing it, we might not. But then, you folks usually have good reasons things, so that will be an exception rather than a rule
Exactly. Gaining trust is definitely doable, but it takes time end effort.
Absolutely, and that’s exactly our vision. There are the kde-usability and kde-artists mailing lists, but they are both rather in active, and they currently don’t represent “teams”, just some people subscribed to a mailing list. A real UX team would have all sorts of benefits.
@Thomas – I know, I saw your mails xD That was for bartottenart Otten, to try and join again ^_-
@mck182 Ah, now that makes sense 🙂
Well said Thomas. KDE is a meritocracy and that is the opposite of what we HCI people are used to in the commercial world.
As you mentioned the work on KNetworkManager – I have been involved into this project for 3 or 4 years. Most of the time I spent with building up trust. Even now Jan and I (and others) ‘fight’ about every single bit of the interface. This project is far from ‘I tell what to do’.
I believe this is good and bad at the same time. It makes it hard to join the project, but the outcome is better than what I could have reached on my own.
So we – the old guys – need to help building bridges for new ones. Perhaps we can re-animate the OpenUsability.org initiative? Anyone interested?
Indeed, we really need a team where seasoned KDE usability experts and designers can help new people get into the community and build trust. OpenUsability was indeed an awesome initiative, but instead of “just” reviving it, I’d expand it to include visual designers as well. One needs both for a good GUI, and we should work together much more closely. So we might have to come up with a new name, since designers usually don’t like the term “usability” that much.
What might be helpful is to take a look at the GNOME project. What have they done differently? What tools are they using for UX design? How do they present their work to the developers and the outside world?
Just a thought since GNOME seemed to have more success with recruting designers or is this just because of the better corporate support?
I assume several factors play a role in the difference between GNOME and KDE when in attracting designers, but looking at what we could learn from them would indeed be helpful
I personally disagree (as a coder having done that in the past in my professional life as well).
I’m glad when I don’t have to do the UI concept – because I have no clue of it and I hate that part of work – no offence – (which is probably why I’m so bad at it). Leave the work to the guys who know what they’re doing, which I’m badly or not at all capable of.
It’s funny implementing those partly even challanging ideas some designers come up with, but if I design a UI it won’t look good and it won’t work for the users. Sometimes it’s a lot of little stuff which isn’t a lot work (as a developer) where you can see huge improvements. The stuff you didn’t even think on.
i understand your point of view, but it think that we (kde artists and devs) should help each other to improve the user experience.
Most of developers have no clue about UI design in the same way as artists have no clue about programming, so if you are bad designer you can’t just leave the work to an artist, because for sure he will not know how to code and fix your UI issues.
This is especially true when design is hardcoded (like widget layouts). For example most of “KDE horrors” comes from configuration dialogs, in which we have lot of fields, labels, etc…
To address this issue the KDE team published a complete set of guidelines that you, developer, must follow to realize good-looking applications, even if you are a bad designer. There rules are easy to understand, no design knowledge is required, and with a minimal effort your application will look better.
On the other hand i think that with QML we are reaching the goal to separate the “presentation layer” of an application from the “code layer”, and the let the artists design powerful and beautiful interfaces even without programming skills.
As bartottenart said, suggestions coming from an UX group will be more effective than suggestions from a single user. If the problem is to gain developers’ trust, i think the most effective way is to demonstrate your skills with concrete results.
Why don’t create a “KDE UX Day” (like the old “Bug days” from KDE BugSquad) where the whole group of kde artists for one day will focus on a specific application and sort out all design flaws, giving some hints to developers and fix them together?
It’s a poor idea, but is just an example of a way to actively collaborate with devs and start to trust each other