Plasma Active – A Desirable User Experience Encompassing the Device Spectrum

Plasma Active on a tabletToday, I’d like to announce to a wider audience a project we have been working on in and beyond the Plasma team. Its goal is to “Create a desirable user experience encompassing a spectrum of devices“, and it is called Plasma Active. A couple of things make Plasma Active special. First, the driver is the desirable user experience. That means that we want to create something, people want, and people want to use. It means we are less technology-focused, but are taken a user-centered approach. Second, we are not targeting a single device, or a narrowly-defined class of devices. Plasma Active is made to run on a spectrum of devices that make up the user experience together. Devices change, and so does the way the user interacts with them. By strongly separating data and visualisation / interaction, we do not re-invent the wheel but adapt to the requirements and expectations of a device, and about how devices work together for the user.

Running Plasma Active

We have a basic, Plasma-based shell right now, which runs on three target devices — and probably some more, but that’s what we’ve tested so far. It performs well, runs stable and is usable with a touch-screen. While Plasma Tablet is quite fun already, do not expect release quality yet, as it is a snapshot of our efforts. Find the download location for the Balsam Professional live image on the wiki.

open-slx has created a Balsam Professional live image based on openSUSE 11.4 running Plasma Active. open-slx (my employer) are developing Plasma Active for openSUSE in the openSUSE Build Service. We’ve also created packages which can be installed online on top of openSUSE 11.4. You can find installation instructions in our Wiki, also for Meego.

Of course you want to run Plasma Active on a ‘real’ device, we currently recommend either the ExoPC (WeTab), the Lenovo Ideapad, or a Viewsonic Viewpad 10. You can find instructions for devices in the Wiki


The demo video shows Plasma Active in action on a Viewsonic Viewpad 10.

Status

There is still a long way to go. We’re missing key functionality, default applications, optimizations all over the place, and more. There is nothing fundamental that holds us back to bringing the full experience users expect to tablet devices, based on our well-known, beloved, proven software stack. We are focusing our first release, which is planned for September already, on tablet computers.
Since fixing a bunch of showstoppers over the past two weeks, I’ve actually started using Plasma Active for some light reading tasks (mostly web and RSS), and I’ve got to say: It rocks your socks. Being able to use a tablet computer which is based on Free software that you created yourself, is real fun. I’ve also handed it to friends who came by, and while they understood it’s an early prototype, I had a really hard time getting my gadget back. And that is only just the beginning. We have an excellent base to build a complete experience upon. In other words, it’s the perfect time to jump in and become part of something great and to help it also making it something really big.

Different goals need different processes

Widgets on Plasma ActiveWhen we put the pieces for Active together, it quickly became clear that if we want to succeed, we also have to rethink some of our collaboration processes. One of my pet peeves has always been that different essential parts of what the user gets in her hands come from different teams. If we want to put something desirable into the hands of our users we need to pull in the same direction. While we needed different skills, these skills have to align in how they’re applied. This makes communication more natural, leads to a more focused process, and ultimately a better result. It’s clear that such an endeavour will only work if enough people in our communities, and the communities around it think that this is a worthwhile thing to spend their time on, and that we can get the people that do to pull in the same direction. The good news, however is that we’ve been able to create a stable platform to do this, in terms of tools, processes, collaboration models and not at least software. That platform is Plasma Active.

Sounds interesting?

If you want to help us shape Plasma Active, and bring its vision to reality, we would like to invite you. Start with having a look at our list of tasks, and if you find something you can help with, tell us, subscribe to the Plasma Active mailing list, or join #active on Freenode’s IRC network. We have documented our ideas, concepts and processes in the wiki.

In the coming weeks, we will keep you updated about Plasma Active’s progress, and we will be able to reveal more of our vision as we give Plasma Active shape by making it become reality.

24 Responses to “Plasma Active – A Desirable User Experience Encompassing the Device Spectrum”

  1. Markus says:

    Hey, congrats. Just to make something clear: Plasma Active is a separate project and not a replacement, successor, new name for Plasma Tablet, right? Plasma Tablet is still being developed as individual project, right?

    • sebas says:

      Plasma Tablet and Plasma Mobile have actually shared their code-base since their inception, they are just different UI shells on top of what we call Plasma Active. Think swappable sets of QML files.

      Plasma Active is not purely about the shell though, but about getting the whole thing end-user ready covering all aspects of what’s necessary to reach that goal.

      • Markus says:

        Thanks for the answer. I’d like to fully understand what Plasma Active is because I’m pretty much the guy in charge for the English and German Wikipedia entries for Plasma Worksapces and I don’t want to spread misinformation. That’s why I feel to ask again — to be 100% sure.
        As I understood you, Plasma Active is not a new Workspace or a brand for a Workspace but an initiative to
        a) on the technological level to create a layer to share as much code as possible (ideally 100%) between various Plasma Workspaces and you begin your work with Mobile and Tablet.
        b) get the Mobile and Tablet workspaces from prototypes to production quality.

        • sebas says:

          Close, but no cigar yet =)

          Our first focus is specifically on Tablets (not mobiles, but tablets), but Plasma Active goes way beyond Tablets and mobile. A media center is an obvious candidate, but also in-flight entertainment systems, or the next emerging device. With Plasma Active, we have the system, processes and community read to bring Free software to new devices popping up with relatively little effort.

          We’re also clearly not only looking at this from a technology level, but from a “whatever needs to get done to bring this to our users” point of view. That’s a big difference compared to how we operated in the past (upstream vs. downstream).

          • Markus says:

            So, then Plasma Active is an effort for increased adoption by users by means of Upstream-Downstream communication, coding, and (likely in case of open-slx) commercialization, or — in words to make it more bluntly — a promo effort with a workgroup to make all Plasma Workspaces the premier GUIs for MeeGo devices and engage device manufacturers to code for KDE and not Intel’s rudimentary MeeGo reference UXes.

            When not a workspace on its own, your blog posting with headlines like “Running Plasma Active” is very misleading.

  2. kinto says:

    What about plasma for desktop? Will it be a separate shell or will it be just another shell on top of plasma active?

    • sebas says:

      We’re not planning to change anything about Plasma Desktop, it is stable, mature and should stay that way.

      Work on Plasma Active also benefits the desktop though, since most of the stack is shared.

  3. Congrats dude, it just looks awesome !

  4. Wow, this looks *really* slick. Which browser is shown in the demo video?

  5. rbelem says:

    Awesome work! Congrats!

  6. Anders Runeson says:

    Could you upload hi-res images? The thums links to file:///home/…

  7. Inge Wallin says:

    Looks very nice. Surprisingly so, I must say. Congratulations!

    I have a couple of questions:
    * Is there a HIG so that 3rd party developers (even within the KDE community) will develop a coherent user experience?
    * Is there a widget set, or set of Qt Quick components, or whatever, that can be used to develop UI’s for applications?
    * Is there (or is there planned to be) an SDK that can be downloaded?
    * Do you have to use plasma technologies to develop apps for this? Or is normal QML enough?

    And I can’t help but think that it’s a pity this wasn’t announced before the end of the GSoC application period…

    • Inge Wallin says:

      I found most of the info at your wonderful wiki pages. Well done!

    • sebas says:

      I’ll bite anyway :)

      There is the start for a HIG (the PIG, Plasma Interface Guidelines, cheesy name included on purpose ;)), but it’s very far from complete yet. In order to tackle this, we need to get more designers involved, which is one of the subgoals of Active, by providing more designer friendly tools and workflows. This will also be one of the topics of the KDE UX sprint which starts end of this week.

      As widgets, you can use the Plasma Widget set, those are bound as QML scriptable objects, touch-friendly and scale between UIs. Work is still on-going, but Plasma provides today already the most complete and mature set of Qt components you can find.

      The SDK for Plasma Active is Plasmate, a workflow-driven creator tool for Addons. It basically works, but needs more love to bring it to a stable release. One of its maintainers (Diego Casella) has proposed an excellent GSoC project to complete and stabilize it.

      As to Plasma vs. “pure QML”, the essential point is its user experience. Integration issues can, but do not *have to* play a role. In many cases, using Plasma elements is probably the most logical thing to do, when you look at how your App integrates with the rest of the system, and compares to its UI. One example is how you make it possible for your app to run on more than once form factor, Plasma provides ways of switching UI profiles.

      I agree on the account that it’s a pity, it wasn’t announced before GSoC application period, but it’s all very, very fresh.

      • Inge Wallin says:

        The reason I was asking about the SDK and Plasma vs QML was because I was thinking of how to create a UI for a certain application suite. I doubt that Calligra would fit very well in the Plasma UI-in-javascript-with-dataengine mold. Any thoughts about how to port existing applications to Plasma Active?

        • sebas says:

          You can just build a QML-based UI around it, and use Plasma’s components in there to get better integration.

          Does this answer your question?

          (If not, you might want to hop over to active@kde.org, so we can get you sorted :))

  8. xapi says:

    Only for curiosity, those 3 circles (buttons) per widget (2 up on the corners & 1 centered down of all) looks horrible if they are always visible and wasting a lot of space.
    What about hide them until you press in the widget during 1 or 2 seconds and then those 3 buttons are showed (not clicking in those circles show hide them again)? If I’m not wrong that is the behabiour used in Android widgets…

    • xapi says:

      Sorry I made 2 mistakes:
      “in those circles *show* hide them again” show -> should
      “that is the *behabiour* used in Android ” behabiour -> behavior

    • sebas says:

      It doesn’t only look bad, it also has its interaction problems. ;) It’s something we’ll find a more elegant solution for.

      Without wanting to sound purely like “send a patch”, I’d surely be interested in nice mockups / designs to allow interaction with the applet (moving, config, remove, expand, etc). The ordering by dragging and dropping works quite well already and is useful, I must say, the handles are too much in your face.

      The nice thing is that this is pure QML, so it can easily be experimented with (you can literally edit the QML files on the device, even :)).

      • xapi says:

        Sebas in this case isn’t necessary to do a mockup of what I said, look yourself the pictures, those 3 buttons/icons hide information of the widget and an important button (go up) of the vertical scrollbar of the widget of the center.
        I only say that those 3 buttons should be invisible until you press with your finger a widget during few seconds (1-2 should be enought) then it should look like in the screenshot. If you do another thing not related to the 3 buttons/icons they should dissapear again until you repeat the process.
        As you can see isn’t necessary a mockup because is only a usability problem I noticed in the screenshots & the video (I’ll save the video in my hard disk because I loved this demo, Plasma Active looks very nice & I hope to see more videos in the future :)).

        Ah and the virtual keyboard should use a bit more horizontal space if the screen allow it (I saw some special buttons that are very small to be pulsed).

        • jospoortvliet says:

          I’m not 100% sure but I think pressing a widget during a few seconds results in a right mouse click so that action is not available anymore. Morever, it is quite undiscoverable and hard to use if you quickly want to move a few applets around. I’m not saying I have better suggestions, just that xapi’s suggestion is worse than the current situation :D

          Maybe it is possible to just have the configure button, showing up once you do *something* in the panel (eg just scroll). Clicking it enables the move/delete/etc buttons?