From: Boris Kraut <krt@nurfuerspam.de>
Date: Mon, 20 Jul 2009 00:01:01 +0000
Category: 
Sender: 
Message-ID: <20090720000101.JVoS3a@silberbruch>  
References: 
Keywords: 
Comments: 
To: undisclosed-recipients: ;
Subject: Bad Browsers

Vor einige Zeit habe ich mich noch beklagt, dass der Browsermark kaum
Alternativen bietet und sich die ganze Situation ziemlich festgefahren
hat. Der "Wettlauf zum All" war nach den Mondlandungen bzw. nach dem
Ende des kalten Krieges beendet; es gab kaum noch Interesse daran, sich
auf dem Gebiet der Raumfahrt zu betaetigen und Neuerungen vorran zu
bringen...

  Anmerkung: Vor genau 40 Jahren, am 20. Juli 1969 (oder am 21. Juli, je
  nachdem von wo man es betrachtet..), betrat der Mensch zum ersten Mal
  den Mond. Nach einer halben Ewigkeit haben sich die meisten Weltraum-
  organisationen der Welt das Ziel gesetzt, wieder den Mond zu erreichen;
  ein erster Schritt in Richtung Mars. Ich hoffe, dass ich es noch erleben
  werde (den zuversichtlichen Planungen der Agenturen mag ich nicht so
  recht glauben), wenn Menschen wieder ein "neues Land" betreten; diesmal
  hoffentlich mit friedlicheren Absichten.

Aehnlich ging es auch nach dem "Browserkrieg" zu: Microsoft hatte gewonnen
und zog bis auf eine Rumpfcrew fuer den Support alle Entwickler vom IE
Projekt ab [1], Stagnation war die Folge. Erst nachdem die freie Re-
inkernation des Erzrivalen Netscape [2], Mozillas Firefox [3], zunehmend
zur Gefahr wurde, beschloss man, dass Team zu reaktivieren.

Zwar fuehrten diese Bemuehungen zu einem neuen (etwas kleineren) Wettlauf
und brachte ettliche neue Features hervor, aber die ingesamte Situation
war mehr als unbefriedigend. Waehrend Microsoft damnit begann seine alte
IE-Codebasis langsam an die Marktvorgaben anzupassen, versuchte Mozilla
dem IE mit neuen Funktionen davonzulaufen; auf Kosten der Leichtigkeit,
Schnelligkeit und Wartbarkeit, die den Firefox frueher auszeichnete.

Doch inzwischen war KHTML [4], die HTML-Rendering-Engine des KDE [5]
Projekts, so weit fortgeschritten, dass sie es mit Trident und Gecko mehr
als aufnehmen konnte. Zu dem war sie schneller und deutlich sauberer ge-
schrieben. Das nahm Apple zum Anlass, um sie in leicht veraenderter Form
in ihrem Browser Safari [6] zu nutzen; WebKit [7] war geboren. Letzteres
bildete dann die Basis fuer Google eigenen Browser, Chrome [8], der
erfrischend neuen Wind ins Spiel brachte. Chrome ist schnell, leicht und
quelloffen; ein Browser der begeistern koennte, waeren da nicht die
massiven Datenschutzprobleme. Letztere versuchen einige auf Chromium [9],
den Quellen von Chrome, aufbauende Browser von Drittanbietern [10] zu
beseitigen, aber so richtig Fuss fassen konnten diese noch nicht. Aber
ein Anfang ist gemacht, es herrscht wieder Wettbewerb und Neuerungen
sind bereits im Anmarsch.

Doch leider gehen viele Neuerungen in eine fuer meine eigenen Beduerfnisse
falsche Richtung. Die meisten werden wissen, dass ich immer darum bemueht
bin, die Dinge so einfach und so schlank wie moeglich zu halten. Meine
derzeitige Browserwahl ist die Kombination aus dem Textbrowser w3m [11]
und Firefox. Letzterer wurde neben einer sehr restriktiven Konfiguration
mit den Addons NoScript [12], AdBlock Plus [13], RefControl [14],
ModifyHeaders [15] und Vimperator [16] versehen. Der Textbrowser uebernimmt
die schnelle Recherche-Arbeit, Firefox ist fuer die ganzen Web2.0-Services
und Uni-Dienste verantwortlich; damit kommt man dann ganz gut klar. Ich
frage mich allerdings immer noch, warum Hochschulen solche teils total
kaputten Online-Dienste anbieten, die nur mit bestimmten Browsern nutzbar
sind (diesmal hat's den IE getroffen; ueber No-IE-Seiten habe ich mich
ja schonmal ausgelassen - sowas ist einfach kontraproduktiv). Aber ich
schweife mal wieder ab...

Waehrend ich mit w3m weiterhin sehr zufrieden bin (als Alternative teste
ich gerade netrik [17] von Olaf "antrik" Buddenhagen [18]), stoert mich
der Firefox doch schon sehr. Er ist zu schwerfaellig und langsam geworden;
auch wenn die Version 3.5 hier deutlich Boden wieder gut machen konnte.
Zudem ist die Bedienung selbst mit Vimperator alles andere als benutzer-
freundlich. Die meisten werden Vimperator wohl nicht als eine Verbesserung
empfinden, weil sie gewohnt sind mit der Maus zu arbeiten, aber die Maus,
ein Trackball oder Touchpad kosten einfach zu viel Zeit; einzige derzeit
einigermassen angenehme Variante ist der Trackpoint bzw. Pointing Stick.

Wenn man beispielsweise eine URL eingeben will, so muss man ja sowieso
die Tastatur bemuehen. Es ist daher unpraktisch vorher in die Adress-
leiste mit der Maus wechseln zu muessen, nur um kurz spaeter die URL
wieder auf der Tastatur eingeben zu muessen. Ein erster Schritt der
Verbesseung ist die F6-Taste, die das entsprechende Eingabefeld aktiviert.
Leider funktioniert das nicht immer zuverlaessig und F6 ist auch keine
Taste die sich besonders leicht erreichen laesst. In Vimperator kann ich
einfach "owww.heise.de" eingeben, um auf die Website von www.heise.de zu
gelangen. Das "o" am Anfang ist ein Kuerzel fuer ":open ", dem Befehl um
URLs in Vimperator zu oeffnen. Bei dem Beispiel gibt es noch ein zweites
Problem. Denn der Firefox (und fast alle anderen "normalen" Browser) nutzen
die Eingabezeile auch als Anzeige fuer die aktuelle Website. Auf den ersten
Blick scheint das auch sinnvoll zu sein, doch es hat seine Tuecken: So kann
es vorkommen, dass man eine neue URL eingeben will, aber die Website von
sich aus auf eine andere URL weiterleiten will. Dann passiert es, dass man
gerade in der Zeile tippt und sie aufeinmal mit der neuen URL der Weiter-
leitung ersetzt wird; das ist einfach nur nervig!

Ein weiteres Problem ist das Tabbed Browsing. Wie das? Tabbed Browsing
war eins der Killerargumente fuer den Firefox und gegen den Internet
Explorer, wie kann das jetzt schlecht sein? Nun, ganz einfach: Reiter
koennen in vielen Faellen sehr nuetzlich sein, aber sie sind nichts,
was ein Programm selbst verwalten sollte. Das Verwalten von mehreren
Fenstern ist Sache des Window-Managers (wie der Name schon sagt...) und
nicht des jeweiligen Programms. Sonst koennte es leicht sein, dass man
z.B. zwei Programme hat, die jeweils ein MultiDocumentInterface mit
Tabs benutzen, aber zum Wechseln der Tabs unterschiedliche Mechanismen
und Tasten benutzen. Man muss also erst den jeweiligen Workspace aus-
waehlen, dann das richtige Programm selektieren und als letztes sich
innerhalb des Programms durch die Reiter zu hangeln, wobei jeder der
Schritte eine andere Tastenkombination erfordert. Das kann nicht Sinn
der Sache sein. Stattdessen ist der urspruengliche Weg des IE eigentlich
der besserer. Er oeffnet fuer jede Website ein eigenes Fenster, dass der
Windowmanager verwaltet. Das Problem des IE war nur, dass er zuviel
Elemente im Anzeigefenster hatte und pro Instanz zu viel Ressourcen
vergeudete. Google hat das Problem erkannt und sorgte dafuer, dass Chrome
einen Hauptprozess fuer die GUI nutzt und jede Website in einem eigenen,
zusaetzlichen Prozess laeuft [19]. Auch beim IE8 besinnt man sich auf
diese alten Werte [20].

Vimperator kuemmert sich wie gesagt um viele dieser Probleme, aber einiges,
das vorallem im Hintergrund ablaeuft ist beim Firefox einfach nicht per
Addon zu reparieren. Da es aber nicht nur mir so geht, sondern auch viele
andere PowerUser die aktuellen Browser fuer untauglich halten, war es nur
eine Frage der Zeit, bis man die Sache selbst in die Hand nimmt und einen
wirklich benutzbaren Browser programmiert: Uzbl [21] - a usable browser!

Uzbl ist ein Browser, der auf WebKit aufbaut und einen radikal anderen
Ansatz verfolgt. Pro Website gibt es ein Hauptfenster, dass standardmaessig
nicht mehr anzeigt als eine kleine Statusleiste und die Website. Auch
funktional sieht es eher mau aus, beispielsweise es gibt keine eingebaute
Verwarltung fuer Lesezeichen. Der Vorteil von Uzbl ist aber, dass er fuer
jede Funktionen Schnittstellen nach aussen bereitstellt, so dass man per
FIFO-Dateien oder Sockets den Browser komplett kontrollieren kann. Dieser
Baukasten hat das Zeug dazu, Firefox bei mir demnaechst komplett abzuloesen,
aber Vorsicht, der Browser ist nichts fuer [22]..

..people who want a browser that does everything
..people who want a browser with things like a built-in bookmark manager,
  address bar, forward/back buttons, ...
..people who expect something that works by default. You'll need to read
  configs and write/edit scripts
..people who like nothing from this list: mpd, moc, wmii, dwm, awesome,
  mutt, pine, vim, dmenu, screen, irssi, weechat, bitlbee

Sobald ich etwas mehr Zeit auf der Hand habe, also in den Semesterferien,
werde ich mir das Projekt genauer ansehen!

Update: Es gibt auch noch Vimpression [23], ein Vimperator mit WebKit und
Surf [24] von suckless.org [25]; beide haben ebenfalls Potential.


[1] http://www.heise.de/newsticker/meldung/48437
[2] http://www.netscape.com/
[3] http://www.mozilla.org/firefox/
[4] http://developer.kde.org/documentation/library/kdeqt/kde3arch/khtml/
[5] http://www.kde.org/
[6] http://www.apple.com/safari/
[7] http://webkit.org/
[8] http://www.google.com/chrome/
[9] http://www.chromium.org/
[10] http://www.srware.net/en/software_srware_iron.php
[11] http://w3m.sourceforge.net/
[12] http://noscript.net/
[13] http://adblockplus.org/
[14] http://www.stardrifter.org/refcontrol/
[15] http://modifyheaders.mozdev.org/
[16] http://vimperator.org/
[17] http://netrik.sourceforge.net/
[18] http://tri-ceps.blogspot.com/
[19] http://en.wikipedia.org/wiki/Google_chrome
[20] http://en.wikipedia.org/wiki/Internet_explorer_8
[21] http://www.uzbl.org/
[22] http://www.uzbl.org/readme.php
[23] http://projects.ring0.de/webkitbrowser/
[24] http://surf.suckless.org/
[25] http://www.suckless.org/