Firefox heeft een probleem. Het is achterop geraakt en de ontwikkeling is vastgelopen vanwege de meest cruciale en moeilijkste problemen. Veel van de belangrijkste verbeteringen in Firefox van de afgelopen jaren zijn simpelweg het kopiëren van wijzigingen in Chrome.
We zouden willen dat Firefox beter was, maar de realiteit is dat het nog steeds niet zo goed is als Chrome. Nu zo veel voormalige Firefox-ontwikkelaars bij Google aan Chrome werken, is het misschien logisch dat de innovatie heeft plaatsgevonden in Chrome, niet in Firefox.
Geen multiprocesarchitectuur
CPU's krijgen steeds meer cores, waardoor ze meer parallel kunnen werken. Single-core CPU's zijn ongehoord geworden en zelfs de computers met het laagste vermogen hebben op zijn minst dual-core CPU's. De toekomst is een steeds groter aantal CPU-kernen, en computerprogramma's zullen in staat moeten worden om meer parallel te werken om te profiteren van al deze verwerkingskracht.
Chrome lost dit op door een architectuur met meerdere processen te hebben. Elke website die je open hebt staan, draait in zijn eigen proces. Achtergrondprocessen, zoals extensies en apps die op de achtergrond werken, draaien in hun eigen proces. Browser-plug-ins werken ook in hun eigen proces. Cruciaal is dat de gebruikersinterface van Chrome ook in zijn eigen proces werkt.
Als u een moderne multi-core CPU heeft, zal Chrome deze intelligent gebruiken en goed presteren, waarbij het werk wordt verdeeld over de CPU's. Het kan veel dingen tegelijk doen en de interface van Chrome mag nooit haperen en hikken als pagina's op de achtergrond worden geladen.
Firefox is een andere zaak. Firefox gebruikt een architectuur met één proces, hoewel plug-ins nu in een afzonderlijk proces worden uitgevoerd. Als u vijf browsertabbladen opent, moet het hoofdproces van Firefox deze laden en renderen, evenals de Firefox-gebruikersinterface afhandelen, zodat de browser lang niet zo responsief zal zijn als Chrome. Als een van de pagina's crasht, wordt de hele browser ermee uitgeschakeld.
Dit is nog steeds buitengewoon merkbaar - op een krachtige Intel Core i7 CPU presteert Chrome perfect, maar de interface van Firefox hapert en vertraagt naarmate meerdere pagina's worden geladen, althans in mijn ervaring. Het is gewoon niet zo soepel, en het komt door de verouderde architectuur van Firefox.
Mozilla werkte hiervoor aan een oplossing. Het heette Elektrolyse, de ontwikkeling begon in 2009 en het was een project om van Firefox een echte browser met meerdere processen te maken. Elektrolyse was " in de wacht gezet voor de nabije toekomst ”In 2011, waarbij Mozilla verklaarde dat“ Elektrolyse een enorme onderneming is ”en dat ze“ een aantal kleinere initiatieven ”zouden nastreven om de reactiesnelheid van de browser op korte termijn te verbeteren.
Mozilla heeft onlangs het Elektrolyseproject in mei 2013, dus als we geluk hebben, zullen we ooit een Firefox met meerdere processen zien. Zelfs Internet Explorer heeft functies voor meerdere processen vanaf Internet Explorer 8, dus Firefox loopt ver achter - en is net begonnen met het inhalen na het stoppen van het project in 2011.
Jaren achter Chrome: 4.7 en tellen
Firefox gebruikt geen beveiligingssandbox
Chrome en Internet Explorer gebruiken een moderne Windows-functie genaamd "lage integriteitsmodus" of "beschermde modus" om browserprocessen uit te voeren met zo min mogelijk gebruikersrechten. Als een kwetsbaarheid in de browser werd ontdekt en misbruikt in Chrome of IE, zou de exploitant ook een soort extra kwetsbaarheid moeten gebruiken om aan de beveiligingssandbox te ontsnappen en toegang te krijgen tot de rest van het systeem.
Deze functie bestaat al sinds Windows Vista, dat meer dan zes jaar geleden werd uitgebracht. Mozilla werkt echter nog steeds aan het "Lage rechten Firefox" -functie en er is geen tijdsbestek voor wanneer sandbox-functies worden uitgerold naar gebruikers. Sandboxing is geen wondermiddel, maar het is een belangrijke beveiligingsfunctie die in andere moderne browsers wordt aangetroffen.
Opmerkingen over de bugtracker van Firefox geven aan dat ontwikkelaars zullen kijken naar het sandboxen van de Windows 8 Modern Firefox-app, Firefox OS en de experimentele Servobrowser op OS X. Er zijn geen aanwijzingen dat er momenteel iemand bezig is met het sandboxen van de Windows-desktopversie van Firefox. Dat is duidelijk de meest populaire, meest kwetsbare versie van Firefox die het meest moet worden beschermd.
Jaren achter Chrome: 4.7 en tellen
Firefox wil een Desktop Web App Store
Mozilla is er vast van overtuigd dat webapps en webtechnologieën de behoefte aan desktopsoftware en native mobiele apps zullen vervangen en een platformonafhankelijke toekomst bieden waarin HTML5-apps op elk platform kunnen worden uitgevoerd.
Hiertoe wil Mozilla een eigen webapp store creëren, bekend als de Firefox Marketplace. Deze functie is beschikbaar in Firefox voor Android en maakt deel uit van Firefox OS. Firefox OS is zelf een mobiel besturingssysteem dat jaren later wordt gelanceerd nadat het zou moeten zijn - later dan zelfs Microsoft's Windows Phone en BlackBerry's BlackBerry 10, twee mobiele besturingssystemen die een lange strijd voor de boeg hebben omdat ze zo laat werden gelanceerd.
U kunt echter alleen de Firefox Marketplace op Firefox voor Android op dit moment. Mozilla praat al jaren over het uitbrengen van een Firefox Marketplace voor de desktop, maar ze hebben besloten om zich voorlopig alleen op mobiel te richten. De desktop Firefox Marketplace zal in de toekomst worden uitgebracht. Inmiddels heeft Chrome al jaren de Chrome Web Store. Nieuw Chrome-pakketapps zullen binnenkort de functionaliteit van Chrome-webapps uitbreiden , wat meer een plons maakt.
Mozilla wil web-apps pushen en webtechnologieën op de desktop openen, maar ze doen het niet - Google is het.
Jaren achter Chrome: 2.5 en tellen
Voorbeelden van Firefox die achter Chrome achterblijven
Firefox heeft in de loop der jaren op veel manieren een inhaalslag gemaakt, maar veel van de wijzigingen hebben simpelweg de manier gekopieerd waarop Google Chrome werkt:
- Privé browsen met meerdere vensters : Firefox heeft onlangs de mogelijkheid gekregen om een privé-browservenster te openen naast een normaal browservenster, een veelgevraagde functie die sinds het begin in Chrome zit.
- Regelmatige updates : Nadat Chrome was gelanceerd, ging Firefox over naar een frequenter releaseschema, zoals dat van Chrome.
- Extensies die browserupgrades aankunnen : Firefox moest toen werken aan het updaten van zijn extensie-API, waardoor extensies konden worden geïnstalleerd zonder opnieuw op te starten en naadloos konden functioneren zonder te breken na upgrades van browserversies - net zoals ze werkten in Chrome.
- PDF-viewer : Firefox heeft onlangs een geïntegreerde PDF-viewer gekregen, lang nadat een dergelijke functie in Chrome was gelanceerd.
- Gebruikersinterfaceontwerp : Alle browsers hebben het voorbeeld van Chrome gevolgd bij het overschakelen naar een meer minimale browserinterface, inclusief Firefox. Recent UI mockups suggereren dat er in de toekomst van Firefox een nog meer Chrome-achtige interface kan zijn.
- Out-of-Process plug-ins : Hoewel Firefox niet over de juiste functies voor meerdere processen beschikt, zoals Chrome, heeft het een functie toegevoegd waarmee plug-ins zoals Flash in hun eigen proces kunnen worden uitgevoerd, zodat ze de rest van de browser niet laten crashen.
- JavaScript Performance : Net als alle andere browsers werd Firefox gepusht om zijn JavaScript-prestaties drastisch te verbeteren nadat Chrome opdook met zijn enorme voorsprong in JavaScript-prestaties ten opzichte van iedereen.
Over het geheel genomen is het duidelijk dat Chrome al jaren toonaangevend is op het gebied van browserinnovatie.
We zouden willen dat Firefox beter was
We proberen hier niet alleen Firefox aan te vallen. Het was ooit de beste browser, en Mozilla verdient lof omdat ze het marktaandeel van Internet Explorer 6 heeft ingeslikt, door Microsoft te laten zien dat ze hun plaats zouden kunnen verliezen en hen te dwingen hun onderbroken ontwikkeling van Internet Explorer opnieuw te starten. Ze verdienen ook de eer voor het meer gestandaardiseerd maken van het web, door het elimineren van websites die zeggen dat ze "Designed for Internet Explorer" zijn. Hierdoor konden andere browsers ingrijpen - de meest populaire zijn Chrome en Safari. Firefox legde de basis en Mozilla is een onvermoeibare vechter voor open standaarden.
Het is goed voor het web om Mozilla als browserleverancier te hebben die niet aan één groot bedrijf is gebonden, aangezien Microsoft, Google en Apple de andere topbrowsers bezitten. Het feit dat we een open-sourcebrowser hebben die is gemaakt door een non-profitorganisatie die alleen het internet wil verbeteren, is geweldig voor internet.
Daarom is het jammer dat Mozilla Firefox zo ver achterop heeft laten raken. Het stoppen van de ontwikkeling van elektrolyse en nog steeds geen beveiligingsfuncties voor sandboxing hebben geïmplementeerd, zijn tekenen dat Mozilla niet bereid is om te knokken en het echt harde werk op laag niveau te doen om de prestaties en beveiliging van Firefox te verbeteren. Veel van de andere wijzigingen die ze hebben aangebracht, zijn veel eerder aangebrachte wijzigingen in Chrome geïmiteerd.
Firefox is in sommige opzichten nog steeds de beste browser. Als u bijvoorbeeld het krachtigste browserextensieframework nodig heeft, heeft Firefox het. Maar we zouden willen dat Firefox op andere manieren competitiever was. In 2013 zou een browser een applicatie met meerdere processen moeten zijn met de juiste beveiligingssandboxing. Maar Firefox is dat niet - het is in feite achterop geraakt in Internet Explorer als het gaat om deze twee belangrijke functies.
Er was eens een krachtige browser die bekend stond als de Mozilla-suite. Het was te groot en opgeblazen voor zijn eigen bestwil, dus besloot een groep ontwikkelaars om een nieuwe, minimale browser te maken op basis van zijn kerntechnologieën. Ze noemden het Phoenix, en het evolueerde naar de Firefox die we vandaag kennen. Als Mozilla Firefox niet in een moderne browser kan veranderen omdat alle oude code in de weg zit, hebben we misschien een Phoenix 2.0 nodig.
Afbeelding tegoed: Régis Leroy on Flickr