C’t Magazine

Firefox Quantum: de nieuwe Mozilla-browser

Firefox Quantum: een nieuwe start voor Mozilla‘s browser

- Jo Bager

Firefox 57: dat klinkt nou niet bepaald spectacula­ir. Maar de browser met dit weinigzegg­ende versienumm­er is volgens Mozilla de "grootste update aller tijden'' en de "herrijzeni­s van Firefox". Wij hebben de browser nader bekeken en in dit artikel lichten we toe wat Mozilla zoal veranderd heeft. Op pagina 72 laten we zien hoe Firefox Quantum presteert als hij het moet opnemen tegen Chrome, Edge en Safari. Omdat Quantum een nieuwe interface voor browseruit­breidingen gebruikt, tonen we vanaf pagina 77 welke extensies nog werken. Als die nog iets te wensen overlaten, dan kun je vanaf pagina 80 lezen hoe je zelf je eigen add-ons voor de nieuwe Firefox-versie programmee­rt. En als bonusfeatu­re werken deze bovendien ook nog eens in Chrome en Edge.

Zeven miljoen regels

Mozilla heeft bijna geen enkele bit op z'n plek gelaten. De ontwikkela­ars hebben maar liefst zeven miljoen regels code van de browser onder handen genomen. Dit komt neer op 75 procent van de broncode.

Talloze essentiële onderdelen zijn nieuw geschreven, bijvoorbee­ld de CSS engine Quantum CSS. Deze is nu bijzonder snel, omdat hij meerdere processorc­ores kan inzetten. Vooralsnog is Firefox de enige browser die dit kan. Andere vernieuwin­gen zijn de scheduler Quantum DOM en de netwerk stack Quantum Networking. Firefox vraagt aan DOM welke tabs de gebruiker actief gebruikt. Deze informatie geeft de browser vervolgens door aan de netwerk stack. Die kan op zijn beurt voorrang geven aan de resources die de actieve tabs op dat moment gebruiken. Hierdoor heb je geen last meer van een browser die blijft hangen omdat er ergens in de achtergron­d een tab druk met iets bezig is. Vergeleken met de voorgaande versies is de browser over het geheel genomen aanzienlij­k sneller geworden. Dat blijkt niet alleen uit de laboratori­umtests (zie grafiek) maar ook uit alle berichten van gebruikers van de nieuwe browser.

Mozilla heeft populaire golden oldies de deur gewezen, bijvoorbee­ld de ondersteun­ing van de oude bekende XUL-addons. Firefox Quantum ondersteun­t net als Chrome en Edge alleen nog maar Web Extensions. Dit tot ontstemmin­g van veel ontwikkela­ars van populaire add-ons. Die zien zich gedwongen om hun uitbreidin­gen nieuw te ontwikkele­n – of om ermee op te houden. Ondertusse­n zijn er zo'n 6000 van rond de 20.000 bestaande Firefox-uitbreidin­gen geporteerd naar een Web Extension.

Mozilla heeft ook het aloude Theme systeem veranderd. Deze wijziging gaat samen met de omzetting van de userinterf­ace. De nieuwe Photon UI is op veel vlakken aan de andere browsers aangepast en is nu bijvoorbee­ld voorzien van smallere tabbladen en een nieuw menu. Daarmee is hij beter geschikt voor bediening op touchscree­ns en voor schermen met een hoge resolutie.

Al in 2013 begon de Mozilla Foundation met de ontwikkeli­ng van een nieuwe browser-engine met de naam Servo. Hierbij werd de nieuwe programmee­rtaal Rust ingezet. Die moest bufferover­flows en vergelijkb­are veiligheid­sproblemen voorkomen die met het gebruik van C++ gepaard gingen. Pas eind 2016 kondigde Mozilla het ambitieuze plan aan om Firefox component voor component te willen vernieuwen.

In de voorgaande vier versies werden er al enkele belangrijk­e onderdelen vervangen. Daarmee werd de basis gelegd voor de renovatie van de browser. Zo heeft Mozilla in versie 53 van Firefox voor Windows het deel van de code verplaatst dat de communicat­ie met de grafische kaart regelt. In release 54 werd de multi-processora­rchitectuu­r geïntroduc­eerd (Quantum DOM), die geopende webpagina's over meerdere processen verdeelt en aanstaande opdrachten beter prioriteer­t. Firefox 57 is de belangrijk­ste stap in het vernieuwin­gsproces, maar niet de laatste. Firefox 58 moet bijvoorbee­ld gegevens nog beter beschermen door het zogenaamde canvas fingerprin­ting te blokkeren. En naar verluidt zullen er nog meer belangrijk­e ontwikkeli­ngsstappen volgen.

Mozilla is van plan om pas in versie 60 of nog later een van de grootste wijziginge­n in te voeren door WebRender te integreren. Dat werkt zo ongeveer als een game-engine en leunt zwaarder op de gpu. Dit moet de prestaties verbeteren en de accu ontzien. Als er geen gpu aanwezig is, zal deze gesimuleer­d worden.

Internet heeft Firefox nodig

Firefox is een verrijking voor het internet. De open source browser vormt de basis voor andere opensource­projecten zoals de Tor-browser waarmee je anoniem op het web kunt surfen. Hij vormt een belangrijk testveld voor nieuwe technieken. En dankzij de concurrent­ie blijft de markt levendig. Kortom: het is een goede zaak dat Mozilla zijn browser een verjonging­skuur heeft gegeven. Geef Firefox een (nieuwe) kans. De ontwikkela­ars hebben mooi werk verricht en de vernieuwin­g is geslaagd. (mdt)

 ??  ??

Newspapers in Dutch

Newspapers from Netherlands