All posts by Dominik

Dominik is a PhD student at the Control Theory and Robotics Lab, TU Darmstadt, as part of the Research Training Group GKMM (GRK1362). My research focuses on state estimation in distributed systems. As hobby, I contribute to the KDE project and work on the Kate application and editor component.

Plasma Active

At the desktop summit, many contributors got a ExoPC from Intel, but the software on it was quite a disappointment. Meanwhile, there is an official release of Plasma Active that fills the gap. So I sat down and installed it on the ExoPC. It really works quite nice and smooth. Applications like Amarok and a browser make it usable to hear music and do some quick internet surfing. I documented the steps in order to get everything up and running.

Running Plasma Active One from the USB Stick (LIVE version)

To get a quick impression, you can download the file plasma-active-one.iso from Then, plug in a USB stick to your computer and run the comand

sudo dd if=plasma-active-one.iso of=/dev/<DEVICE> bs=1M

where <DEVICE> corresponds to the USB stick (in my case, this is sdc). When finished, plug the USB stick into the upper USB port of your ExoPC and press the power on button. Make sure to tap “BBS” immediately and choose the USB stick as boot device. After this, choose the first entry to start the live version of Plasma Active.

Note: As of 2011-10-15, a installation with this live version is not possible (even though some documentation at some point or the splash screen suggest otherwise).

Installing Plasma Active on the Hard Disk

In order to get Plasma Active on your hard disk, you first have to install openSUSE 11.4. To this end,

  1. download the 4.7 GB DVD image of openSUSE 11.4 (32 bit), and copy it on the USB stick (in my case <DEVICE> = sdc):
    sudo dd if=openSUSE-11.4-DVD-i586.iso of=/dev/<DEVICE> bs=1M
  2. plug the USB stick into the upper USB port of your ExoPC and press the power on button
  3. make sure to tap “BBS” immediately and choose the USB stick as boot device
  4. after this, choose “Installation” to start the install process (you need an external keyboard on the lower USB port)
  5. follow the installation routine, choose the KDE desktop, do the partition setup, create a new user account and finally start the installation
  6. copying files takes some time. After this, the system finally boots to proceed with the automatic configuration.
  7. Finally, the system arrives in KDE. (From now on, the USB stick is not needed anymore.)

The touch screen does not work out of the box. Hence, I restarted X from the console with /etc/init.d/xdm restart. After that, the external mouse and keyboard worked (ignore the fact that you might be greeted by 6 crashed akonadi windows).

Once you have the internet up and running, proceed with 1.5 Installation on Balsam Professional or openSUSE. This updates your kernel to properly support the touchpad and replaces the default Plasma Desktop with Plasma Active.

Kudos to the Plasma Active team and all involved contributors and supporters!

PS: Although a text editor is probably not of much use on a tablet PC, KWrite is available :-)

Coding Style and API Design

Once in a while, there are really interesting blogs, presentations and reports about how to do things right as software developer. This is a quick list of links about API design and coding style:

  1. Designing Qt-Style C++ APIs (Qt4), by Matthias Ettrich, 2005
  2. API Design Principles, extended version of (1), Qt Developer Network (Nokia)
  3. The Little Manual of API Design, an in-depth summary of (1) and (2), Jasmin Blanchette, 2008 (Nokia)
  4. Developing Quality Libraries, presentation of (1)-(3) on the Desktop Summit in Gran Canaria, Oliver Goffart, 2009
  5. How to Design a Good API and Why It Matters, Joshua Bloch, 2007 (Google)
  6. Qt Coding Style, good coding style not limited to Qt, Qt Developer Network (Nokia)
  7. Guidelines for KDE Development, similar to e.g. (6), KDE Techbase
  8. Hall of API Shame: Boolean Trap, Ariya Hidayat, 2011

Thanks to all the authors for sharing & happy reading!