Choose Your Own Experience – This Time it’s for Real!

As many of you have noticed, yesterday’s blog post “Freedom Maximized!” was indeed an April fool.

I had thought that if including KDE 2 as a choice hadn’t given it away yet, the completely over-the-top fake quote from Jens Reuterberg at the end (which he loved so much that it’s now his signature on the KDE forums) would make sure nobody took it seriously. Apparently, though, at least some people think I’m really nuts and Jens really talks like a Viking warrior, or they were so fascinated by the idea that they just ignored those not-so-subtle hints ;)

However, all those that like the general idea (and that was the majority at least of those that commented), do not despair: As with many jokes or lies, there was a kernel of truth in it! While we certainly do not want to faithfully recreate the experience of KDE 2 (or even KDE 3) with Plasma Next, Jens and I indeed have been thinking about offering users the choice between a set of pre-configured setups we’d like to call Experiences. Those would include things like Panel configurations, Plasmoids, application menu positions (in the window / in a Panel / in the window’s title bar / …), Plasma theme, widget theme, window decoration theme, cursor theme or the selection of KWin effects (like desktop/task switcher, animations, etc.). Part of the groundwork for this are the Plasma Look and Feel packages which go a great length in the visual department, but our idea goes way beyond that.

UPDATE: Credit were credit is due, these ideas did not originate completely in Jens’ and my head, they already started in a VDG forum thread, where user EraX had already posted a mockup of a Desktop Preset selection and configuration dialog. I supported the idea, but it wasn’t followed much further in the forum. I was still aware of the thread when I wrote this post, but admittedly I had completely forgotten about the mockup (otherwise we would have considered it when creating our own mockups). Thank you Hans for pointing it out to me and to EraX for inspiring us with the mockup!

UPDATE 2: Damn, the VDG forum is so full of awesome ideas that one just forgets too many of them! David Wright just brought another forgotten thread back to my awareness where he’d posted a mockup for something similar to an Experience manager as well!

Mockup of Experience Picker

This is a rough mockup of our idea for the Experience Picker as a last step of a distribution’s (post-)installation wizard

One obvious use of the Experiences would be to allow people who migrate from a different operating system or desktop environment to Plasma (or upgrade from the 4.11 version) and don’t want to re-learn everything to just select a pre-configured Experience that looks and feels familiar, while still offering all the advantages Plasma has over their previous OS or DE. People who are long-time KDE/Plasma users, have seen another OS or DE on screenshots or in action and liked it but still want to stick with Plasma should find Experiences just as useful.

We wouldn’t want to only offer Experiences modeled after other existing operating systems or desktop environments, of course. We see enough great examples of Plasma configurations made by our users to know that people can do things with Plasma that they can’t do with any other OS or DE. Therefore, you would likely see several fresh new Experiences created from scratch by our design community as well. And of course if people took the time to create Experiences similar to KDE 3 or 2 (or even 1, if they like), they could be selected, too, though they might not be shipped by default.

While we still want to offer users an Experience Picker right at the end of (post-)installation wizards, people should be able to select, install and of course customize Experiences later on, as well! For more details on that, head over to Jens Reuterberg’s post!

Posted in KDE, Uncategorized

Freedom Maximized!

UPDATE: This was an April fool’s post! However, we actually do plan to realize its basic idea. For more about that, see the next post

Whenever you introduce bigger changes to something people like, you’re certain to leave some people behind. GNOME had that experience with GNOME 3, where the resentment from users unwilling to adapt to change lead to forks like Cinnamon and MATE as well as GNOME’s partial backpedaling in the from of GNOME Classic/Fallback. Windows 8 got so much flak that it seems like with every 8.X release they’re moving back a little towards the Windows 7 way of doing things.

And KDE knows what happens when you alienate a group of users since the moment when the anger of some people over KDE 4 lead to the first prominent fork of KDE software, the Trinity Desktop Environment.

Now with Plasma Next, we of course want to introduce some fresh new concepts (otherwise, what would be the point of doing something new?), but we still don’t want to alienate our current users. That’s why we want to give users the opportunity to choose whether they want an all new experience, or stick with what they know. However, since we know that our users like choice, we shouldn’t stop there. Trinity shows that there are some people who still want the experience from the 3.x days, so why not give them what they want? And while we’re at it, I’m sure there are some folks who still nostalgically look back to the KDE 2 days, so we should serve them the experience they like, too!

That’s why I came up with the idea of a “Choose Your Plasma Experience” dialog at the end of the installation process of distributions shipping Plasma:

Proposed dialog Choose Your Plasma Experience

Proposed dialog “Choose Your Plasma Experience”

The chosen experience would affect the Plasma theme, the selected Plasmoids, Panel config, widget theme, window decoration and everything else that makes up the desktop experience, even down to the available features! In case of popular demand, we might even integrate KDE 1 support, though it would pain me to have to put five screenshots in that dialog ;)

To move this idea from bold words and mockups in a blog to actual software, of course I need developers and designers on board. I talked to Àlex Fiestas about the plan and he said that though recreating the KDE 2 or 3 experience certainly won’t be easy since it was made with totally different technology in a totally different age, he agrees that it’s worth the effort if it makes our users happy. Jens Reuterberg from the Visual Design Group understandably would love to see the results of his team’s work in Plasma Next to be used by everyone, but prefers to see Plasma Next smash the competition to pieces in the war for the user’s favor, and stand victorious on the battlefield of design!

So with both developers and designers on board, we can set out to give our users more freedom than they ever expected!

Tagged with: ,
Posted in KDE

Squid Kung Fu – Or “Can I have more hands, please?”

Squid Kung Fu

(“Squid Kung Fu”, CC-BY by Windell Oskay)

The image above as well as its original title reflects both what my work for KDE currently feels like and what I’d frequently wish for these days: More arms to reach out to all the people I’m currently working with. It is exciting, inspiring, exhausting, all at once.

Currently, I’m not deeply involved in a particular project, but instead I’m involved in lots different things at once. Here are some examples of things I do (in the order they came to mind):

  • Coordinate between the Visual Design Group and the Usability group (Jens Reuterberg usually calls us “the HIG group, but we do more than writing HIGs), currently specifically the effort to integrate Visual Design Guidelines which Andrew Lake is currently writing into the Human Interface Guidelines. It makes sense that Jens started the VDG as a separate group, but we agree that in the long term, there will have to be a single user interface / user experience / whateveryoucallit group which consists of both (visual) designers and usability experts (and developers with a particular affinity to GUI development), because creating a great user experience is an interdisciplinary effort. That’s why it’s important that Jens and me talk often to keep “our” groups in sync
  • Try to keep up with the amazing creative energy materializing in the VDG forum (Jens mentioned that already in his latest blog post) to give input whenever I feel it’s necessary
  • Read the Plasma mailing list to provide input on things such as the new Desktop Effects control module
  • Play the role of the client in a university project which creates a modernized UI for KAddressbook
  • Read through several GSoC proposals (especially those related to Plasma Active)
  • Work on the HIG themselves, of course
  • Read the KDE Telepathy mailing list to give input on anything UI-related

The fact that I’m feeling like a squid-man shows two things:

    1. There is a hell of a lot of awesome stuff currently happening in KDE, these are exciting times indeed!
    2. We have too few usability people. Heiko Tietze is putting great effort into the HIG (without him, not much would have happened since I rebooted them) and Björn Balazs helps where he can as well, but there is only so much they can squeeze in around their contract work at User Prompt. Therefore, if you know someone with a background in usability / user experience who would be interested in working with our fantastic community, just point them towards me!


Tagged with: , , , ,
Posted in KDE

Leveraging the Power of Choice

People have quite varied opinions of Plasma and other KDE software, but most agree on one thing: When it comes to flexibility and offering choice for users, we’re unbeaten!

This, however, comes with the danger of overburdening especially novice and casual users of our software with too many options. That fine line between too little and too much choice is difficult to strike. While other companies or communities have decided to opt for giving users what they think is best for them, especially experienced users of KDE software have come to expect a great degree of flexibility. So how can we cater to both novice/casual users and experienced “power-users” with the same peace of software?  In many cases the answer is: We can’t. What we can do, though, is offering each group (and there may be more groups then those two) an individual piece of software that works well for them, but not necessarily for the other group(s).

Plasma (both the current and next iteration) provides an easy way to do that with different Plasmoids. For the same purpose, we can have one Plasmoid which strives for simplicity and one that strives for maximum flexibility and power. The only catch: It’s currently a bit complicated to switch between the different Plasmoids. You have to go into configuration mode, remove one Plasmoid, search for the new one, and place it where the old one was. This is likely to prevent many users from making extensive use of Plasma’s flexibility, simply because it’s not important enough for them to invest the effort to switch Plasmoids.

When the problem of having to strike a balance between simplicity and flexibility came up again on the plasma-devel mailing list in the context of the Digital Clock Plasmoid, I remembered a discussion I had with Àlex Fiestas a while ago about the same topic. He suggested to provide a way to easily switch between different Plasmoids for the same purpose if we know which purpose a Plasmoid serves. I was about to suggest that on the mailing list, but Marco Martin beat me to it with this mail:

interestingly enough, i was thinking the other day that it would be interesting providing in plasmoid desktop files something like X‑Plasma‑Provides=org.kde.plasma.clock that would be similar to the provides keyword in rpms to provide alternatives, so then in the plasmoid config dialog there may be alternatives listed…
…but this is definitely for next+1

That was exactly what I had in mind (and I assume Àlex as well), and it would be a great way to leverage one of Plasma’s biggest strengths: Flexibility, which offers choice! Of course maintaining multiple Plasmoids for the same purpose also means multiplied work, but not all Plasmoids have to be created by the core Plasma team. Everyone can write a Plasmoid for a certain purpose, add the X-Plasma-Provides line to the desktop file and thereby plug it right into this system! With this in place, whenever a user complains that a Plasmoid is either too complex or offers too little choice and an alternative exists, we can point them to it and they can easily switch.

As Marco said, this feature definitely won’t come in the first release of the next Plasma, but I’m looking forward to it nevertheless and will keep nagging the developers until it’s available ;)

So, dear readers, what do you think about this? Do you think this would help, or should we rather try to create Plasmoids that work for everyone?

Tagged with: , , ,
Posted in KDE, Uncategorized, User Experience

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!

Tagged with: ,
Posted in KDE, Uncategorized, User Experience

Unified Communication – What KPeople and Nepomuk can do for you (in the future)

Most of the time within KDE I discuss things which are either already out there or in a design/ mockup stage, because those are the points where either I notice problems or developers have questions for me. From time to time, however, I just do a little “thinking outside the box” to come up with new ideas, or “visions” (no, not the “If you have visions, you should call your doctor” kind). One of the things that come to my mind every time I discuss anything related to communication is: With all the information federation stuff we have in KDE (Nepomuk, KPeople, Akonadi, …), we should be able to unify the communication with the same person across different communication media. There are at least three scenarios I have in mind here:

Scenario 1:

I have an idea which I’m eager to tell Àlex about (because Àlex is usually my go-to person for crazy ideas). I don’t want to open several applications first just to check whether he’s online on GTalk or IRC, I just want my message to reach him as fast as possible. In this situation, I want a system where I can just say “Give me the best way to reach Àlex right now” (where “best” is based on both availability and my preference for certain communication media).

Scenario 2:

I read an email by someone on a mailing list. I feel that I have to discuss the content of that mail with the author, but I assume that having the whole discussion on the mailing list may produce too much noise on the list and just annoy people. Therefore I decide to continue the discussion via instant messaging. During our private discussion, we realize that a few more people should be involved, but we still want our discussion to happen on a synchronous communication medium, so we decide to continue it on IRC. After we’ve reached a conclusion on IRC, we post the conclusion in a reply to the mailing list. Later on, I want to review the whole discussion. In this situation, I’d like a history of the discussion which aggregates the original mail, the IM log, IRC log and the final mail.

Scenario 3:

I am looking for that file David sent me a few weeks ago. I don’t remember its exact name or whether he sent it to me via mail, Jabber or IRC, I just know that it was a few weeks ago and that it was from David, and I want to find it easily just based on that information.


All three of those scenarios may sound like rainbows and unicorns at first, but they are not that far-fetched, and the basic technology to give me what I want in them is already there. Therefore, last week at the KDE PIM sprint in Brno I talked to some of the people who could make the features I’d need in those scenarios happen: David Edmundson and Martin Klapetek from KDE Telepathy, Christian Mollekopf from KDE PIM and Vishesh Handa from Nepomuk. David told me that for Scenario 1, they are already “50% there”: A contact list which shows you in which communication media a person is currently available (powered by KPeople, of course) is already being developed, so the most important part for that is already happening. The “give me the preferred communication medium at this moment” part still has to be done. That part doesn’t have such a high priority to me, though, because if you have all communication media in one place, including the person’s current availability in each of them, manually selecting your preferred medium is easy to do.

For scenario 2, more still needs to happen. Currently neither IM nor chat logs are stored in Nepomuk, so it cannot connect them to a person. According to Vishesh, Nepomuk isn’t a good place to store whole logs, but it should still be able to link logs stored externally to people, so that logs from conversations with one person which are spread over various sources may be aggregated somewhere. Plus, all the clients used for the conversation need to support KPeople. KDE Telepathy uses it already, KDE PIM support is currently being developed, and David told me that people from Konversation are looking to integrate KPeople as well. This means that least if you use these applications for your communication, you should be able to get your aggregated logs at some point. Another problem here is that conversations nowadays are spread not only across different logfiles on the same device, but across devices as well. We would definitely want to support a conversation started on a PC and continued on the smartphone. With emails this is not a problem if one uses IMAP. With IRC it works if one uses a client/server system like Quassel, which is more of a power user thing, though. For IM, it depends: Facebook, for example, has an API for accessing the logs stored on their servers, but of course with everything stored on a server somewhere in the US, you have a privacy problem. This problem is not easy to solve, but we agreed that we do not want to synchronize locally saved logs. So if you want cross-device logs but still limit privacy problems, you’d have to e.g. use a Jabber/XMPP server you trust and have it store your logs.

For scenario 3, Nepomuk has to be able to link each file received from a person to that person. Vishesh told me that it “kind of” works for some cases already, but still needs more work. And we need the UI to search for files by person, of course. We all agreed that all three scenarios are something we should aim to solve, now the next step is an actual plan of action to implement the stuff that’s still missing.

So, dear readers, what do you think of all this? Do the scenarios sound realistic to you? Would you find it helpful if the aforementioned solutions were available in these scenarios? What additional scenarios can you think of with respect to unified communication?

Tagged with: ,
Posted in KDE

Different Shades of Freedom in Digital (Game) Sales

Why I buy proprietary video games

(If you don’t care why I buy proprietary video games, you may skip this paragraph)

Even though more and more – and more and more great! – Free games become available every month, the video game market seems to still be dominated by proprietary software to a much greater extent than other categories of software.When it comes to operating systems or applications, I try to stay clear of proprietary software whenever I can and have in fact all but eliminated proprietary software from my own computers except for the occasional binary firmware blob or software for printing (sadly, my printer simply doesn’t work on Linux). However, when it comes to games, there are just too many great proprietary titles I don’t want to miss. And I don’t dislike proprietary games as much as other proprietary software.

Sure it sucks that I

  • cannot modify a game (though many many proprietary games actually do allow “modding” and benefit greatly from that!)
  • have to put up with any kind of arbitrary measures a game’s developer (or publisher, in most cases) has come up with in order to control players
  • cannot share a game freely with anybody (and the industry tries to come up with new ways to stop people from re-selling or even lending their legally owned – or rather licensed – games)
  • cannot see a game’s inner workings

but unless I feel too controlled by a game’s makers (like when they force me to be online even to play a single-player campaign), I’m way more okay with it in the case of games than in the case of operating systems or applications. Probably that has to do with the fact that games are not as important to me as other software. If there is something I don’t like in a proprietary game but the game is still fun, I can live with that for the time it takes to finish it, whereas with a proprietary application, I can only either live with it until the developers decide to fix the problem or hope to find a better application.

So, yes, I do play – and of course buy – proprietary video games.

Buying your games with more or less freedom

Not all channels for buying purely digital copies of games are equal with respect to freedom, though. From my personal experience, I can tell about two extremes within the domain of digital distribution of proprietary games: The Nintendo Shop Channel / eShop on the restrictive extreme, and Humble Bundle on the permissive extreme.

If you have a Nintendo console (disclaimer: I am pretty much a Nintendo fanboy, so I don’t mean to criticize the company in general, their games are still amazing!) and want to buy a game digitally, you are completely at Nintendo’s mercy: You can only buy it via their shop platform for the price they set, you can only play via credit card or Nintendo Points cards bought in stores, you can only play the game on the exact device you bought it on, and if Nintendo decides to pull a game from their shop, there is no way to obtain it anymore (at least you can still play your purchased copy). This is pretty darn restrictive. I haven’t had the chance to experience the respective shops from Microsoft or Sony myself yet, but I am certain they are not much less restrictive (if at all).

Now the other extreme to that is Humble Bundle. It does sell proprietary games, but within these boundaries, you get pretty much every freedom you want:

  • The games usually* come completely DRM-free
  • The majority of the (non-mobile) games are offered for Windows, Linux and OS X, so you have a choice of OSes to play the game on
  • You can download your purchased game directly, get a Steam key or download it via BitTorrent
  • You can pay via credit card, PayPal, Amazon Payments, Google Checkouts, and even Bitcoin!
  • The best part: You can pay whatever you want, anything from the symbolic one cent up to whatever amount you want, though to get all the games in a bundle, you have to pay more than the average sum paid so far
  • You can freely distribute the sum you pay between the games’ developers/publishers, Humble Bundle itself and a group of charities (including the EFF!)

I find this quite impressive given that it’s still proprietary, all-rights-reserved software that’s being sold here. And, looking at how many bundles they sell, how much money they make and the fact that even big publishers occasionally offer their – older – games via Humble Bundle, it seems that both paying customers and game providers seem to like the approach!

To me, that shows that, even for people who still refuse to join the Free Software movement, allowing customers as much freedom as possible is the key to success. The difference between the restrictive systems of Nintendo & Co. and permissive ones such as Humble Bundle are their perspective on their customers: The console makers seem to see their customers almost as their enemy who will try every possible way to avoid paying for the games they love and supporting their continued development. They try to beat their enemies by locking them in so tight that they have no other chance than to comply with their rules – or not get any games. Humble Bundle, on the other hand, seems to see their customers as their friends, who actually want to pay for the games they love in order to show their appreciation and support their continued development. And they do! If people didn’t want to pay for the games, they could just all pay $0.01. If everyone wanted all the games in a bundle, the average would slowly rise since everyone had to pay more than the average, but if each person beat the average by only one cent, it wouldn’t increase all that fast (without actually calculating it, I’d speculate they’d have to sell quite a lot of bundles just to get over $1!). And since they games come DRM-free, they could just share them on BitTorrent for $0.00 anyway. In reality, however, the average paid is usually between $5-10. This still isn’t much, but the games they sell their are usually either very low-budget or rather old and it seems that the developers/publishers as well as Humble Bundle themselves still make enough of a profit from that to keep the concept attractive.

Oh, and guess which group of OS users consistently pays the highest average amount for each Bundle? The Linux folks! Yes, those people about which gaming industry stars like John Carmack say ” there are not many people who are interested in paying for a game”.  Sure, Linux users still are the minority of Humble Bundle buyers, but their willingness to pay is actually higher than that of Windows or Mac users.

Freedom to those who support it

Knowing this, one of my first questions when Aaron Seigo introduced the “Free Culture”-inspired digital market “Bodega” was “Will there be the option for a ‘pay what you want’ model?”, and I was glad that the answer was “This isn’t implemented yet, but it’s definitely on our agenda!”. If freedom works for selling proprietary games, it surely will work for supporting Free Culture! And that spirit of freedom for every participant (regardless of whether they provide or buy content – or both!) is so palpable in Bodega and Make Play Live that I’m sure it’s bound to succeed!


I added “usually” to “The games come completely DRM-free” in the Humble Bundle description since, as Raht pointed out in the comments, some of the Humble Weekly Sales from major publishers did only come as Steam keys. The actual Bundles, however, are always completely DRM-free and even most of the weekly sales are DRM-free, so the sentence “The games usually* come completely DRM-free” definitely holds true.

Tagged with: , , , ,
Posted in KDE

Get every new post delivered to your Inbox.