[dot] Tokamak Sprint Turns Plasma Upside-Down

Dot Stories stories at kdenews.org
Mon Apr 21 15:52:37 CEST 2008


URL: http://dot.kde.org/1208785857/

From: Sebastian Kuegler <sebas at kde.org>
Dept: no-more-pizza-please
Date: Monday 21/Apr/2008, @06:50

Tokamak Sprint Turns Plasma Upside-Down
=======================================

   Tokamak, the first International meeting of Plasma
[http://plasma.kde.org] was held in Milano in northern Italy over the
last weekend. 14 people joined the fun and spent some days hacking on
the KDE 4 desktop shell. For the most part, it was like meeting friends,
only that some had never met each other in person before. The meeting
was filled with small sessions, such as discussing target users for
Plasma to optimise the Plasma interface for. Topics were target users,
underlying technology, scripting, integration with other parts,
webservice integration, visual presentation, porting of Plasma to new
technology in Qt, Italian profanity and how everybody loves pizza.
      Reaching out to new levels.  More photos in the gallery
[http://vizzzion.org/?id=gallery&gcat=Tokamak].


                           WIDGETS-ON-CANVAS

     Part of the meeting was dedicated to large changes under the hood
in Plasma. In Qt 4.3, which KDE 4.0 is based on, it was not possible to
use QWidgets on the QGraphicsView canvas. Trolltech has addressed this
problem in Qt 4.4, so we're now able to use QWidgets in Plasmoids. This
deprecated quite a lot of code in libplasma, so the Plasma developers
were able to remove that, reducing maintainance burden, size of the
codebase, memory footprint, but at the same time Plasma becomes more
powerful and easier to use for those that already know Qt. Moving over
to QWigets involved tearing large parts of Plasma into pieces and
putting them back together. Alexis spearheaded this effort and had other
people jump in from both, Tokamak hacking place, but also via IRC
directly. The worst breakage happened during Sunday, by Monday night,
quite a lot of Plasmoids were functional again, some with reduced
featureset, others with issues fixed. In any case, the Widgets-on-Canvas
port will be well worth the effort and pain of porting and will allow
for much more powerful Plasmoids.
  A Plasmoid scripted with JavaScript


                               SCRIPTING

     Richard Moore led the scripting effort that should result in a
two-fold API that makes it both easy and powerful API. The developer
base tends to be two-fold as well, people that prefer a very simple API
to quickly do easy things, and people that want full access to the
Plasma API and being able to use this powerful technology. This way,
writing Plasmoids should be easy for everyone. Details about this can be
found on Techbase
[http://techbase.kde.org/index.php?title=Projects/Plasma/NewWidgetDesign].
Richard has also shown the power of the Plasma scripting API by writing
a nifty demo plasmoid. Fredrik Höglund provided a version of Richard's
JavaScript demo that runs in a webbrowser
[http://ktown.kde.org/~fredrik/canvas/animatedrects.html] (works with
KHTML trunk, recent Firefox and Safari). In the future, we will be able
to run more Plasmoids in webbrowsers, blurring the traditional lines
between web and desktop.


                               API REVIEW

     In the KDE 4.2 timeframe, the Plasma developers plan to have
libplasma moved into kdelibs. Kevin and Richard started going through
the whole visible Plasma API shared thoughts about how to improve it,
noted them on the whiteboard and provided detailed suggestions how to
improve the API. Transscripts
[http://techbase.kde.org/index.php?title=Projects/Plasma/Tokamak1] of
the whiteboard are up on Techbase. Porting the API to this will start
soon.



                                ARTWORK

     Nuno Pinheiro presented his vision about Plasma. He made other
developers aware of how artwork works, and how that relates to writing
Plasmoids and theming capabilities. Nuno provided entropy to the
developers by broadening the scope of the meeting and providing
additional input from a non-developer's point of view.



                        CONTAINMENTS AND KRUNNER

     Chani has done some work on Containment switching. When zooming
out, the Plasma toolbox now shows an "Add Activity" button that can be
used to add a containment to the desktop. Those containments are
'customized' desktops that carry their own set of Plasmoids. This makes
it possible to have, for example, a "fun" containment with twitter
applet, a game plasmoids, comic and the like for freetime usage, and use
another containment with RSS Feeds from commits and a folderview
Plasmoid for coding work. This also lifts a bit of the curtain what this
"Zoom out" button in the toolbox actually is about. How this feature is
related to KWin's virtual desktop remains to be sorted, however.

     Riccardo and Davide have been working on the new user interface for
KRunner. While there is nothing visible yet (and the authors prefer to
keep mockups for it private for now), there is not much to see yet. Some
polishing of the artwork and text input has already been done, however.



                            NEW TECHNOLOGIES

     Andreas Aardal Hanssen dropped by for one-and-a-half days to tell
us about plans in Qt for the next months, and solve some problems with
us we have with QGraphicsView. Performance improvements in Plasmoids are
the direct result of this session, but it was also interesting to see
how well Trolltech listens to the Plasma community by planning for
implementation of features Plasma will greatly benefit from.

     Another visit to the Tokamak people was paid by two Italian
researchers who are currently working on a service oriented architecture
that could be used in Plasma to decouple services, such as DataEngines
from local machines and make them available on the network. Some Plasma
developers agreed to work with the JOLIE [http://jolie.sourceforge.net/]
researchers on a paper that will be presented to the research community
later this year.



                          TARGET USER PROFILE

     After Celeste started
[http://weblog.obso1337.org/2008/the-1-problem-in-oss-usability-and-what-im-going-to-do-about-it/]
 the target user research project only a couple of weeks ago, the first
results
[http://weblog.obso1337.org/2008/preliminary-results-of-modified-delphi-interviews-to-discover-plasma-user-types/]
were presented to the Plasma developer to seed them
[http://aseigo.blogspot.com/2008/04/who-are-our-users.html] into the
community and reflect those changes in Plasma's user interfaces.



                          THE FIRST MEETING...

     And most definitely not the last. The Plasma community, being quite
young is already flourishing. The humongous amount of work done proves
that this kind of sprint is an excellent means to jump ahead on
technology. It is surely not the last Plasma meeting, and yours truly is
already looking forward to "Tokamak II" (although there are no plans for
it yet, and some weeks without pizza will be appreciated). Also, Tokamak
would not have been possible without the support of the KDE e.V. and our
friendly host Riccardo Iaconelli and his family for their great display
of support for the Free Software desktop.



More information about the dot-stories mailing list