Monthly Archives: December 2009

Wechsel auf KDE SC 4.4

Einige werden es ja wissen, dass ich aktuell an meiner Masterthesis arbeite und dafür Akonadi aus der KDE Plattform in Version 4.4 einsetze. Es ist für meine Aufgabenstellung die perfekte Lösung. Nun nutze ich viele der Neuerungen in KDE SC 4.4 – nicht nur von Akonadi, sondern auch die neu Lösung des Systemabschnitts (Status Notifiers).

Nun hatte ich das Problem, dass ich das ganze schlecht testen konnte. Da die Status Notifier in KDE SC 4.3 nur experimentell waren und die API sich geändert hat, konnte meine 4.4 Anwendung nicht mit dem 4.3 Workspace „sprechen“ und die Funktionalität war nicht vorhanden. Meine Lösung für das Problem ist eigentlich ein zweiter X Server in dem eine reine 4.4 Sitzung läuft. Unglücklicherweise meint mein System aktuell sich aufzuhängen, wenn ich zwischen X Sessions wechsel. So auch heute als ich wieder testen wollte.

Da ich mittlerweile soweit bin, dass ich über den Einsatz im Produktivsystem nachdenke (d.h. ich vertraue meiner Implementierung so weit, dass ich sie auf meine E-Mails loslassen werde und keine Angst mehr vor Datenverlust habe) brauche ich eine 4.4 Sitzung. Also nach dem freeze bedingten Neustart hat es mir gereicht und anstatt in die 4.3 Sitzung hab ich zum ersten Mal mein Produktivsystem in das selbstkompilierte 4.4 gestartet.

Bisher hatte ich 4.4 immer nur zum Testen eingesetzt und das ist ja nicht wirklich vergleichbar. Nun sehe ich also zum ersten Mal im produktiven Einsatz die Früchte der Arbeit des letzten halben Jahres. Und ich bin wirklich begeistert. Das System fühlt sich bedeutend flüssiger an, die leichten Animationen fallen nicht störend auf, sondern machen das System angenehmer. Auch meine eigenen Implementierungen machen sich sehr gut: Alt+Tab ist eine tolle Verbesserung im Vergleich zu vorher und auch Aurorae gefällt mir gerade sehr gut – mittlerweile gibt es ja einige nette Themes. Von den anfänglichen Performance Problemen merke ich auch nichts mehr. Generell ist das Vergrößern der Fenster bedeutend angenehmer geworden.

Insgesamt fühlt sich 4.4 schon sehr rund an. Die Veränderungen sind größtenteils gering aber sehr nützlich. Hier sei bespielhaft die Verbesserungen von KRunner erwähnt: das Interface erscheint nun von KWin animiert an der oberen Bildschirmkante, die Einstellungen sind direkt in das Interface integriert und es gibt bedeutend mehr und sinnvolle Runner (auch einen von mir ;-) ).

Mit der jetzt von mir eingesetzten Version, die in etwa der Beta 2 entspricht, bin ich sehr zuversichtlich, dass 4.4 ein tolles und rundes Release wird. Wenn man mal überlegt wo die Community vor zwei Jahren stand… Nun haben wir die Säulen mit Nepomuk und Akonadi endlich integriert und der KDE Plasma Desktop ist einfach nur umwerfend. Ich war ja schon von 4.0 begeistert (vom technischen Standpunkt aus gesehen), aber dass sich das Produkt so hervorragend entwickelt, hätte ich dann doch nicht für möglich gehalten. Wer jetzt noch KDE 3.5 will, ist selber Schuld ;-)

=-=-=-=-=
Powered by Blogilo

About click through interfaces

I just read about Colibri and that motivated me to write a blog post I wanted to write for a long time. First of all I think it’s an improvement that the Ayatana notifications are now packaged and not patched into the system as in Karmic – one of the reasons why I am using Debian, now ;-) (I still think that notifications are a central part of the workspace and that a downstream should respect it’s upstream’s decision on that point.)

But that’s not the point of this post. I want to talk about click through. Aurélien advertises the Colibri notifications as click through, that you can interact with the window underneath. I think that is the failure by design of the Ayatana notifications. The fact that it’s missing actions in the notifications is just a consequence of it.

So what’s the problem with the click through? It requires compositing. A click through is only useful if the window you click through is translucent. But we do not always have compositing. There are systems where it still doesn’t work – even new ones. There are users who don’t want to use it and there are situations when kwin just turns it off due to bad performance.

Consider the situation that you are a user of a non composited environment and the notifications are shown on the upper right as in Aurélien’s screenshot. A notification appears and you click on it so that it goes away, because you do not know that they are queued. The window underneath the notification will be closed in the worst case if the click hit the close button. That’s probably not what Joe User expects. So when the environment is non-composited a click-through is a no go. The same is true if the notification is opaque or hardly translucent. But based on the description they fade away, so that is not a problem.

A solution to the non-composited environment is to make the notifications not click through when compositing is turned off. But that has drawbacks as well. Consider the situation that an experienced user knows about the click through and suspends compositing (something I do quite often). Now a notification appears and he wants to interact with the window underneath as he knows the geometry. The click is eaten by the notification although he expects that it goes through. So in that case we have a behavioral change which is in my opinion as bad as the not expected click through.

So we see as soon as compositing is turned off it breaks. So the fault in the Ayatana specification in my opinion is that functionality depends on visual representation. I’m pretty sure such a mistake would not have happened in Plasma as there are devs who can’t use compositing: "Erm you want to do that? I don’t have compositing that wouldn’t work for me." In kwin as well we ensure that compositing only adds additional features without breaking anything if compositing is turned off that is all compositing features are optional effects.

And just to make sure: this is of course no critic to Aurélien’s work. AFAIK he joined Canonical after the spec was designed and he just implemented the KDE part. I also appreciate that Ayatana is now using KDE’s status notifier spec instead of inventing yet another solution. So most of my critics on Ayatana’s approach which drove me away from Kubuntu are not valid any more (except the point mentioned in this post).

=-=-=-=-=
Powered by Blogilo

Der Schäfer verliert seine Schafe

Die aktuelle Diskussion in der GNOME Community, ob GNOME aus GNU aussteigen soll, finde ich interessant und möchte hier meine Gedanken dazu äußern. In diesem Post wird die FSF und RMS kritisiert werden. Diese Kritik betrifft aber nicht den europäischen Ableger FSFE.

Zuerst einmal die Frage: „Was würde sich durch den Austritt ändern?“ Eigentlich nichts. GNOME als GPL lizensierte Software bleibt natürlich freie Software. Auch dürfte weder die GNOME noch die GNU Community dadurch Schaden nehmen. Beide sind groß genug um sich alleine tragen zu können und GNOME scheint sowieso nicht sehr in GNU integriert zu sein. Das einzige was passieren könnte, ist dass es schlechte Presse gibt. Hier kann man nur hoffen, dass die Communities es schaffen einen Rosenkrieg zu vermeiden.

Persönlich bin ich von der Entwicklung nicht überrascht – auch nicht, dass auf die versuchte Einmischung von Stallman mit der Diskussion über den Austritt aus GNU diskutiert wird. Für mich ist das nun die Zuspitzung einer sich seit langem abzeichnenden Entwicklung. Man denke nur an Stallmans Mono-Bashing oder die Rede auf dem Desktop Summit (die nun wohl noch in den Köpfen derjenigen rumschwirrt, die am Ende entscheiden). Stallman versucht sich in die Belange der GNOME Community einzumischen, ja sogar Forderungen zu stellen und diese mit der GNU Zugehörigkeit zu begründen. Dass dann in der Community der Gedanke aufkommen könnte die ungewollte Einmischung los zu werden, ist nachvollziehbar.

Über die Frage, ob proprietäre Anwendungen auf planet GNOME erwähnt werden dürfen, lässt sich natürlich diskutieren. Persönlich stören mich z.B. die vielen Mono Posting auch – besonders wenn es um irgendwelche Anwendungen auf proprietären Systemen geht. Aber betrachtet man sich die Zielsetzung des Planets, so sind diese Beiträge klar erlaubt. Gerade die Posts zu VMWare (der Stein des Anstoßes) halte ich sogar für recht wichtig, da es zeigt, dass bei VMWare Leute aus der Community arbeiten, Leute, die die Firma von innen heraus öffnen können. Verbietet man ihnen über ihre Arbeit zu bloggen, zerstört man am Ende vielleicht den kleinen Pfad, um VMWare zur Open Source Community zu führen.

Nun hatte ich ja im Juli das Glück eine Rede von RMS zu hören und seine Argumentation zu sehen. Für ihn gibt es schwarz und weiß, gut und böse. Freie Software gut, nicht freie (einschließlich OpenSource, d.h. z.B. BSD) böse. Gerade beim Beispiel Mono konnte man das recht gut sehen. Die Möglichkeit, dass sich Microsoft der OpenSource Welt hin öffnet, wird nicht gesehen. Microsoft ist böse, daher darf man nichts verwenden was von Microsoft kommt (sinngemäßes Zitat). Für die meisten Open Source Entwickler ist diese Argumentation natürlich nicht haltbar. Vor 20 Jahren konnte man freie Software mit dem Argument der Freiheit vermarkten. RMS hatte damals seine Jünger und eine Rede der Art hat perfekt gepasst. Heute sieht das anders aus. Freie Software muss nicht mehr die Freiheit hervorheben um sich gegen die Wettbewerber durchzusetzen, sondern kann nun auch die bessere Qualität als Argument liefern. Ich habe für mich selbst anlässlich der aktuellen Diskussion reflektiert, ob ich freie Software schreibe, weil sie frei ist oder weil es das beste Mittel zum Ziel ist. Letzteres ist der Fall. Ich möchte gute Software schreiben, die von vielen Menschen benutzt wird. Dass sie frei ist, ist toll, aber es ist nicht die Motivation die mich antreibt. Heißt auch, dass ich zum Beispiel kein Problem damit hätte an das LGPL lizensierte Qt Code beizusteuern oder an BSD lizensierte Projekte.

RMS hat seine Schafe verloren. War er früher der Hüter einer kleinen Gemeinde, die alle mit ihm übereinstimmen, so ist heute die Gemeinde viel größer. Sie läuft immer noch in die gleiche Richtung, aber braucht eigentlich keinen Schäfer mehr, der auf sie aufpasst und sie auf dem rechten Pfad führt. Versucht der Schäfer als Heiliger der Kirche von Emacs durch den Free Software Song seine Schafe zu sammeln, so wenden sie sich nur noch beschämt ab. Der Schäfer scheint aber noch nicht gemerkt zu haben, dass seine Herde gewachsen ist und ihn nicht mehr als Schäfer braucht und sich nicht mehr von ihm zurechtweisen lassen will. Natürlich ist es wichtig, dass es den Schäfer gibt, der auch mal auf Gefahren wie die Monoschlucht hinweist, aber er muss es so machen, dass seine neuen Schafe ihn verstehen. (viele der heutigen Entwickler lebten noch nicht einmal als das GNU Projekt gegründet wurde)

Die Verdienste von RMS sind natürlich wichtig. Aber in die heutige Zeit passt seine schwarz-weiß Argumentation nicht mehr. Die Entwickler können und wollen so eine Zielsetzung nicht akzeptieren, da sie tagtäglich zum Beispiel auch mit Open Source ihr Geld verdienen. Dass RMS und somit auch die FSF nicht mehr die Entwickler vertritt, merkt man an so vielen Kleinigkeite wie dem GNU/Linux Streit, Mono oder jetzt dem Planet. Ich hoffe, dass die FSF sich langsam aber sicher in gemäßigtere Wasser begiebt, so dass sich nicht die Entwickler von ihr abwenden und das wichtige Ziel des freien Software Gedanken auf der Strecke liegen bleibt. Ich denke die FSFE ist da ein gutes Vorbild.

=-=-=-=-=
Powered by Blogilo