Plasma Active: A Box of Crayons

One of the results of the UX sprint in Berlin which I’m really happy with is that it helped me frame some of the bigger ideas behind in my mind behind Plasma Active, and make it digestable for someone who hasn’t spent a lot of time yet thinking about it, and digesting these ideas.

As really nice example Celeste came up with is “The Box of Crayons“.

Let’s say, we as developers create a crayon, just one color, one thickness, a tool that is fine for jotting down a note on a piece of paper. There’s something magic about this crayon however: You can change it, and you can clone it nearly effortlessly. We start spreading around the clones of this crayon. An artist picks it up, and starts sketching with it, but she’s quickly unhappy with the crayon’s thickness, and the color isn’t very beautiful either (surprise, it’s made by a software developer, those don’t have the same visual tastebuds as many others). The artist takes the crayon, clones it a few times, changes the thickness of some, adjusts the colors of others. She takes a sheet of paper (same magical capabilities) and starts drawing. Happy with this new box of crayons, she tells her friends, and starts sharing it with others (now as a box of coloured crayons, in different colors with different stroke-styles. Others go ahead and add paper, canvases in different forms or shapes…

Applied to Plasma and Active, this means that we have to bring the traditional tasks of application developers to a wider group of people, and deliver the possibilities and infrastructure to share and change our creations. Creating a new “App” (a crayon, or a piece of paper) is not necessarily programming something new, but it can also be a specialized version of something that is already there — as long as it provides added value, it’s a useful addition. An interesting aspect here is that this ties in closely with the core values of Free software, yet provides an intriguing way of blurring the lines between creators and consumers.

Plasma provides these generic crayons with magical capabilities already today. We want these to be used, shared, adapted and combined into new, desirable tools.

Plasma Active: Designing Flexible and Adaptive User Interfaces

UX Sprint

I am in Berlin right now, for the KDE User Experience sprint. This sprint combines developers and designers into one group to exchange ideas, and discuss possible solutions we in the KDE community are running into. The sprint is kindly hosted by Relevantive, and sponsored by the KDE e.V.. For me personally, the focus is on Plasma Active. In order to make Plasma Active less abstract and give us all a clearer idea of what this is, I’ve brought two tablets running Plasma Active to show people what we’re working on, explaining the concepts while showing where we are right now. The reactions have been very positive and open so far, even if surely I wasn’t able to provide every detail we envision.

One of the goals I came here for is to evaluate and test Plasma Active’s concepts with a wider group of people, with more professional designers, and with people who have expertise in fields that are critical to Plasma Active’s success. This has proven very valuable so far. I’m quite happy with the results, and most of the ideas and concept we worked out with respect to adapting apps (and UIs) to the device spectrum do address the important problems we have. In this morning’s discussion, we also came up with some recommendations to not repeat mistakes others have made in the past.

Design vs Implementation

One of the things that we have to avoid is to mix design and implemenation. If we target a spectrum of devices, that doesn’t mean we can deliver one-size-fits-all solutions. The contrary is true: Every device has a special ‘use-case’ (in a lose meaning), it has special attributes that make the device special. Let me give one example: an app for a smartphone vs. an app for a tablet computer. The most obvious similarity is that they’re both touchscreen devices. This means that an app that works well on a smartphone would probably also run fine on a tablet. A smartphone technically is very much a subset of a tablet (oversimplified, yes). The usage pattern of a tablet is much different, however. Your smartphone may be used “on the run”, with an attention span of a few seconds, while you’re using the tablet on your couch, as a more relaxed way to go through your pile of emails — your not easily distracted though. Apps need to be designed for that, so it is not as easy as just making some screen adjustments. The app has to be made for a specific use-case.

Separate Designs with shared implementation

The solution is of course to design separate applications, that take all this into account (device-specifics, such as input methods, screen size, etc.) and usage patterns (“What is this app used for?”) The design for a specific device has to be made on a blank sheet of paper. In the implementation phase, Plasma’s architecture comes in really handy. As Plasma is very portable and full of generic components for small tasks, we will often end up re-using 90% of the code. The thing we have to watch out for is to not let this ease of development lure us into laziness on the design side.

Plasma Active is creating a lot of blank sheets of paper, waiting to be filled. We need designers that want to help us fill these pages with what becomes the blueprint for desirable interfaces. If this is something you, as a designer (visual-, graphics-, interaction-, product-) find interesting, get in contact with us. We need you.

I’m going to the KDE UX sprint, then Tokamak is coming to me!

On Thursday, I’ll be travelling to Berlin for the KDE UX sprint, which is kindly hosted by relevantive in their office in the heart of Berlin. I’ll be meeting Nuno, Celeste, Hugo and a few others there, and we’ll be making plans. Topics are the human interface guidelines, getting more designers involved with KDE, and of course Plasma Active.

A few days after coming back, hell will break loose in Nijmegen, as the Plasma crew holds their Tokamak gathering here. Here means at our new house in Nijmegen in the east of the Netherlands (which is in the west of Europe ;)). I’m really looking forward to having my fellow Plasma hackers here, especially with all the excitement, new ideas and concepts coming along with Plasma Active. I’m sure it will be an epic Tokamak, and a really long one, too. Between first arrivals and least departures, there will be a whopping 12 nights. We’ll likely be doing an Open Day, so if you’re in the region, drop me an email if you’d like to come by to see the magic happen.

Speaking of Plasma Active itself, it’s off to a good start. We’ve spent crazy amounts of hours in very little time before I announced it on my blog, and we kicked off a surge of blog posts about this subject — with more to come. I’m really happy with the positive interest it generated so far, very promising.

With the past two weeks spending most of my time on documentation, packaging and communication, I got back into hacking mode today, and polished up my small metadata engine I had started writing not long ago. It’s working now, you can query all kinds of resources, either by filename, URL, Nepomuk Identifier or simple query term, and it gives you back a list of Nepomuk resources and their metadata. It’s pretty simple, but very powerful. It already provides most of what you need to write a simple filebrowser, or search widget in Plasma Quick. I’ll write a more detailed blog post (including screenshots) once I’m more happy with it, also visually. The basic metadata engine is already in master, and will be appearing in the next update of the Plasma Active packages, probably tomorrow. Now, back to hacking. =)