Über das Verschleiern von E-Mail Adressen

Viele Leute verschleiern ihre E-Mail-Adresse auf Webseiten in der Hoffnung, dass Bots diese nicht aus der Webseite extrahieren können. Das könnte wie folgt aussehen:

email [AT] example [dot] tld

Diese Vorgehensweise wird zum Beispiel von Mailmans Archiv Pipermail und der MARC E-Mail Schnittstelle, welche von KDE Mailinglisten verwendet wird, angewendet. Manche Leute bitten sogar darum “E-Mail-Adressen nicht unverschleiert im E-Mail Text zu zitieren”.

Ist das Verschleiern von E-Mail-Adressen überhaupt sinnvoll? Gewinnt man dadurch mehr Sicherheit?

Die Antwort ist Nein. Die Verschleierung ist eine CAPTCHA Variante (Completely Automated Public Turing test to tell Computers and Humans Apart). Ein CAPTCHA erfordert, dass ein Computer das Künstliche Intelligenz Problem nicht lösen kann, wenn er Zugriff auf alle Informationen hat, welche benötigt werden um den Test zu erstellen. Gestern hab ich versucht zu beweisen, dass diese Art von CAPTCHAs geknackt ist und hab dazu eine kleine Anwendung geschrieben, welche die E-Mail-Adressen von einem öffentlichen Pipermail Archiv extrahiert. Die Anwendung besteht aus weniger als 300 Zeilen Code und kann automatisch alle E-Mails für einen gegebenen Monat und Jahr herunterladen und die Sender Adresse extrahieren durch das Rausziehen aller a Elemente der online abrufbaren E-Mail. Auf diese Elemente wird ein regulärer Ausdruck angewendet um die E-Mail Adresse zu erhalten. Ich wollte eigentlich nur etwa eine halbe Stunde daran arbeiten, am Ende hab ich dafür Qt 4.6 kompiliert, weil ich das neue QWebElement benötigte 😉 Falls jemand Interesse am Quellcode hat, kann ich ein Repository auf gitorious anlegen.

Das folgende Bild zeigt das Ergebnis eines “Angriffs” auf das plasma-devel Archiv. Aus Datenschutzgründen hab ich den Nutzerteil der E-Mail-Adressen unlesbar gemacht.

Picasaweb

Ich bin der Meinung, dass keine verlässliche Möglichkeit existiert E-Mail-Adressen nur durch Text zu verschleiern. Wenn es einen Algorithmus zum Verschleiern gibt, dann gibt es auch einen regulären Ausdruck um die Verschleierung aufzuheben. Die einzige Möglichkeit eine E-Mail-Adresse zu schützen, ist sie nirgends anzugeben wo ein Bot sie aufsammeln könnte. Dazu könnte man sie durch ein “echtes” CAPTCHA ersetzen, welches die E-Mail-Adresse nach dem Lösen preisgibt. Für Webseiten existiert zum Beispiel die Mailhide API von reCAPTCHA. Für Mailinglisten ist das ganze komplett nutzlos, da die Adresse sowieso unverschleiert in den E-Mail Headern steht. Anstatt Webseiten zu parsen könnten Bots auch einfach die Mailingliste abonnieren.

Also bitte hört auf die E-Mail Adressen zu verschleiern. Es ist nutzlos und man kann nicht mehr auf E-Mail Links klicken. Stattdessen muss der Leser ein nutzloses CAPTCHA lösen.

About obfuscating email addresses

Many people obfuscate their email address on web sites in the hope that bots are unable to extract their address from websites. That could look like the following:

email [AT] example [dot] tld

This approach is for example used by Mailman’s archiver pipermail and the MARC mail interface used by the KDE mailing lists. Some people even ask to “not quote the e-mail address unobfuscated in message bodies”.

So is it useful to obfuscate the email address? Does that add any security?

The answer is No. This obfuscation is a kind of a CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) which requires that a computer cannot solve the Artificial Intelligence problem when it has access to all information required to create the test. Yesterday I tried to proof that this kind of CAPTCHA is broken and wrote a small application which is able to extract the email addresses from a public pipermail archive. The application is less than 300 lines of code and can automatically download all emails for a given month and year and extract the sender’s address by just extracting all a elements from the online accessible emails and applying a regular expression on the text to get the email address. I only wanted to work half an hour on that. In the end I had to compile Qt 4.6 because I needed the new QWebElement 😉 If someone is interested in the source code I could create a repository on gitorious.

The following image shows the result of an “attack” on the plasma-devel archive. For privacy reasons I blurred the user part of the mail address.

Picasaweb

I don’t think there is any reliable way to obfuscate an email address using simple text. If there is an algorithm to obfuscate the address, there is a regular expression to unobfuscate the email. The only way to protect an email address is to not include it anywhere where a bot could harvest. That is replace it by a “real” CAPTCHA that will reveal the email address when solving it. For websites there is for example the Mailhide API of reCAPTCHA. For mailinglists that is completely useless as the email address is already included in plain text in the email headers. Instead of parsing websites bots could just subscribe to the mailinglists.

So please stop obfuscating your email addresses. It is useless and makes it impossible to just click on an email link. Instead the reader has to solve the useless CAPTCHA.

Why distributions shouldn’t ship development versions

At Desktop Summit Lubos asked me what openSUSE has to do that I will switch back to SUSE. I replied that I am satisfied with Kubuntu and so I don’t see any need to switch the distribution. So what has changed since July?

Kubuntu will ship the Plasma Netbook Shell in their next release. Of course the Netbook Shell is under heavy development and will be shipped in KDE 4.4 for the first time. Given the current release plan we can consider the current state as pre-alpha. But that seems not to be any problem for Kubuntu – they even are able to support it for 18 months as it is in the main repository. They are even able to ship a recent SVN revison: the current package is svn rev 1016996. So quite decent and no problem at all, isn’t it? Well no, KDE 4.3 got branched way before and since then trunk is KDE 4.4 and code in trunk may depend on trunk. But if there were a dependency it would break at compile time, wouldn’t it?

But couldn’t there be runtime dependencies? No way, that’s totally impossible. It’s a plasma netbook shell, not a KDE workspace netbook shell! So it’s totally impossible that KWin added changes to improve the netbook shell. So we have in the netbook shell a commit with this commit message:

Activate present windows by setting a property instead of faking keys. Requires kwin svn rev 988110

Of course a distribution checks all the svn log entries and knows about such issues. So they will probably use the old code, which was just a placeholder to be replaced as soon as trunk becomes 4.4 as happened. So I downloaded the source package and woops it contains my commit. Hmm so there is still the possibility that KWin was patched. That would be really bad as present windows received lots of changes at the beginning of 4.4 release cycle. Which is great but shouldn’t be shipped in a distribution before it has been tested probably. So I thought, let’s check the patches in bazaar. Well there is no such patch to KWin. So the applet is basically broken in the Kubuntu edition. Kubuntu will not only ship and advertise a development snapshot, they will be shipping broken software. (which btw is not the first time that Kubuntu ships development snapshot unsuited for usage – just remember the NetworkManager Plasmoid).

Update: Kubuntu assured that the Plasma Netbook Shell will only be published as a tech preview and that it will communicated as that. This makes of course the points mentioned above invalid.

While browsing the patches in bazaar I found a different patch which really upset me. It is a patch which was discussed on kcd last week and was rejected by all workspace developers who replied to that patch. So a patch which is not good enough for KDE is good enough for Kubuntu. I though Kubuntu wants to be the best KDE distribution. Sorry, that isn’t. I am disappointed and I think it is a bad sign if decisions by the upstream project are ignored (the change to package kdebase-workspace was commit after the discussion started on kcd). I objected to the patch for technical reasons and there was agreement to improve the notification instead of stepping back to present nag dialogs.

For quite some time I am disappointed by the developments of Kubuntu. With 4.3 packages the translations broke again (as every half year) and that is just the worst which could happen to user experience. Because of that problem I stopped to recommend Kubuntu to my friends. But now I see a development in Karmic which I do not want to use myself. There is a broken development snapshot of the netbook shell, an alpha release of k3b is shipped, which is not even shipped by Fedora, because it “isn’t quite ready, and not recommended for use by upstream” and Karmic will ship an additional notification system, which doesn’t support actions, to “test” how KDE users will get along with it. I don’t have any problems with Canonical deciding to develop and ship a different notification system but as soon as it degrades the KDE workspace it has to stop. By shipping that patch there is a degeneration of the user experience as a dialog is shown instead of a notification. If you doubt that the change was done just because of the Ayatana notifications please read this mail. I do not want to know how many additional changes there are breaking user experience.

Update: Scott stated in the comment section that the patch is controversial in the Kubuntu community and it has not yet been decided if the patch will be shipped.

So to me this is the end. It’s time to part from Kubuntu after four years of usage as I cannot say any more that it is a good KDE distribution and satisfies my needs. I won’t update to Karmic and instead will install a different distribution. I do not yet know which one I will choose, maybe I return to openSUSE, maybe I will use Debian testing/unstable or switch to Gentoo. Probably Debian will win as I do not want to learn a different packaging system.

14 Tage im September

In den letzten zwei Wochen habe ich etwas gemacht, was ich eigentlich immer für mich ausgeschlossen hatte: ich stand in der Innenstadt und habe für Stimmen bei einer Wahl geworben. Nun ich denke es ist nicht schwer zu erraten für welche Partei ich geworben habe – bin aber (noch) kein Mitglied. Auch wenn es am Ende nicht für den eigenen Balken gereicht hat, blicke ich positiv auf diese zwei Wochen zurück und bin mit dem Ergebnis zufrieden. Meine persönlichen Highlights waren zum einem ein Rentner, dem ich erklären konnte, dass man löschen und nicht sperren muss, sowie eine Studentin, die an den Stand kam mit der Aussage, dass sie auf dem Weg zum Wählen im Rathaus ist und überzeugt werden möchte. Am Ende hat sie Infomaterial für ihre Mitbewohner mitgenommen.

Insgesamt hab ich (gläsernes Mobil miteingeschlossen) an fünf Infoständen teilgenommen. Jedes Mal war es an einem anderen Ort und jedes mal war es anders. Es ist interssant wie in einer Stadt wie Mannheim ein einzelnes Quadrat ein komplett anderes Publikum anzieht.

Von den Erfahrungen vom Infostand hätte ich bedeutend mehr Stimmen für die Piraten erwartet. In der Innenstadt kamen wir an die fünf Prozent ran, in der Neckarstadt konnten wir sie sogar knacken. Dennoch hätte ich bedeutend mehr erwartet. Andere Parteien hatten bedeutend kleinere Infostände, mit weniger Personal besetzt und auch nicht die komplette genehmigte Zeit, sondern nur ein paar Stunden. Wobei man anmerken muss, dass zumindest die SPD gewandert ist, daher schwer zu sagen, wie lange sie tatsächlich als standen.

An den Infoständen konnten wir bedeutend mehr Leute anziehen. Viele sind auf uns zugekommen und haben direkt gesagt, dass sie Piraten wählen werden. Viele – vor allem ältere – haben uns für unser politischen Engagement gelobt. Vielleich doch für einige überraschend, dass die eigentlich als politikverdrossen geltende Jugend sich für Bürgerrechte und Grundgesetz einsetzt.

Nun zurückblickend mit dem erzielten Ergebnis denke ich, dass ich eine selektive Wahrnehmung hatte. Ich sah wie fast jeder, der zu uns an den Stand kam uns sagte, dass er Piraten wählt und ich sah, wie sich zum Beispiel bei den Linken niemand für den Stand interessiete. Es scheint wohl doch sehr viele Wähler zu geben, die in ihrem Lager wählen und nicht in der Innenstadt den Wahlkampf besuchen.

An einem Infostand zu stehen und den Leuten immer wieder das gleiche zu erklären ist doch bedeutend anstrengender als ich erwartet hatte. Aber ich hab an mir selbst gemerkt, dass ich zu Ende bedeutend sicherer die Ziele der Piratenpartei erklären konnte und auch mit den kritischen Themen wie Tauss und Junge Freiheit besser zurecht kam. Tauss war sicherlich eines der am schwierigsten zu vermittelnden Themen. Viele Leute konnten nicht verstehen wie man jemanden in die Partei aufnehmen kann, obwohl er verdächtigt wird bzw. angeklagt wurde. Eigentlich beängstigend für wie viele die Unschuldsvermutung bei einem Thema wie Kinderpornographie nicht mehr gilt. Manche konnten sich das komplexe Thema erklären lassen, für andere sind die Piraten unwählbar, wegen der Personalie Tauss. Persönlich denke ich, dass Tauss langfristig für die Partei ein Gewinn ist, auch wenn es bei der ersten Wahl vllt. ein paar Stimmen gekostet hat.

Nun wie geht es weiter? Die Piraten haben (zum Glück) den Einzug in den Bundestag nicht geschafft. Es wäre natürlich interessant gewesen und mMn die gerechte Strafe für Frau von der Layen, aber genau betrachtet wäre die Partei darauf nicht vorbereitet gewesen. Nun gilt es also den Schwung der Partei mitzunehmen und zu bewahren. Einen klaren Erfolg haben die Piraten sicherlich erreicht: Guido Westerwelle nennt die Bürgerrechte wieder als ein Ziel für seine Regierung. Klar sieht er die zwei Prozent und denkt sich “das könnten meine sein” und nun hat er die Chance zu beweisen, dass er es Ernst meint. Die Piraten werden ihn bewachen und am Ende ihn an seinen Taten messen und somit Material für den nächsten Wahlkampf haben. Sollte wider Erwarten die FDP sich wirklich für die Bürgerrechte einsetzen und somit die Piratenpartei obsolete machen, habe ich auch kein Problem damit. Mir geht es in erster Linie um die Sicherung des Grundgesetzes und der Bürgerrechte.

Wenn ich mir das Wahlergebnis – insbesondere das Ergebnis der SPD – anschaue, so stelle ich fest, dass endgültig die Zeit der Volksparteien vorbei ist. In BW liegt sie nur ein Prozent vor der FDP. Das zeigt dass der Bevölkerung einzelne Themen bedeutend wichtiger sind und sie Parteien mit einer “Kernkompetenz” wählen. Von diesem Standpunkt aus betrachtet scheint der wenige Themenwahlkampf der Piraten eigentlich langfristig die richtige Strategie zu sein. Dennoch muss die Partei zur nächsten Wahl ein umfassendes Programm ausarbeiten – die Leute auf der Straße verlangen danach. Die Ausrede “junge Partei” zieht vllt. bei der ersten Wahl, bei der zweiten sicherlich nicht mehr.

Lockdown Systeme mit KIOSK

Ich hab heute meinen Rechner einmal komplett dicht gemacht und möchte mal vorstellen, wie man so etwas machen kann. Die Anforderungen waren: es soll möglich sein eine statische HTML Seite zu benutzen und mehrere Videos anzuschauen. Es soll unmöglich sein andere Anwendungen zu starten oder irgendwelche Dateien zu öffnen. KDE bietet mit dem KIOSK Framework im Prinzip alles was man braucht.

Ich habe natürlich einen extra Nutzer welcher mein Home Verzeichnis nicht einsehen darf. Damit sind schon mal sämtliche Dateien geschützt.

Die Idee war nun Konqueror entsprechend zurecht zu manipulieren. Moment Konqueror? Einen Dateimanager so verändern, dass man keinerlei private Daten sehen kann? Ja KDE macht’s möglich 😉 Über eine Fensterspezifische Regel wird Konqueror in den Vollbildmodus gezwungen. Da es eine Regel ist, kann man diesen auch nicht mehr beenden. Globale Shortcuts werden auch geblockt, somit ist es nicht möglich über Alt+F2 neue Anwendungen zu starten oder über Alt+F4 oder Strg+Alt+Esc Konqueror zu beenden. Zusätzlich werden alle wichtigen Shortcuts deaktiviert. Also zum Beispiel Strg+Q zum Beenden. Damit ist es über die Tastenkürzel nicht mehr möglich aus Konqueror rauszuwechseln.

Nun muss natürlich noch mehr bearbeitet werden, zum Beispiel die Werkzeugleisten. Hier kann man die Adressbar entfernen und somit das Wechseln in ein Verzeichnis verhindern und plötzlich ist Konqueror kein Dateimanager mehr.

Aber es ist ja immer noch möglich die Konfiguration wieder aufzurufen und alles rückgängig zu machen. Hier kommt nun KIOSK zum Einsatz. Man muss nur eine systemweite kdeglobals Datei bearbeiten und kann dann einige Restriktionen definieren. Z.B. das Starten der Konsole unterdrücken oder das Konfigurieren der Shortcuts verhindern. Damit sind die Werkzeugleisten und Shortcuts abgesichert.

Aber über das Menü kann man ja immer noch Konqueror beenden. Schlecht, also muss man auch noch mal dran. Zum Glück kann man die Menüs über XML Dateien verändern. Also einmal die ~/.kde/share/apps/konqueror/konqueror.rc anfassen und sämtliche Einträge entfernen und TATA es gibt kein Datei Menü mehr. Konqueror lässt sich nicht mehr beenden.

Last but not least muss man noch ein bißchen weiter schauen, da Konqueror auch weitere Programme startet. So zum Beispiel konnte ich den Quellcode zeigen Menüpunkt nicht entfernen. Also noch mal eine Regel für KWrite anlegen und globale Shortcuts definieren. Anwendung selbst ist auch über KIOSK sicher. Gleiches für den Video Player.

Damit ist das Ziel erreicht: Konqueror ist auf den minimalen Bereich eingeschränkt, welcher über die Startseite vorgegeben ist. Es lassen sich die Videos öffnen, aber keine anderen als die vorgegebenen.

Sicherheitshalber sollte man noch Plasma beenden, damit nicht plötzlich der KMenü Button in den Vordergrund kommt. Wenn man wirklich nur eine Anwendung braucht, könnte man auch noch den Fenstermanager ausschalten. Aber da der Videoplayer gestartet werden soll, geht das in diesem Fall nicht.

Das war das erste Mal, dass ich KIOSK eingesetzt habe und die Mächtigkeit ist einfach gigantisch. Mir war durchaus bewusst, dass KDE ein gutes Lockdown System hat, hatte es aber noch nie getestet. Und mit dem Wissen, dass das ganze in der kommenden Version weiter ausgebaut wird, kann man wirklich sagen, dass KDE eine gute Grundlage für den Einsatz in Unternehmen hat um z.B. ein Corporate Design durchzudrücken äh einzusetzen.

Opt Out Day

Heute ist der Opt Out Day. Die Meldebehörden haben das Recht persönliche Daten weiterzugeben, z.B. an Parteien für Wahlwerbung oder sogar für Direktwerbung. Diesem kann man natürlich Widersprechen und wem informationelle Selbstbestimmung wichtig ist, sollte dies auch machen. Dafür wurde heute der Opt Out Day angesetzt. Eigentlich sollte die Weitergabe ja ein Opt In sein, aber lieber ein Opt Out als gar keine Möglichkeit sich dagegen zu wehren. In den Einwohnermeldeämtern gibt es Formulare, zum Teil sogar online verfügbar. Also ausdrucken, unterschreiben und heute beim Meldeamt vorbeibringen oder wenn man keine Zeit hat, die 55 Cent für mehr informationelle Selbstbestimmung investieren.

Für Mannheimer Leser: heute um 16 Uhr findet eine gemeinsame Übergabe der unterschriebenen Forumulare vor dem Einwohnermeldeamt in K7 statt.

Quick tiling and TabBox updates

During the last weeks quite some work has gone into KWin, which is great and needs to be mentioned here. First of all a big thanks to Hugo Pereira for his work on Nitrogen. You might have heard that we imported Nitrogen from kde-look.org to replace Ozone. Lots of work and realy great improvements has gone into it and it’s just awesome that we can provide the two highest rated window decorations from kde-look in the next KDE release. If you want to see some screenshots have a look at the web gallery. I hope we will finally merge Nitrogen back into Oxygen and only provide one decoration.

As already mentioned in the dot story I worked on a feature known as “Aero Snap” during Tokamak. (Btw. big thanks to Mario for the great event and thanks to the Plasma crew for the invitation. You are a great group of people 😀 And I hope I will find the time to go to next Tokamak.) Currently a new contributor, Robin, is working on adding keybindings to quick tiling, so it will rock even more. It’s difficult to show it in a screenshot, but here it is:

Von KWin

Finally (un)loading effects does not result in flicker any more. This is a real improvement but it feels strange when you are used to the flicker as indication that the changes were successfully applied. The fix will be backported to 4.3.2 and thanks a lot to Robin for the help on that one.

One of the biggest changes for 4.4 so far is the new TabBox which has been merged into trunk today. I already blogged about it but some things have been improved since last time. It’s now possible to have two independent switchers with different shortcuts. So you can have for example alt+tab with windows from all desktops and meta+tab with windows only from current desktop. It’s also possible to assign different effects to the two switchers which allows to use both the “normal” TabBox as well as a fancy switcher (when effects are disabled it will of course fall back to the normal switcher). Most improvements went into the classic switcher so far, but some will be implemented in the effects as well. E.g. switching with cursor keys might be useful if you use Present Windows. One of the nice new features is that you can close a window with middle click on the entry in the list.

Since my last blog post I improved the KCM as well. The layout bits were moved into an own dialog with a live preview (sorry for the black border, it worked correctly yesterday evening):

Von TabBox
Von TabBox

Wie ein PPA das Upgrade zerstören kann

Auf Grund der neuen Richtlinie des ubuntuusers Wikiteams zu PPAs möchte ich einfach mal ein Beispiel geben, wie leicht es sein kann durch ein PPA sein System in einen Zustand zu bringen, dass man nicht auf die neuste Version aktualisieren kann.

Als Beispiel nehme ich die KDE Fensterdekoration Aurorae. Sie ist für KDE 4.3 und es gibt noch keine Pakete für Jaunty. Es befindet sich in den Paketquellen für Karmic als kwin-style-aurorae und in Karmic+1 wird dieses Paket entfernt werden, da Aurorae Bestandteil von KWin in KDE 4.4 ist. Das ist wichtig im Verlaufe dieses Blogposts zu erinnern.

Angenommen ich hätte mit der Veroffentlichung von Aurorae auch ein Paket gebaut und in ein PPA gestellt. Zu dem Zeitpunkt hätte es noch kein Paket von Kubuntu gegeben und ich hätte mein Paket einfach mal aurorae genannt. Das Namensschema ist mir nicht bewusst. Ich hätte natürlich das PPA in den passenden Artikeln im ubuntuusers Wiki eingestellt. Ist ja nach den neuen Richtlinien abgedeckt, ich bin ja der Entwickler und weiß was ich tue.

Nun denke ich sollte das erste Problem schon erkennbar sein. Wenn ein Nutzer Karmic verwendet und die PPA Quelle freigeschaltet hat, dann hat er plötzlich zwei Pakete für die gleiche Software:

  • aurorae
  • kwin-style-aurorae

Diese Pakete enthalten exakt die gleiche Version und exakt die gleichen Dateien. Wenn man das Changelog mit den Maintainern entfernt, müsste – wenn ich korrekt gebaut habe – sogar die MD5 Summe übereinstimmen.

Mittlerweile existiert Karmic und ich biete die PPA Quelle nicht mehr an. Es befindet sich ja in den Paketquellen. Nun hab ich plötzlich einen schwerwiegenden Crash in der Dekoration festgestellt und behoben. Das ganze wird in trunk eingespielt und (weil wichtig) aktualisiere ich auch den tarball auf kde-look sowie informiere ich meine wichtigsten Downstreams (openSUSE und Kubuntu), damit sie neue Pakete bauen. An meine alte Paketquelle für Jaunty denke ich nicht mehr – ich bin unter Stress.

Das Problem dürfte recht erkennbar sein: wer das Paket aus den offiziellen Quellen installiert hat, bekommt automatisch das Update. Wer das Paket aus dem PPA hat, jedoch nicht. Bugs werden nicht mehr behoben.

Nun dreht sich das Rad der Zeit weiter. Weitere sechs Monate sind vergangen und das Upgrade auf Karmic+1 steht an. Aurorae wurde Ende Januar/Anfang Februar in KDE aufgenommen. Die Kubuntu Maintainer wissen das und passen ihre Abhängigkeiten entsprechend an. kwin-style-aurorae wird ein virtuelles Paket und kdebase-workspace hat die Abhängigkeiten so gesetzt, dass das Paket entfernt wurde. Ein Upgrade verursacht kein Problem. An Aurorae wurde seit dem ersten Paket jedoch kaum noch gearbeitet. Insbesondere heißen die Dateien noch gleich und werden an die gleichen Stellen wie zuvor installiert.

Nun gibt es immer noch User, die mein Paket aus der Zeit von Jaunty verwenden. Was wird passieren? Sie machen ihr Upgrade. Die Kubuntu Entwickler haben ihre Abhängigkeiten angepasst, von meinem komischen Paket was ich seit Monaten nicht mehr anbiete, wissen sie jedoch nichts oder denken nicht dran. kdebase-workspace wird also mein Paket nicht ersetzen. Nun wird das Upgrade durchgeführt. Irgendwann wird kdebase-workspace aktualisiert und schwups haben wir ein Problem. Das Paket enthält Dateien, die schon exisitieren! Nämlich die Dateien aus dem Paket aurorae. Das Upgrade schlägt fehl. kdebase-workspace ist nicht installiert. Der Anwender sieht den Fehler und installiert erst mal munter weiter. Passiert ja mal, dass ein Paket nicht funktioniert. Dann macht er den Neustart – wie aufgefordert. Er meldet sich an, der Splash Screen kommt, der Splash Screen geht und der Hintergrund ist schwarz. Aber warum? Nun ganz einfach: kdebase-workspace wurde nicht aktualisiert. Also kein Plasma, kein kwin – kein Desktop und kein Fenstermanager. Man kann auf dem System keine Anwendung aus der grafischen Oberfläche starten. Man kann keinen Browser aufmachen um im Forum nachzufragen wie das Problem behoben werden kann. Man hat für den Normalanwender ein zuerstörtes System.

Ich hoffe ich konnte mit diesem kleinen Beispiel ganz gut aufzeigen warum PPAs und Fremdquellen im Allgemeinen ein riesiges Problem beim Update darstellen können. Wer sicher sein will, nimmt entweder keine PPAs oder nur die von den Maintainern, da diese ihre Abhängigkeiten anpassen.

Windows7sins oder Sünden der FSF?

Die FSF hat heute ihre neue Kampagne windows7sins gestartet. Ich bin mit (nach der großen Enttäuschung der Stallman Keynote beim GCDS) niedrigen Erwartungen auf die Seite gegangen und wurde dennoch enttäuscht. Ich muss mich wirklich fragen, ob die FSF in irgendwas besser ist, als Microsoft. Für mich klingt die Seite genauso wie eine FUD Kampagne von Seiten des Redmonder Riesens.

Nun der Artikel beginnt mit einem Windows 7 hat ein Problem, welches das gleiche ist wie alle anderen, es ist proprietär. Das ist recht subjektiv. Proprietäre Software ist Bestandteil unserer Marktsituation und das konkurrierende System einfach als Problem zu bezeichnen ist seltsam. Man stelle sich das mal in anderen Bereichen vor – ein Teeproduzent kann auch nicht die Kaffeetrinker als Problem bezeichnen

Kommen wir zu den Sünden:

Microsoft spends large sums on lobbyists and marketing to corrupt educational departments.

Hier wirft die FSF Microsoft Korruption vor. Ein ziemlich schwerer Vorwurf ohne Quellenangaben. Wäre ich auf der anderen Seite würde ich mir durchaus Gedanken machen wegen einer Verleumdungsklage. Betreibt Microsoft Korruption und die FSF hat Beweise, so müsste sie es – zumindest nach deutschem Recht – zur Anzeige bringen. Diesen Punkt ohne Quellenangabe zu nennen, ist nicht besser als FUD.

Die zweite Sünde ist nach deutschem Recht kompletter Schwachsinn. Mag sein, dass er in der USA stimmt, aber Software Lizenzen, die der Anwender zustimmen muss, sind nunmal bekanntlich nichtig, da es eine nachträgliche Änderung eines Kaufvertrags ist. Ein Ausspähen der Daten auf der Festplatte wie genannt, ist natürlich nach deutschem Recht auch verboten, selbst wenn es so in einem Lizenzvertrag oder AGB steht.

Bei der dritten Sünde – es geht um die Monopolstellung – wird mal schön übersehen, dass die Hardwarehersteller auch ein gewaltiges Interesse daran haben, dass neue Windows Versionen mehr Hardware brauchen. Ist ein gutes Geschäftsmodell von dem Hersteller und Microsoft profitieren. Da MS den schwarzen Peter zuzuschieben, ist nicht ganz korrekt.

Vierte Sünde: Microsoft entzieht zu früh den Support und man ist gezwungen neue Hardware zu kaufen. Aktuell ist Windows XP noch unterstützt. Man zeige mir das Desktopbetriebssystem der Konkurrenz welches seit 8 Jahren unterstützt ist. Da viele Firmen auch nicht auf Windows 7 migrieren werden, wird XP wohl auch noch eine Weile länger unterstützt werden.

Fünfte Sünde: Microsoft kämpft gegen offene Standards. Gemeint ist die OpenDocument gegen OpenXML Geschichte. Erneut wird ohne Quellenangabe Bestechung vorgeworfen (ja ich weiß, dass es nicht mit rechten Dingen zu ging) und es wird behauptet Microsoft würde nur das offene Format bekämpfen wollen. Dass vielleicht auch wirtschaftliche Interessen im Spiel waren, wie zum Beispiel das man nicht OpenDocument implementieren will, ist natürlich undenkbar.

Sechste Sünde: DRM. Nun da kann ich mal nicht mecker. Abgesehen davon, dass man bei einer Informationskampagne vielleicht lieber den richtigen Namen verwenden sollte, anstatt “Digital Restriction Management”. (Man bedenke: die FSF hat einen Brief an Firmen geschickt, die DRM einsetzen – da ist es nicht hilfreich von Restriction zu sprechen.)

Und die letzte Sünde: Die Gefährdung der User durch Malware, weil der Quellcode nicht offen liegt. Der Zusammenhang, dass proprietäre Software anfälliger für Malware ist als Quelloffene soll mir erst noch jemand zeigen. Security by Obscurity ist durchaus ein funktionales Mittel – wenn auch nicht gut. Dass es für Linux & Co. so wenige Viren gibt, liegt mMn nicht an der Quelloffenheit direkt, sondern eher an der besseren Codequalität durch die Quelloffenheit oder einfach am geringen Marktanteil. Auch bezweifel ich, dass Sicherheitslücken schneller geschlossen würden, wenn der Quellcode von Windows offen läge. Woher sollte denn urplötzlich die Community kommen, die den Code versteht.

Aber die FSF hat nicht nur einen Artikel mit den sieben Sünden geschaltet, sondern auch einen Brief an die Fortune 500 Unternehmen gesendet und auf die Kampagne aufmerksam gemacht und für frei Software geworben. Gemeinhin bezeichnet man unerwünschte Werbemail auch als SPAM. Schauen wir doch mal auf den Brief: die FSF bewirbt die Produkte “OpenOffice” und “GNU/Linux”. Wem fällt der Fehler auf? Richtig: es heißt “OpenOffice.org” – recht peinlich, wenn man nicht mal den Namen des Vorzeigeprodukt kennt. Noch schlimmer, wenn man in dem Brief Microsoft zitiert und in dem Zitat es richtig ist.

Und zu GNU/Linux brauche ich glaube ich nichts sagen. Es ist einfach idiotisch. Jeder sagt Linux, kaum einer kennt GNU, es sieht komisch aus und aussprechen kann man es auch nicht. Linux ist einfach mehr als nur der Kernel. Schau ich mir ein aktuelles Kubuntu oder OpenSUSE an, ist der GNU Bereich recht klein. Man bedenke auch, dass wenn man von GNU/Linux sprechen würde KDE nicht dazuzählen würde, da KDE bekanntlich plattformunabhängig ist. Benutzt man Linux als komplettwerk schließt es auch die Anwendungen ein, welche auch unter Windows und MacOS laufen. Eine Versteifung auf den Namen GNU/Linux für den Kernel ist also ein Bärendienst für Freie Software, weil es freie Projekte gibt, die klarstellen müssten, dass ihre Software auf mehr Architekturen als nur GNU/Linxu laufen. Es wäre schön wenn die FSF das einfach auch mal erkennen könnte, genauso wie die Verleugnung, dass es OpenSource Software gibt. (Im Brief ist mehrmals erwähnt, dass proprietäre Software ungleich freier Software ist – es gibt aber auch OpenSource Software). Gerade im Unternehmensumfeld ist Open Source eher bekannt und auch beliebter. Nicht umsonst gibt es die BSD und Apache Lizenzen.

Fazit: Alles in allem, finde ich die Kampagne nicht nur enttäuschend, sondern auch schwach und peinlich. Es passt richtig in das Bild, dass ich von der FSF in den letzten Jahren gesammelt habe und vor Kurzem mit der schlechten Rede Stallmans einen Höhepunkt erhalten hat. Ich habe schon oft gehört die FSFE sei nicht so schlimm – ich hoffe es stimmt.

TabBox der nächsten Generation

Dies ist eine Übersetzung des englischen Posts TabBox NG

Ich arbeite aktuell an der TabBox “Next Generation”. Für die, die nicht wissen was die TabBox ist: dies ist die Liste, welche angezeigt wird beim Benutzen von Alt+Tab in KDE. Sie kann zum Anzeigen von Fenstern und virtueller Arbeitsflächen (in statischer oder zuletzt verwendeter Sortierreihenfolge) verwendet werden. Zusätzlich ist es möglich die Liste durch einen KWin Effekt zu ersetzen.

Diese Neuimplementierung ist der zweite Teil meiner Überarbeitung von Alt+Tab. Der erste Teil ist bereits implementiert und verfügbar als Fenster Runner. Mit diesem kann KRunner auch die offenen Fenster anzeigen und bietet Interaktionen wie Schließen, Minimieren, etc. an.

In KDE 4.3 erhielt die klassische TabBox bereits eine nette visuelle Überarbeitung und sieht integrierter in den KDE Workspace aus. Warum sollte man also an einer neuen Implementierung arbeiten? Um diese Frage zu beantworten zeige ich eine Liste der neuen Funktionen:

  • Wenn die Liste nicht auf den Bildschirm passt, werden die Einträge nicht mehr entfernt, sondern die Liste scrollt.
  • Mausrad scrollt in der Liste
  • Anwender kann wählen zwischen horizontalem, vertikalem und tabularischem Layout
  • Navigation mit links/rechts/hoch/runter Tasten – nützlich für tabularisches Layout und Present Windows Effekt
  • Model für Fenster und für virtuelle Desktops: neue Wechselmodi erfordern nur das Schreiben eines neuen Models und eines Delegates. (Das könnte nützlich werden, wenn wir die Plasma Activities integrieren – mehr dazu nach Tokamak)
  • Statischen und zuletzt verwendete Desktop Wechseln ist nur eine andere Sortierung im Model
  • Optionale Integration des Highlight Windows Effekt
  • Outline des ausgewählten Fensters kann ausgeschaltet werden
  • Ausschalten der Liste zerstört nicht mehr das Verhalten
  • Und zuletzt: Komplett konfigurierbares Layout der Einträge. Dies bedeutet, dass der Anwender zwischen einigen vordefinierten Layouts wie ein informatives, ein kompaktes, ein nur kleine Icons, ein nur große Icons, ein nur Text und eigenen Layouts wählen kann. Zusammen mit dem Layout der Liste kann man sich nun eine TabBox, die wie die MacOS oder die Windows XP aussieht, ohne Probleme zusammenstellen.

Ich kann ja viel erzählen, aber ein Video, welches die neuen Funktionen zeigt, sagt mehr:

Download ogg video

Einiges ist immer noch zu implementieren:

  • Konfigurationsinterface für die Layouts der Einträge
  • Layouts für Desktop Einträge
  • Eine zweite optionale Liste welche nur den ausgewählten Eintrag zeigt – wird benötigt für nur Icon Modus zum Anzeigen des Namens (also MacOS Stil 😉 )
  • Hinzufügen einer zweiten TabBox mit eigenem Tastenkürzel und eigenen Einstellungen, so dass man zum Beispiel eine TabBox für Fenster auf aktueller Arbeitsfläche haben kann und eine für Fenster auf allen Arbeitsflächen.

Ich hoffe es in einen Stand für das Review zu bekommen wenn Tokamak beginnt, da ich mit dem Zug hinfahre und viel Zeit habe, daran zu arbeiten.

Ach und wenn man sich gewundert hat, warum die Focus Policy das Alt+Tab Verhalten zerstört: bitte einen Blick auf folgenden Screenshot werfen.

Von TabBox