Mindössze 10 féle ember létezik ma az interneten
Mi a közös 1998-ban és 2019-ben? Mármint az években, nem pusztán a számokban. Az, hogy már akkor is létezett az a két böngésző, amit napjainkban kivétel nélkül mindenki használ, aki el szeretné érni az összes lehetőséget, miközben szörföl az Interneten.
Kettő??? De miért csak kettő? Ennek mind technológiai, mind történelmi okai vannak. Ezeken szeretnék most végigmenni, hogy mindenki tisztában legyen vele, hogy tulajdonképpen mit is használ, és azt kiknek köszönheti.
Induljunk a kályhától, annak is a lábától. 1985-ben Steve Jobsot kirúgják az Apple-től. Igen, azt a Steve Jobsot, nem valamelyik névrokonát. Jól bedurcizott ezen, és rögtön megalapítja új cégét, a NeXT-et. Nem meglepő módon számítógépeket kezd építeni, amiből a CERN is bevásárol, így amikor 1990-ben Tim Berners-Lee megírja és karácsonykor elindítja a világ legelső WWW, azaz World Wide Web szerverét, ahhoz hogy-hogy nem egy NeXTcube-ot használ.

A kliensek is hasonló gépeken futottak, bár ezek még pusztán szöveges, azaz textmode browser-ek voltak. Először finn egyetemistáknak jutott eszébe, hogy kényelmesebb lenne egy egerezős megoldást összedobni erre a fantasztikus technikai újításra; ezért történhetett, hogy a világ legelső grafikus brózere az Erwise lett. Ez 1992-ben jelent meg, és Tim Berners-Lee annyira belelkesedett, hogy azon nyomban Helsinkibe utazott, hogy lepacsizzon a kis csapattal. Ezek után saját maga publikálta a nagyvilágnak a forráskódot a cern ftp szerverén (mert ugye már akkor is opensource volt egy browser), és nekiállt továbbfejleszteni azt. Azaz csak kezdte volna, de igen hamar szembesült azzal, hogy az összes dokumentáció finn nyelven lett megírva, így inkább csak a távolból integetett és sok szerencsét kívánt a projekthez – de minek, mert a fejlesztés ugyanúgy ott ragadt a 0.1-es verziónál, és nem vitte tovább senki.

Ez nagy kedvet csinált a világ egyéb helyein éldegélő programozóknak (thx to internet), és mindenki vadul brózerfejlesztésbe vetette magát. A sok kliens közül kiemelkedett az NCSA berkein belül megalkotott Mosaic, immáron az USÁban, az Illinois-i egyetemen. Mai szemmel nem tűnik sokkal szebbnek, mint az Erwise, viszont nem is ez volt az ereje. Ez volt az első multiplatform böngésző, ami különböző hardware-ekre és operációs rendszerekre egyaránt megjelent a szokásos Unixon kívül. Itt már voltak könyvjelzők Hotlist néven, volt frissítés, nyomtatás, vissza gomb, és megannyi olyan funkció, amiket ma már a levegővétel szintjével egyenlően tekintünk természetesnek. Akkora sikere volt, hogy a fejlesztő csapat vezetője, Marc Andreessen el is jött az egyetemről, hogy megalapíthassa az ezen alapuló vállalkozását, a Mosaic Communications Corporationt…

…amit később átneveztek Netscape Communications Corporation-re. Ez az első fogalom, ami már a laikus olvasóban is emlékképeket (vagy emlékhangokat) idézhet fel. Nem kevesebbet tűztek ki célul, mint megalkotni A BROWSER-t, ami minden másnál jobbabb. Ez a minden más akkoriban ugye a Mosaic-ot jelentette, ezért minden szerénységüket félretéve szülték meg a nevet: Mozilla, azaz Mosaic killer godzilla. Magabiztosságuk saját maguknak is megalapozottnak tűnt, amikor 1995-ben a webező számítógépek 3/4-én már a Mosaic Netscape futott, amit jogi viták kikerülése érdekében később átneveztek Netscape Navigator-ra. Annyira meglódult a szekér (értsd: dőlt a della), hogy még a Time magazin címlapjára is felkerült a csapat vezetője – túlzás nélkül őket ünnepelte az internet népe. 1996-ban már közel 90%-os részesedésük volt, amit természetesen a Mosaic felhasználók áthódításával szereztek meg.


Aaaaand now something completely different, azaz engedjük el ezt az amerikai vonalat, és újra visszautazunk Európába, méghozzá Németországba. Itt éldegél egy Matthias Ettrich nevű fószer, aki egyetemista is, a számítógépek iránt is érdeklődik és még a Linuxot is szereti. Első projektje egy grafikus LaTeX szerkesztő, és ha már Linuxra, akkor LyX néven. Ezen fellelkesülve hamar kedvet kap a további mókázáshoz, így 1996-ban nem kisebb fába vágja a fejszéjét, minthogy megalkot egy mindenttudó grafikus környezetet, a Kool Desktop Environment-et, kicsit szerényebben a KDE-t. Ezt rögtön világgá trombitálja, hogy kisebb csapatot grundoljon grandiózus terveihez. Mindössze egy év alatt összekalapálnak egy olyan pofás kis környezetet, ami még mai szemmel sem ronda. Szépen halad a különböző komponensek fejlesztése, van már számológép, szövegszerkesztő, filekezelő, médialejátszó, terminál, képnézegető, képernyővédő, anyámkínja… aztán egyszercsak elérnek egy fordulóponthoz, amikor ezt a kérdést intézi a tagokhoz:

„either do a significant effort to move KHTML forward or to use Mozilla”,
azaz a help-ben használt html értelmezőjüket vigyék tovább a böngészőjükhöz, vagy inkább használják a Mozilla kódját innentől. Nos, ha már lúd…feléjük senki se noob… úgyhogy a KDE hivatalos browser-éhez, a Konquerorhoz elkezdik továbbfejleszteni khtmlw-t. Illetve tök indokolatlan a többesszám, mert első körben Lars Knoll egymaga olvassa végig az időközben terebélyesre gyarapodott w3c.org-ot, ami a mindenkori html szabvány lelőhelye. A sok olvasásnak ’99 augusztusában lesz kézzelfogható eredménye, amikor a nagyfábafejszét stafétát átveszi tőle Harri Porten, aki az akkoriban újdonságnak számító ECMAScriptet, ma ismertebb nevén a javascriptet hegeszti hozzá a KHTML-hez. Így született meg a Konqueror böngésző.
Most álljunk meg egy szóra, és beszéljünk egy kicsit a jogi oldaláról a 2 projectnek, a licencekről. A KHTML licence LGPL (GNU Lesser General Public License), míg a Mozzilájé egy saját, aminek meglepő módon Mozilla Public License (MPL) a neve. De ez kit érdekel? De tényleg? Hát… például… az Apple-t. Az Apple-nek is szüksége volt egy brózerre az ezredforduló derekán, és mivel a KHTML megengedőbb licence folytán nem szükséges a forrást publikálni módosítás után, így azt forkolták le. Először a KJS-t, azaz a javascript engine-t JavaScriptCore néven, aztán a KHTML rendering engine-t pedig webkit néven. Annak rendje és módja szerint -bár a licenc ezt nem követeli meg- megköszönték a KDE-s srácok munkáját a levlistájukon.
[KDE-Darwin] JavaScriptCore, Apple’s JavaScript framework based on KJS
Maciej Stachowiak mjs@apple.com
Thu, 13 Jun 2002 16:31:55 -0700Apple is pleased to announce the open source release of the new
JavaScriptCore framework, based on the kjs JavaScript engine from KDE.
JavaScriptCore is a private API which may be used by future Mac OS X
applications such as Sherlock, and is provided as Open Source as part
of our partnership with the KDE community. JavaScriptCore will be used
by Sherlock in an upcoming O/S release, and possibly by other Apple
software in the future. Apple chose kjs as the basis of its JavaScript
technology for its simple and efficient code.
From: Don Melton <gramps@apple.com>
Subject: Greetings from the Safari team at Apple Computer
Date: Tue, 7 Jan 2003 11:31:10 -0800Hi,
I’m the engineering manager of Safari, Apple Computer’s new web browser
built upon KHTML and KJS. I’m sending you this email to thank you for
making such a great open source project and introduce myself and my
development team. I also wish to explain why and how we’ve used your
excellent technology. It’s important that you know we’re committed to
open source and contributing our changes, now and in the future, back
to you, the original developers. Hopefully this will begin a dialogue
among ourselves for the benefit of both of our projects.
https://marc.info/?l=kfm-devel&m=104197092318639&w=2
Mindeközben… Sokáig filóztam, hogy külön-külön tárgyaljam a két engine fejlődését, de aztán arra jutottam, hogy különböző összefüggések miatt inkább párhuzamosan fogom. Szóval térjunk vissza a Mozillára, azaz a Netscape-re. A Netscape időközben de facto szabvánnyá válik (ami nem volt nehéz a Mosaic 98%-os részesedése után), viszont valami rossz irányba csúszik el, hogy minden létező internetes szabványt kezelni akarnak vele. Van már benne email-olvasó, news-olvasó, html szerkesztő, de még irc kliens is. Csomó minden, ami már nem is a http protokollról vagy a html-ről szól. Az akkori lassú gépeken és lassú interneten ez felesleges overhead volt. A Netscape részesedése elkezdett zuhanni, és a Mozilla háza táján eluralkodott a pánik, hogy „jajj, most mi lesz velünk? Tenni kéne valamit!”. Fel kéne támasztani újra ezt a virágzó üzletet, úgymond újraéleszteni hamvaiból, hogy egy új élet szülessen, mint a főnixmadár. Ezért lett az új projektjük neve: Phoenix.
Ebben az volt az újítás, hogy minden felesleges dolgot kidobáltak a Netscape-ből, és pusztán a lényegre, a szörfözésre koncentráltak. De hogy valami újat is mutassanak, modulárisra csinálták. Mit jelent a moduláris? Hogy modulokkal, pluginekkel, extension-ökkel, addonokkal a browser bármely funkciója módosíthatóvá, bővíthetővé vált. Egy mai user már ezen sem lepődik meg, de akkoriban ez korszakalkotó változás volt. Bár -tegyük hozzá-, amilyen gyorsan jött a Phoenix, olyan gyorsan ment is, mert a főként bios-t fejlesztő, így az IT szektorban tevékenykedő Phoenix megkínálta őket egy perrel védjegybitorlás okán. Nem akartak vele vitatkozni, de ez a tűzmadár analógia már eléggé brand lett, így gyorsan váltottak is…
…Firebird névre. Ez is tűzmadár, ha úgy tetszik, és a Phoenix nem szólhat bele, mert tök más karakterek vannak benne. Nos, ez még rövidebb életű név lett, mert erre meg az amerikai kocsigyártó Pontiac rágott be, hiszen nekik már évek óta volt egy Firebird modelljük a piacon. Ígyjárás, ígyjárás… Ezek után már senkit nem érhet meglepetés, ha elárulom, hogy az új név a Firefox lett. A közhiedelemmel ellentétben ez nem róka, hanem panda. Becsületes magyar neve a vörös macskamedve, hogy még jobban megkavarjuk szegény állat identitását.

Azt már tényleg a nyájas olvasóra bízom, hogy szerinte ez most róka, panda, macska vagy medve; a lényeg, hogy ő a firefox. Bár ti inkább a stilizált változatait ismeritek:
Nos, innentől már a cikkben sem kell földrészek között utazgatnom, hiszen az Apple amerikai, ahogy a Mozilla is. 2003 januárjában az Apple újfent első embere, Steve Jobs már a Macworld expon promózza a Safarit, ami „new way of browsing”, „changes life”, „saves babypandas”, és egyéb marketinges bullshitek – el tudjátok képzelni a csávót színpadon.

Az Apple szárnyai alatt a webkit is szárnyra kapott (őőő, képzavar), és pusztán jófejségből 2005 nyarán visszaadták az opensource közönségnek sok évnyi megfeszített munkájukat. Eddigre már jóóóól összevesztek a kde-s developerekkel, de ez innen már kit érdekel – a webkit minden szempontból jobbabb lett. Nemhiába, egy dollármilliomos cég tolta meg a fejlesztés szekerét szemben egy maroknyi hobbiprogramozóval.
WWDC: Apple offers WebKit Open Source Project
Apple’s Safari team launched the WebKit Open Source Project Web site this week. The site provides source code access for the software Apple uses to create its Safari Web browser. The project will hopefully assuage the concerns of open source code advocates who felt Apple was taking too proprietary an approach with the development of its browser, which uses technology originally developed from the open source world.
The new Web site provides programmers with Concurrent Versions System (CVS) access to the source code for WebCore and JavaScriptCore, the Apple frameworks based on the open source khtml and kjs projects. Developers can review the complete history of the project, with all patches past and present, according to the Safari team.
https://www.macworld.com/article/1045257/webkit.html
Nos, erre már gyorsan lecsapott, mint gyöngytyúk a takonyra… az… a… Google! Úgy van! De semmi csinnadratta, hanem teljesen titokban nekiálltak egy saját browser fejlesztésének. Nade minek csináljanak egy Safari-klónt? Sok értelme nem lenne, max. a google logot tolhatnák ki a bal felső sarokba reklám gyanánt… És itt jön a képbe -megint utazunk egy kicsit- a dán Lars Bak. Ő már ekkor egy dán egyetemen tanít, és doktorandusz hallgatóival egy merőben új javascript engine-en dolgozik. A javascript -nevéből is adódóan- egy scriptnyelv, és amúgy a javahoz semmi köze nincsen. A hivatalos neve a mai napig ECMAscript, csak ezt a javascript nevet már le nem mossa magáról, annyira beégett a köztudatba. Nos, a scriptnyelveket hagyományosan soronként értékeli ki a számítógép, így nincs szükség előzetes fordításra, compile-ra, build-re, vagy mindenki hívja, aminek akarja. Ennek előnye, hogy bármikor könnyedén módosítható, és ha az adott hardware platformra létezik ecmascript értelmező, azaz interpreter, akkor ugyanúgy fut le mindig. Értsd: multiplatform. A soronkénti értelmezés másik hozománya a lassúság. Minden sort külön-külön egyesével értelmez a gép, és végrehajtja. Akkoriban egyébként ez elég volt, mert a javascriptet csak mini dolgokra használták a weben, mint például hóesés a bkv honlapján decemberben (értelme ugye nem sok).
Nos, ez a Lars Bak emberke kidolgozott egy olyan motort, ami nem soronként értelmezi az ecmascriptet, hanem előbb lefordítja gépi nyelvre (assembly-re), ebből csinál egy binárist, és ezt tolja oda a cpu-nak. Ez annyit tesz, hogy egy oldal betöltésekor a javascript később indul el, de miután beröffent, száguld, mint egy v8 motoros versenyautó. Ezért is nevezte el logikusan V8 engine-nek ezt az új fejlesztést. Ez a google-t annyira érdekelte, hogy mindenképpen magához szerette volna édesgetni ezt a programozót, hogy dolgozzon nekik és a leendő új browserükön. Viszont Lars nem akarta elhagyni azt a dán kisvárost, ahol tanított, élt, és nemmellesleg két kislánya járt ott iskolába. Semmi kedve nem volt az USÁba költözni, meg utazgatni – teljesen nyugodt kispolgári életet élt. A google nem tágított, ígértek fűt-fát, aranyat, olyan fizut, hogy a nullák lelógtak a papír széléről…de nem. Lars nem ment és kész. Így történhetett, hogy ha Mohamed nem megy a hegyhez, akkor a hegy megy Mohamedhez: megnyílt a világ legkisebb google irodája, pont a dán egyetem mellett. 3 fő dolgozott benne: főállásban egy titkárnő és egy rendszergazda, délutánonként meg néha beballagott az egyetemi órái után Lars Bak. Ugyan a munkája 100%-át interneten végezte, de a google-nél policy, hogy minden alkalmazottnak be kell járni, és kész. Nekik megérte ezért egy külön irodát fenntartani, hiszen nagy dobásra készülődtek leendő új brózerükkel.

Aztán 2008-ban megjelent a Chrome böngésző – ki felejtené el ezt az eseményt? Hát a Mozilla háza táján biztos nem, mert teli lett ott sok nadrág, amikor a gyakorlatban tapasztalhatták meg a v8-cal felvértezett webkit képességeit. Nosza, gyorsan nekiálltak írni egy hasonló javascript motort, ami 1 év alatt készült el, közben feltehetőleg súlyos szitkozódások mentek a fejlesztők szájából a Google irányába, hogy #%#$^@%ák meg magukat, hogy teljes titokban csináltak egy világverő brózert, és amúgy nekik miért nem jutott eszükbe ez a javascript-es “trükk”. 1 év kapkodás után ők is elkészültek a saját JIT-ükkel – igen, ez a szakmai megnevezése ennek a scriptből asm-et gyártó eljárásnak. Ők TraceMonkey-nak nevezték el az új állatkájukat. Ez a Firefox 3.5-ben debütált először 2009-ben, és a saját bevallásuk szerint is 20-40-szer(!) gyorsabb lett, mint a 3.0-ban használt SpiderMonkey. De még így is el voltak maradva a google v8-ától – a 4 év fejlesztést nem könnyű behozni nem egészen 1 év alatt; a Mozillának azért úgy-ahogy sikerült. Ha már újraírták javascript interpreterüket, akkor nem szolgai módon másolták le a v8-at, hanem saját ötlettől vezérelve azzal bolondították meg, hogy nem az egész javascript kódot fordítják le egy oldal betöltésekor, hanem csak azokat a részeket fordítják, amiket éppen a user használ, értsd: amire éppen kattint, és igényli. Ezzel gyorsabb oldalbetöltést kaptak (legalábbis ez volt a cél), de a weboldalak így már nem lettek annyira reszponzívak (újabbszépszó). A TraceMonkey-t váltotta a JägerMonkey, majd IonMonkey, abból pedig OdinMonkey lett.

Itt jegyezném meg, hogy a Mozilla világéletében szerette állatokról elnevezni a projectjeit. Ugye már a legelső nevük is a Godzillából jött; és a html rendering engine-jüket pedig Gecko-nak hívják. Ennek később lesz majd jelentősége – mármint nem az állatneveknek. Ja, és mindeközben mit csinált az Apple, mi lett a Safarival, mi volt az ő válaszuk a google v8-as húzására? Kit érdekel? Nade tényleg. Érdekel ezek után bárkit is? Najó: ők SquirrelFish-nek nevezték el.

A sok technikai rizsa után joggal kérdezhetnétek, hogy de miért, miért írtam erről ennyit? Engine-ek fejlődnek, havonta vannak új feature-ök, mindig változnak a dolgok, változik a világ, nem kéne minden lepkefingról diplomamunkát szerkeszteni… Hát, ennek “mindössze” annyi jelentősége volt, hogy a google több évnyi titokban fejlesztéssel annyira beelőzte a világot -mármint a világ brózereit-, hogy 2008-as megjelenése óta egyszerűen m-e-g-á-l-l-í-t-h-a-t-a-t-l-a-n!
„Óóó, megállíthatatlan, megállíthatatlan…persze-persze!” – mondogathatták a Mozillánál, dehát a grafikon az grafikon. És sajna a Mozilla kénytelen a browsergrafikonból éldegélni, míg a Google-nek a browser “csak” egy mellékproject. Google-nek enélkül is van pénze, sőt: a Chrome tiszta veszteséges. Mármint kiemelve a portfólióból. Azt vegyük észre, hogy a Google nem csupán kivagyiságból, vagy ki-a-fasza-gyerek mentalitásból csinálta meg a saját brózerét, hanem jól látta előre, hogy a webes szolgáltatásokban a jövő, és ehhez bizony javascript-heavy weboldalak kellenek – ő ebben jó, a webben. Gyakorlatilag csak azért volt szükségük egy gyors javascript interpreterre, hogy a webes szolgáltatásaikat el tudják adni, és azok kényelmesen, megfelelő sebességgel rohangáljanak. Nemmellesleg, hogy letarolták a brózerpiacot, az már nekik csak hab a tortán.
Mégegy dolgot megjegyeznék – a Mozilla nagy bánatára -, hogy a Chrome nem úgy készül, hogy a Google készíti a Chrome-ot. Valójában mindig csak az opensource Chromium készül, azt fejlesztik, és abból forkol minden verziónál egy sajátot a Google, és zártforrású Chrome-ként terjeszti aztán a neten. Az, hogy útközben mit rak bele – god knows… De nem ez a Mozilla bánata. A Mozilla bánata az, hogy a Chromium… Jajj! Előreszaladtam, ott még nem is tartok. (Btw. ha ezt még mindig olvasod, és nem görgettél a kommentekhez, akkor vendégem vagy egy szóbeli gratulára!)
A Mozilla kétségbeesetten próbálja azóta is visszaszerezni a brózerpiaci részesedését, de minden jel azt mutatja, hogy ez nem megy nekik. Elkeseredettségükben és a grafikonokat bámulva már ott tartanak, hogy egyenesen elkezdték lemásolni a Chrome-ot. Mind kinézetben – mind működésben. Azt remélték tőle, hogy ha ugyanúgy néznek ki, mint a Chrome és hasonló bővítményeket támogatnak, mint a Chrome, akkor majd fej-fej mellett szerepelhetnek a Chrome-mal. Ezen gondolatmeneten haladva kidobálták a saját addonjaikat, pluginjaikat – mármint a 3rd party addonokról beszélek(írok), amivel a Phoenix anno berobbant a köztudatba. A sok beépülő malware-es toolbar problémát úgy orvosolták -mert ugye a Chrome-ban sose volt ilyen-, hogy megszűntették azoknak a lehetőségét is. Ez annyit jelent, hogy a cirka 20 év alatt felhalmozódott több tízezernyi (túlzás nélkül!) 3rd party addon ment a levesbe. Mind, kivétel nélkül. Köszönhetően a XUL interface fájó hiányának és az ugyancsak kitörölt XPCOM komponesnek, ami lehetővé tette a modularitást. A Chrome sose volt moduláris, ámde népszerű; a Mozillánál pedig -szerintem, és egy volt alkalmazottjuk szerint is hibásan– úgy ítélték meg, hogy ez a népszerűség alapja. De nem. A Mozilla így azt érte el, hogy aki még mindig Firefoxot használt a sok kis hasznos kiegészítő miatt -lassabb mivolta ellenére-, azokat is elvesztették, mert így már nincs értelme Firefoxot futtatni a Chrome helyett. Helyette annyira másolják már a Chrome-ot, hogy a mostani irány az, hogy egyenesen ne legyen különbség a Chrome-os és Firefox-os addonok között, azaz tudjanak ők is Chrome-os addonokat futtatni egy az egyben. Így meg már tényleg nincs értelme az egésznek, hisz’ ki akarna egy “olcsó” másolatot futtatni, amikor futtathatja az eredeti Chrome-ot is? Vannak próbálkozások a Gecko leváltására – ez lett a Servo, ami kivételesen nem állatnév, és a Firefox a Quantum buzzword-del próbálja marketingelni. Ez gyakorlatilag csak a Gecko többszálúsítása (multithread), amiben ugyan tényleg többszálú lett a html render, de a javascriptek akkor is csak 1 magon futnak, szóval sokat nem segít, mert a js miatt “lassú a brózer”.

Nade visszatérve a Mozilla bánatára (bár mintha eddig is erről lett volna szó), az ő bánatuk fő oka a Blink. A Blink a webkitnek a forkja, még pontosabban a webcore-nak a forkja. A Blink pedig a Chromiumnak a motorja, és az új Chromium verziókat “öltözteti fel” a Google Chrome köntösbe. A webkit a blinkkel pont azt éli át, amit anno a khtml a webkittel: elhúznak előlük a fejlesztésekkel, de nagyon. Bár a Blink csak 2013-ban indult, és amúgy jelenleg kábé fej-fej mellett haladnak, de ki tudja, ez meddig lesz így. Mert a Blinket nem csak a Google fejleszti ám, hanem a Samsung, Opera, Adobe és az Intel is. Elég nagy nevek állnak mögötte, míg a Mozillával csak a Samsung kacsintgat. És itt megint visszakanyarodtunk a licencekhez: blink-kel lehet zártforrású binárist csinálni és terjeszteni, geckoval meg nem. Ma meg a mobilos webappok világában erre van szükség. A webapp nem takar mást, mint egy webkit engine-re felhúzott full featured böngészőt, amit az adott cég lebutít, hogy csak a saját url-jét lehessen vele elérni, ahol egy custom oldalt mutat. (a blinket még számolhatjuk webkitnek) Fun fact: a google-nél nagyon utálták a <blink> html tag-et (villogtatás), amit a Mozilla önhatalmúlag tett a Geckoba, valójában sosem volt a html szabvány része. A blink már a kezdetektől és azóta se támogatja ezt a tag-et; de hogy senki ne mondhassa, hogy nincsen benne: hát éppenséggel a nevében pont benne van. :->
Ide a végére lezárásként berakok egy mindent összefoglaló timeline-t, ami vizuálisan is mutatja, hogy mivel brózoltunk az elmúlt 22 évben:

Kis magyarázat az újonnan bejött engine-ekhez:
- A Trident az Internet Explorer engine-je, annak egyenesági (átnevezett) folytatása az EdgeHTML, ami tavaly év végén lehellte ki a lelkét véglegesen. Azóta az Edge is chromium, azaz webkit, azaz blink alapú.
- A Goannát a Pale Moon-os srácok forkolták le a geckoból, hogy kompatibilisek maradhassanak egy évekkel ezelőtt leforkolt Firefox 28.0 kódbázissal. Az új feature-öket direkt is nem pakolják bele, inkább csak bugfixeket tartalmaz. Amolyan retro brózernek mondanám, ami még ma is eldöcög, de sok modern weboldalon már elhasal, illetve nem működik minden funkció. Összesen két ember viszi a hátán, és inkább csak hipsterkedésből nevezték át az általuk forkolt geckot; 99%-ban ugyanaz a kód. Pro: a céljuk a XUL és XPCOM apik megtartása volt, így itt még működnek a ~20 év alatt felhalmozott addonok, páran életben tartják a leghasznosabbakat.
- A Presto pedig a méltán híres Operát hajtotta meg egészen 2013-ig. Akkor ők is feladták a versenyt a webkit-tel, és azóta az Opera is webkit alapú lett, gyakorlatilag ugyanúgy egy átskinezett chromium.
- És végül a szomorú sorsú -de végülis a webkit képében főnixmadárként feltámadt- KHTML, amit a Konqueror böngésző még használ – viszont a letöltéseknél már a Konqueror elérhető webkit alapokon is; ennek rekonq a becsületes neve.
Még ideírom, mielőtt a kommentekben valakik arra próbálnak rámutatni, hogy „jó-jó, ezek a desktop kliensek, de ma már mindenki tablettel/mobillal rohangál a zsebében és…” … és arra ugyanez az írás vonatkozik. Senki nem fog újraírni egy browserengine-t, hiszen mindkettőben ~20 évnyi nempiskóta munka van; ma a nullából kezdeni egy ilyen projektet impossible mission. Látjátok: még az olyan techóriások, mint a google és az apple meg sem próbálták, az m$ meg fél éve dobta be a törölközőt. Nem valószínű, hogy a (közel)jövőben kinőne a semmiből egy browser. Szóval iOS-en, azaz iPhone-on minden brózer webkit alapú (még a firefox is!), Androidon pedig van webkit/blink és gecko/servo/goanna is. Szóval nincs új a nap alatt, ennyi browserengine létezik.
Szóval, kedves olvasó, most már meg tudod mondani magadtól is, hogy Mosaic-ot használsz avagy KHTML-t. Ha mégse, akkor a böngésződ user-agent-je, azaz azonosítója ezt megmondja. Ezt minden weboldalnak mindig elküldöd, hogy a server tudja, hogy khtml vagy mosaic az engine-ed. Illetve “újabban” mosaic helyett mozilla, mert a godzilla sikeresen megölte/megette a mosaicot, teljesen kiírtva a köztudatból, mintha sose létezett volna. Példának álljon itt a saját user-agent-em, amit a useragentstring.com frankón ki tud elemezni.
Tehát…khm… A Mozilla/5.0 kompatibilitási okokból van a legelején, mert amikor a 5.0-ás Mozilla Netscape-nek 90%-os részesedése volt, és a KHTML fejlesztése elkezdődött, akkor kompatibilisek akartak maradni a nagytesóval, így ez történelmi okok miatt mindenképpen benne van. Utána az X11 a Unix-os megjelenítésre utal, mert az X11 protokollal hajtja meg az egész monitort, azaz a grafikus felületet. Linuxon detto, mert az majdnem Unix ugyebár. Aztán jön az AppleWebKit, merthát az Apple-é a webkit, és ezen alapul az egész – hiába Blink valójában, de ez gyakorlatilag ugye még ugyanaz. A KHTML-t asszem nem kell magyaráznom ennek a “cikkecskének” a végén… És ja, a Geckoval is kompatibilisek vagyunk, mivel a KHTML a gecko működését másolta le anno. Aztán jön a Chrome, mert ugye ez chrome…de nem. Én inkább Chromiumot használok, de mivel az engine bitre ugyanaz, így semmi gond, ha chrome-nak “hazudja” magát. (Már ha érdekel ezekután, hogy én pontosan mit használok; hát ezt: https://github.com/Eloston/ungoogled-chromium – ez egy google-telenített chromium, amiből a google összes tracking-je és lónyála ki van mazsolázva.) És a végén még a Safarival is kompatibilisek vagyunk, mivel webkit, mivel apple, blablablablabla, tudjátok már ti is, jól!
[crowdsignal poll=10316233]