Angeregt von einem Artikel meines künftigen Arbeitgebers über die Weiterentwicklung von Firefox in den Versionen 10, 11 und 12, möchte ich ein paar Gedanken über die merkwürdige Prioritätenvergabe der Mozilla Foundation loswerden.

Die Features der drei kommenden Versionen konzentrieren sich fast ausschließlich auf Komfort und die weitere Vereinheitlichung der Benutzeroberfläche. Natürlich sind dies bei einem Browser sehr wichtige Faktoren, aber meiner Meinung nach, hat Firefox viel größere Defizite, die Angriff genommen werden sollten.

Projekt Electrolysis

Wie der Name schon sagt, geht es um die Trennung des Ganzen in seine Bestandteile. Auf Firefox bezogen, soll das Projekt Electrolysis auf eine Aufspaltung des großen Firefox-Prozesses in mehrere Prozesse ermöglichen. Google setzt eine solche Architektur von Anfang an in Chrome ein. Es gibt einen Hauptprozess und für jeden geöffneten Tab einen weiteren Prozess. Desweiteren wird jedes Plug-In sowie jede Extension in je einen weiteren Prozess ausgelagert. Damit erreicht Google einen stabilen, effizienten Browser, der den Arbeitsspeicher nicht unnötig belastet und selbst bei einem Absturz eines Tabs, Plug-Ins etc.  immer noch weiterlaufen kann. Apple und Microsoft fanden diese Idee so gut, dass Safari 5 und der Internet Explorer 9 ein ähnliches Prozess-Modell verwenden.

Mozilla wollte ebenfalls auf den Zug aufspringen und hat daher das Projekt Electrolysis ins Leben gerufen. Als ersten Schritt wurde die Ausgliederung von Plug-In-Prozessen in Angriff genommen, die mit Firefox 3.6.4 vor knapp 18 Monaten ihren Weg in die offiziellen Releases fand.

Schritt 2 war die Teilung in den Hauptprozess und Einzelprozesse für die offenen Tabs. Da Mozilla offensichtlich keine Veranlassung sah, dass dieses Feature möglichst schnell in die Desktop-Version Einzug hält, wurde es zuerst in Fennec, die mobile Version von Firefox, implementiert —  durchaus sinnvoll, um mit den begrenzten Ressourcen effizient umzugehen. Seit März vergangenen Jahres ist Fennec im Android Market erhältlich. Viel getan hat sich seit dem nichts mehr. Die Projekt-Seite im Mozilla Wiki wurde zuletzt im April 2011 aktualisiert und auch an anderer Stelle finden sich kaum Hinweise, wie es mit der Entwicklung von Electrolysis weitergeht.

In Anbetracht des hohen Speicherbedarfs von Firefox, insbesondere wenn Extensions im Spiel sind, finde ich es sehr schade, dass sich hier nicht mehr tut oder der Fortschritt nur sehr mangelhaft kommuniziert wird. Firefox würde enorm von der Prozess-Aufteilung profitieren, sei es in Sachen RAM-Verbrauch, als auch Stabilität und Geschwindigkeit.

JavaScript

Sicherlich kann man der Mozilla Foundation zu Gute halten, dass sich die JavaScript-Leistung seit dem Release von Firefox 4 und 9 signifikant verbessert hat, dennoch besteht nach wie vor großer Aufholbedarf gegenüber Chrome. Mit IonMonkey ist ein neuer JIT in Arbeit, der das bestehende Konstrukt aus JägerMonkey bzw. TraceMonkey ablösen soll. Wie die Entwickler zugegeben haben, ist die aktuelle Architektur nur sehr schwer zu optimieren und daher wird IonMonkey zum Großteil komplett neu geschrieben.

Diese Bestrebung ist sehr löblich und wird sicher auch Früchte tragen, aber sie kommt reichlich spät und wird zu dem auch viel Zeit in Anspruch nehmen. Wir können froh sein, wenn IonMonkey am Jahresende seinen Weg in die offiziellen Releases findet. Aber die Konkurrenz schläft nicht und Google hat schon ein paar mal bewiesen, dass sich massiv an der Performance-Schraube ihres eigenen JITs, V8, drehen können. Verbesserungen von 10 – 30% mit einem Release waren keine Seltenheit. Microsoft, Opera und Apple werden ebenfalls daran arbeiten die JavaScript-Leistung ihrer Browser deutlich zu verbessern.

Firefox läuft hier Gefahr ins Hintertreffen zu geraten und daher sollten die Bestrebungen für IonMonkey unbedingt verstärkt werden. JavaScript ist heute unverzichtbarer Bestandteil der meisten Websites und Rich Internet Applications werden zunehmend wichtiger, insbesondere da Microsoft endlich eingesehen hat, dass der Internet Explorer technisch weiterkommen muss.

Profile

Wenn Firefox sich seltsam verhält, oft abstürzt oder sich anderweitig unangenehm bemerkbar macht, wundern sich viele, dass eine Neuinstallation nichts bringt. Die Universalwaffe gegen Windows-Probleme versagt hier kläglich, weil die Nutzerdaten, Einstellungen und Extensions als separates Profil in den Anwendungsdaten bzw. im Home-Verzeichnis gespeichert werden und dort auch bleiben, wenn man den Browser deinstalliert. Wird Firefox neu installiert, greift er auf dasselbe Profil wie die vorherige Installation zu und hat daher auch die gleichen Probleme.

Probleme mit den Profilen ziehen sich leider immer wieder quer durch die gesamte Geschichte von Firefox und gab es auch schon vorher in der Mozilla Suite — heute besser bekannt als SeaMonkey. Warum das so ist, ist bisher nicht klar geworden. Im Verlauf der Firefox-Entwicklung hat Mozilla in den Profilen einiges verändert.

Vieles, was früher in simplen Text-Dateien gespeichert wurde, befindet sich heute in SQLite-Datenbanken. Damit konnte man z.B. Dinge wie die AwesomeBar, die intelligente Adressleiste, realisieren. Leider ergaben sich hierbei aber neue Probleme. Insbesondere die Browsing History wird sehr ausgedehnt gespeichert, damit aber sehr groß und mit der Zeit auch immer langsamer. Wer keine SSD sein Eigen nennt, kennt die teils langen Startzeiten von Firefox, die unmittelbar damit zusammenhängen. Selbst wenn das Fenster inzwischen geöffnet wurde und man etwas in die Adresszeile eingibt, kann es teilweise mehrere Sekunden dauern, bis überhaupt eine Reaktion erfolgt.

Selbst neue, frische Profile sind manchmal kein Garant dafür, dass Firefox rund läuft. Erst letztens gab es in meinem Freundeskreis den Fall, dass der Browser mit einem ein paar Wochen alten Profil plötzlich regelmäßige Aussetzer hatte und nicht mehr reagierte. Erst ein ganz neues Profil beseitigte dieses Problem.

All dies ist nur ein kleiner Teil mir bekannter Profilprobleme. Mozilla sollte daher schleunigst etwas dagegen unternehmen.

Fazit

Wie man unzweifelhaft sieht, hat Firefox viele technische Macken bishin zu wirklich großen Handicaps. Vielen Nutzern mag dies aktuell noch egal sein, weil sie nicht betroffen sind oder es ihnen egal ist, wie schnell ihr Browser ist. Derzeit ist auch der Erfolg von Chrome kein Anzeichen dafür, dass Firefox auf einem absteigenden Ast wäre. Der steigende Anteil von Chrome geht zum Großteil zu Lasten des Internet Explorers. Trotzdem sehe ich die Mozilla Foundation in der Pflicht endlich angemessen auf og. Problematiken zu reagieren.

Wie bereits erwähnt, schläft die Konkurrenz nicht. Google hat mit Chrome eindrucksvoll gezeigt, wie man einen modernen, schlanken Browser entwickelt. Mozilla tut sich offenbar schwer, Firefox und Gecko entsprechend umzustellen, was für mich als Programmierer bedeutet, dass dort noch viele Altlasten mitgeschleppt werden (müssen). Daher wäre es wohl an der Zeit, einen Strich zu ziehen und vieles komplett neu anzugehen, wie es z.B. schon bei IonMonkey getan wird. Mit einem modernen Aufbau der Interna wäre Firefox zukunftssicher und Mozilla würde sich in der Weiterentwicklung sehr viel leichter tun.

Nach etwas über einem halben Jahr wird es wieder einmal Zeit, den JavaScript Engines der aktuellen Browser-Versionen auf den Zahn zu fühlen. Die Versionssprünge im Vergleich zu den letzten Benchmarks sind beachtlich. Firefox ging von Version 3 (4 war noch Beta) auf 7, Chrome von 10 auf 15. Microsoft machte da einen vergleichsweise kleinen Schritt von 8 auf 9, während Apple und Opera bei ihren Hauptversionen 5 und 11 treu geblieben sind.

Wie üblich dient als Testplattform mein Privatrechner mit folgender Spezifikation: Intel Core i5 750, 8 GB RAM, Intel X25 G2 80 GB und Windows 7 Professional x64 SP 1.

Hier sind die Ergebnisse:

 

Es gibt auch dieses mal keinen klaren Gewinner, der sich alle drei Siege sichern konnte, aber Chrome 15 ist im Schnitt wieder die Nummer 1. Der Internet Explorer 9 mag zwar unter SunSpider der schnellste Kandidat sein, er verliert jedoch die anderen zwei Tests klar. Es liegt daher die Vermutung nahe, dass Microsoft hier einige Optimierungen vorgenommen hat — zumal sich an SunSpider schon länger nichts mehr getan hat.

Wie man schön sehen kann, hat Apple im letzten halben Jahr wirklich Fortschritte mit der Nitro Engine gemacht. Safari hat sich von der roten Laterne ins Mittelfeld vorgekämpft und überholt nun Firefox in gleich zwei Disziplinen. Es bleibt abzuwarten, ob Apple den Vorsprung halten kann. Ab Firefox 9 wird Mozillas JIT JägerMonkey durch Type Inference bis zu 30% mehr Leistung bringen. Dazu befindet sich mit IonMonkey ein neuer JIT in Arbeit, der wahrscheinlich JägerMonkey und evtl. auch TraceMonkey ersetzen wird. IonMonkey wird eine andere, moderne Architektur besitzen und damit die Wartbarkeit als auch Optimierungsmöglichkeiten für die Entwickler deutlich verbessern.

Bleibt noch Opera 11, der sich mal wieder sehr gut schlägt und die klare Nummer Zwei im Starterfeld ist.

Fazit

Chrome gewinnt — wie immer. Opera ist Zweiter und im weiteren Feld kämpft sich Safari an Firefox und Microsofts Internet Explorer vorbei.

Ich bin gespannt, ob Microsoft mit dem Internet Explorer 10 wieder aufholen kann. Vielleicht sollte man in Redmond auch die Release-Zyklen überdenken. Alle anderen Hersteller können wesentlich schneller reagieren und optimieren, während Microsoft nur jährlich neue Major Releases bringen will. Wobei ich es für fraglich halte, ob wirklich jedes Jahr eine neue Version kommen wird.

Natürlich haben theoretische Benchmarks in der Praxis weit weniger Relevanz. Meine aktuellen Experimente mit ExtJS zeigen sehr deutlich, dass bei Rich Internet Applications Firefox immer noch kein sonderlich gutes Bild abgibt. Das aufgebaute UI, das für eine RIA eh noch recht spartanisch ausgestattet ist, läuft in allen anderen Browsern wesentlich weniger träge und ruckelig. Gleiches lässt sich auf diverse andere JavaScript-lastige Seiten übertragen, z.B. GMail oder iCloud.

JägerMonkey mit Type Inference, IonMonkey und die lang erwartete Integration des Electrolysis-Projekts sind darum wichtiger denn je.

In schöner Regelmäßigkeit häufen sich bei Major Releases einer iOS-Version Probleme mit der Akku-Laufzeit, so auch dieses Jahr. Aktuell scheinen Besitzer eines iPhone 4S am stärksten gebeutelt zu sein, aber iPhone 4- und 3GS-Nutzer klagen teilweise über deutliche Einbußen. Damit dürfte klar sein, dass es sich primär um ein Software-Thema handelt.

Wie 9to5Mac berichtet, werden diese Störungen durch einen Teil des Ortungsdienstes versacht, namentlich dem Systemdienst “Zeitzone einstellen”. Er verbirgt sich in den Einstellungen unter “Ortungsdienste” > “Systemdienste” (unterhalb der App-Liste).  Dort finden sich auch noch andere Hintergrund-Services, die Zugriff auf die GPS-Funktionen haben, ohne sich durch ein Icon in der Statusleite bemerkmar zu machen. Im selben Menü lässt sich allerdings festlegen, dass ein Icon angezeigt werden soll, wenn einer dieser Dienste gerade aktiv ist. Bis auf “Funknetzsuche” und “Kompasskalibrierung” habe ich alle deaktiviert, da ich sie schlichtweg nicht brauche. Ich kann jedem nur empfehlen, auch so zu handeln und die nicht benötigten Funktionen abzuschalten.

Zu den Auswirkungen auf die Akku-Leistung kann ich erst in einigen Tagen etwas sagen, aber nach den Aussagen von 9to5Mac, scheint sich die Laufzeit doch deutlich zu verbessern, wenn man derzeit große Verluste innerhalb kurzer Zeit hat. Es sollte sich allerdings auch bei normalem Verhalten positiv auswirken. Ortungsfunktionen gehören immer noch zu den größten Verbrauchern bei Smartphones.

Seit sechs Tagen darf man nun den ganzen Blödsinn über die angebliche Enttäuschung durch das iPhone 4S ertragen. Als vernunftbegabter Mensch, kann ich sowas nicht unkommentiert stehen lassen, weil ich sonst innerlich von der ganzen Idiotie wahnsinnig werde.

Die Macht der Illusion

Monatelang stapelten sich die Gerüchte zu einem iPhone 5. Die Presse, Fan-Seiten, selbsternannte Insider und Experten überschlugen sich mit immer neuen Meldungen. Als dann noch Fotos einer angeblichen Hülle auftauchten, die den Schluss zuließen, ein komplett neues, extrem flaches Design sei zu erwarten, waren die Erwartungen auf einem Höhenflug, der nur böse enden konnte.

Ich kann mir nicht erklären, wie man ernsthaft glauben konnte, dass man ein iPhone mit allen Features, höherer Akku-Leistung und entsprechenden Antennen, in ein Gehäuse von der Tiefe eines iPod touch quetschen kann? Apples Ingenieure sind verdammt gut, aber keine Zauberer. Zwar wird dieser Grad der Miniaturisierung wohl in absehbarer Zeit möglich sein, aber noch befinden wir uns im Jahr 2011 und nicht 2015.

Mit dem Ausblick auf solch dramatische Features, konnte ein neues iPhone nur enttäuschen. Ironischerweise ist dies aber nicht Apple und auch nicht dem iPhone 4S anzulasten. Schuld sind in erster Linie die Illusionen einer immer absurder werdenden Gerüchteküche, die von Apple nichts mehr als Wunder erwartet und sich ernüchtert abwendet, wenn sie merkt, dass am 1 Infinite Loop auch nur mit Wasser gekocht werden kann.

In diesen Tagen wird auch gerne Apple die Schuld für die hohen Erwartungen zugeschoben. Fragt sich nur warum? Zwar ist bekannt, dass Apple immer wieder Gerüchte vorsichtig streut, aber sie werden diesen Wahnsinn kaum mit falschen Fakten befeuern. Offizielle Äußerungen gab es gar nicht. Selbst die Keynote wurde nur knapp eine Woche vorher angekündigt. Meine Damen und Herren, der Apfel ist, wie schon in der Bibel, unschuldig …

Anstatt wild Märchen in die Welt zu setzen sowie sich selbst etwas vorzumachen, wäre es jetzt angebracht, sich auf realstische Vorstellungen zu besinnen und das iPhone 4S neutral zu beurteilen. Leider findet dies derzeit nur selten innerhalb der Medienwelt statt. Die breite Masse der potenziellen Käufer scheint sich aber von diversen Schmähartikeln nicht verblenden zu lassen, sonst wäre das iPhone 4S kaum ausverkauft.

Hardware

Während das Innenleben weitgehend positiv aufgenommen wurde, gab es immer wieder Kritik am Display. Es immer noch 3,5″ groß, ein IPS-Panel und hat mit 326 ppi eine der höchsten Pixeldichten der gesamten Smartphone-Riege. Samsung, HTC & Co. liefern sich aktuell eine regelrechte Größenschlacht, die frappierend an den Megapixel- und Zoom-Wahn bei Digitalkameras erinnert. Denn, auch hier wie da gilt: größer/mehr ist nicht automatisch besser.

Neben meinem iPhone 4 besitze ich als Android-Gerät ein Galaxy S i9000 mit einem 4″ SAMOLED-Display. Es löst deutlich geringer auf, was sich insbesondere bei Text durch das ungewöhnliche Pixelraster dieser OLED-Generation bemerkbar macht. Neuere Geräte besitzen oft bei größeren Displays die gleiche Auflösung. Zwar hat z.B. das Galaxy S2 mehr Subpixel, aber an die Pixeldichte und Bildqualität des IPS-Panels kommt es nicht ran. Das OLED-Pro-Argument Kontrast kommt an dieser Stelle nun meistens. Der bringt mir aber auch nichts, wenn er überzogen wird und dadurch die Farben viel greller wirken.

Das größte Problem neben der Bildqualität, ist beim Display-Wettrüsten aber die teils schon absurde Größe. Touchscreens überhalb von vier Zoll lassen sich kaum vernünftig mit einer Hand bedienen. Von Alltagstauglichkeit kann da eigentlich keine Rede mehr sein, wenn man den oberen Teil des Bildschirms nur noch mit Mühe erreichen kann.

Ich rechne es Apple hoch an, dass man sich nicht auf diesen Blödsinn einlässt und stattdessen auf eine bewährte Technik setzt, die immer noch der Maßstab ist, an dem sich alle anderen messen müssen. Zwar wird das Nexus Prime bzw. dessen Galaxy-Version ein 4,6″ Display mit 720p anbieten, auf dem Markt sind aber beide Geräte noch nicht und solange ist das iPhone 4(S) die Messlatte.

Mal ehrlich, braucht irgendjemand mehr als vier Zoll? Wir reden hier immer noch von einem Mobiltelefon und das soll es auch bleiben.

Design

Das kaum geänderte Aussehen des iPhone 4S, ist wohl der größte Kritikpunkt. Viele argumentieren damit, dass das iPhone ein Lifestyle-Produkt sei und daher jedes Jahr ein neues Design brauche, damit der Käufer allein durch das Zurschaustellen des aktuellen iPhones zeigen kann, ein neues Statussymbol zu haben. Denen kann ich jedenfalls nur raten, sich mit Apples Produktphilosphie zu beschäftigen.

In erster Linie entwickelt Apple Geräte mit dem hohen Anspruch für jeden einfach und schnell bedienbar zu sein. Dazu greifen fast alle Apple-Produkt nahtlos ineinander, um dem Nutzer maximalen Komfort zu gewährleisten und den Alltag wirklich zu erleichtern. Ganz besonders die Software es Jahrgangs 20111, egal ob Mac OS 10.7, iOS 5 oder iCloud sind einzig und alleine darauf ausgerichtet – mit dem für Apple angenehmen Effekt, den Nutzer in das eigene Ökossystem zu binden.

Wenn man nun ernsthaft glaubt, Apple würde ein erfolgreiches Design einfach ändern, damit ein paar Leute in der U-Bahn angeben können, der irrt gewaltig und erliegt der Illusion, dass den Apple-Käufern nur ums Design geht. Solche mag es zwar auch geben, aber ein Großteil der Kunden möchte Produkte, die ohne große Probleme einfach das tun, was sie sollen. Wenn sie dann auch noch schick aussehen und dazu intelligent konstruiert sind, um so besser.

Ehrlich gesagt, empfinde ich es als dreist und frech, mich als Besitzer eines Apple-Geräts von fremden Leuten als Design- und Attenion-Whore bezeichen lassen zu müssen. Offenbar geht es vielen nicht in den Kopf, dass man Apple vorzieht, weil sie einem das Leben mit durchdachten und intelligenten Produkten erleichtern.

Das soll nicht heißen, dass andere Produkte schlecht wären. Letztendlich muss jeder für sich die beste Lösung finden. Wenn das Android ist oder ein Black Berry, wer bin ich ihnen dann zu sagen, ihre Wahl wäre Mist? Ich werde niemanden zwingen meiner Meinung zu sein und ich kann Anderen nur raten, dies ebenfalls so zu halten. Fanboys aller Art sind einfach nur noch lästig und stiften Unfrieden.

In diesem Sinne, wenn das nächste iPhone kommt, einfach realistisch bleiben und nicht gleich die Keule rausholen, wenn’s einem nicht passt oder man Apple nicht mag.

 

4S (For Steve)

Du hast durch Deine Visionen und Produkte mein Leben wirklich bereichert. Als Pendler sind mein iPhone und iPad tägliche und treue Begleiter, die mir die Zugfahrten erträglicher machen. Im Büro erleichtern mir der iMac und Lion die Arbeit. Das ist wirklicher Fortschritt, von dem wir früher oder später alle profitieren. Sei es durch Apple oder die Konkurrenz, die Du inspiriert hast. Ich hoffe, dass Dein Pioniergeist und Deine Inspirationen uns noch lange beflügeln werden.

Mach’s gut, Steve — wo immer Du gerade bist.