I 2017 skrev jeg om historien om Firefox OS, fra fødslen af B2G (Boot to Gecko) open source-softwareprojektet som et tomt GitHub-repositorium i 2011 til leveringen som Firefox OS på fem millioner enheder verden over og så til sidst blev “overdraget” til fællesskabet i 2016.

I de ca. to år, siden Mozilla annoncerede afslutningen af Firefox OS som et Mozilla-drevet projekt, har B2G-kildekoden fundet vej til et overraskende antal kommercielle produkter. Siden Mozilla gik videre med Firefox OS, er dets derivater faktisk blevet leveret på en størrelsesorden flere enheder end i hele tiden under Mozillas ledelse, og det har dannet grundlag for det tredjestørste og hurtigst voksende mobilstyresystem i verden.

I dette blogindlæg tager jeg et kig på arven fra B2G-projektet, nogle af de enheder, du kan købe i dag, der kører B2G-kode, og andre relaterede bestræbelser, som stadig fortsætter inden for og uden for Mozilla. Jeg vil dække KaiOS, Panasonics My Home Screen, Servonk, Webian, Astian OS, IceWolf OS og det seneste inden for Mozilla Research & Development. Derefter vil jeg forklare, hvorfor jeg mener, at der er et stærkt argument for, at Mozilla fremover skal indtage en mere aktiv rolle i at støtte downstream-brugere af Gecko og endda selve B2G-kodebasen.

Den mest bemærkelsesværdige fork af B2G-kildekoden er nok KaiOS fra KaiOS Technologies. Det blev startet i 2016 med et hold på 30 personer og er siden vokset til at have kontorer i Frankrig, Tyskland, Taiwan, Indien, Brasilien, Hong Kong og det kinesiske fastland ud over hovedkvarteret i USA.

KaiOS-logo

KaiOS har en brugergrænseflade, der er optimeret til ikke-touch “smart feature phones” med fysiske tastaturer og små farveskærme. Det omfatter den enormt populære JioPhone i Indien, HMD’s nostalgiske relancering af Nokia 8110 og den for nylig annoncerede WizPhone til 7 dollars i Indonesien. Med disse enheder fortsætter KaiOS i høj grad Firefox OS’s vision om at “forbinde den næste milliard” med enheder i den lave ende, der primært er rettet mod nye markeder.

KaiOS Technologies CEO Sebastien Codeville med KaiOS-enheder på CES 2019

JioPhone

JioPhone har været ekstremt populær i Indien siden lanceringen i juli 2017, delvist på grund af, at den blev givet gratis væk med et sikkerhedsdepositum på ₹1500 (21 USD), som kan refunderes ved at returnere enheden til Jio-butikker efter tre år.

JioPhone 2 blev lanceret i juli 2018 til en pris på ₹2.999 (42 USD). Den har et fuldt QWERTY-tastatur og har apps til Facebook, WhatsApp og YouTube.

JioPhone & JioPhone 2

Nokia 8110

Nokia 8110 er tilgængelig internationalt, herunder her i Storbritannien med en vejledende udsalgspris på 69,99 £ (89 USD) ulåst. Den kan fås hos mange populære forhandlere og mobilnetværksudbydere, herunder Carphone Warehouse, Currys, John Lewis, Amazon, Vodafone, EE, GiffGaff og BT.

Nokia 8110

Nokia 8110 er en meget pæn lille enhed med en intuitiv brugergrænseflade, der minder om Symbian, men med et moderne twist. Det er overraskende, hvor meget af internettet der rent faktisk fungerer på en så lille non-touch-skærm, selv om det er en meget besværlig oplevelse, hvis man er vant til en smartphone med touch-skærm.

Den tilstedeværelse af Google Assistant på feature-telefoner i denne prisklasse er bemærkelsesværdig, og den fungerer overraskende godt. For at implementere Google Assistant til KaiOS har Google skabt en brugerdefineret HTML5-app pakket til mozApp-app-køringstiden, som KaiOS har arvet fra B2G.

Nokia 8110 kører Google Assistant

Da jeg først købte Nokia 8110, havde den medfølgende app-butik i alt otte apps, og der er ingen mulighed for at installere webapps fra browseren. Siden da er den vokset en smule, men kun til omkring 30 apps, og de fleste af dem er spil. (JioPhone kommer med sin egen app-butik kaldet JioStore, og ikke alle apps er tilgængelige på alle KaiOS-enheder, f.eks. WhatsApp.)

WizPhone WP006

WizPhone WP006 blev for nylig annonceret i Indonesien i samarbejde med Google og Alfamart og kan købes fra automater for kun IDR99.000 (7 USD).

WizPhone WP006

Andre KaiOS-enheder

Andre enheder, der kører KaiOS, omfatter:

  • Alcatel OneTouch Go Flip
  • MaxCom 241 og 281
  • Doro 7050 og 7060
  • CAT B35
  • MTN Phone (kommer i 2019)

Hurtig vækst

I slutningen af 2017 var KaiOS blevet leveret på 30 millioner telefoner i U.S.A.S., Canada og Indien via partnerskaber med 20 operatører.

I juni 2018 var det nået op på 40 millioner enheder, og Google foretog en investering på 22 mio. dollars i selskabet. Som en del af denne aftale indvilligede KaiOS Technologies i at bundle Google-tjenester, herunder Google Assistant.

I slutningen af 2018 var den nået ud til over 50 millioner enheder i Nordamerika, Asien, Europa og Afrika.

I henhold til StatCounter var KaiOS ved udgangen af 2018 det tredjestørste mobilstyresystem i verden efter Android og iOS med en markedsandel på 1,13 % på verdensplan.

Verdensomspændende markedsandel for mobilstyresystemer, december 2018. Kilde: StatCounter

I Indien har det en markedsandel på 4,55 % og slår dermed Apples iOS på andenpladsen.

Indien markedsandel for mobile styresystemer, december 2018. Kilde: StatCounter

Strategy Analytics forudser, at KaiOS-enhedsleverancerne vil vokse med 50 % år for år i 2019, og at mere end 30 % af disse leverancer vil komme fra markeder uden for Indien, såsom Afrika, Sydøstasien og Latinamerika. Dette, siger de, vil gøre det til “verdens hurtigst voksende store platform”.

Panasonic My Home Screen

KaiOS er ikke den eneste gaffel af B2G. Panasonic var den første hardwareleverandør til at skabe Firefox OS-baserede smart-tv’er, som fik gode anmeldelser for deres brugervenlige design, da de blev lanceret i 2015. Da Mozilla stoppede arbejdet med Firefox OS, fortsatte Panasonic udviklingen af softwaren under navnet My Home Screen 2.0 og senere My Home Screen 3.0.

Panasonic 65″ OLED 4K Smart TV (TX-65FZ802B) kører My Home Screen 3.0

I 2019 kører de fleste Panasonic smart-tv stadig denne B2G-fork. Der sælges lokaliserede varianter, der kører My Home Screen over hele verden, herunder i Nordamerika, Latinamerika, Europa, Mellemøsten, Afrika, Asien og Oceanien. De spænder fra den billige 24″ LED TX-24FS500B i Storbritannien til £279 ($359) til den meget avancerede 77″ OLED TH-77EZ1000H i Hong Kong til HK$139.000 ($17.700).

En bemærkelsesværdig undtagelse er USA, hvor Panasonic for nylig stoppede salget af tv’er på grund af vanskelige markedsforhold. Men her i Storbritannien vil du støde på disse smart-tv’er, når du går ind i de fleste populære elektronikforhandlere på gaden som John Lewis, Currys og Argos. Nogle lister på onlinebutikker henviser endda stadig til disse tv’er som “powered by Firefox OS”, på trods af den officielle ændring af branding.

My Home Screen 3.0 er nok lidt af en Frankenstein af web- og native kode under motorhjelmen på nuværende tidspunkt, med understøttelse af en lang række live- og on-demand-videoplatforme, men brugergrænsefladen er stort set den samme.

Panasonic 49″ 4K TV (TX-49FX750B) kører My Home Screen 3.0

Jeg har Panasonic TV’er, der kører både Firefox OS branded og My Home Screen 3.0-mærket software, og mens browseren næppe har ændret sig, er app-udviklingen blevet meget mere låst.

Med det seneste “HTML v3 SDK” (baseret på standarden “Hybrid broadcast broadband TV”) er udviklerkonti stort set kun tilgængelige på invitation. Jeg ansøgte om en konto, og Panasonic ville først vide, hvilken app jeg var ved at udvikle, så de kunne beslutte, om de ville have den i deres butik.

Dette er noget af en kontrast til de oprindelige Firefox OS TV’er, hvor alle kunne aktivere udviklertilstand og og alle kunne indsende en app til Firefox Marketplace.

Men med de fleste af de store apps som Netflix, YouTube og Amazon Prime Video, der allerede er understøttet, giver My Home Screen fortsat en smart og overbevisende brugeroplevelse for smart-tv’er.

I alt sælger Panasonic ca. 7 millioner tv-apparater om året på verdensplan.

Servonk

I januar 2018 startede den tekniske leder af KaiOS, Fabrice Desré (tidligere teknisk leder af B2G hos Mozilla), et open source-projekt kaldet Servonk. Servonk er en slags “Boot to Servo” ligesom det oprindelige Boot to Gecko-projekt, men baseret på Mozillas eksperimentelle Servo-renderingsmotor.

Servonk kører i en emulator

Servonk kører på en Android-enhed

Servonk udnytter de banebrydende funktioner i Servo, er i vid udstrækning bygget på programmeringssproget Rust og følger nogenlunde den slankede arkitektur, som vi begyndte at gå over til mod slutningen af B2G-projektet.

Servonk er et meget sejt open source-projekt, men det er usandsynligt, at det snart vil blive leveret på kommercielle enheder, selv om der er nogle tidlige diskussioner om at levere en version af Necunos NC_1 (community edition) med B2G eller Servonk forudindlæst.

Servo er stadig en meget eksperimentel browsermotor, som ikke kan gengive størstedelen af websiderne på nettet i dag. Inden for Mozilla har arbejdet med Servo på det seneste mest været fokuseret på VR-applikationer og på at flytte dele af Servo over til Gecko som en del af Quantum-projektet. Servo selv er i øjeblikket stadig et forskningsprojekt.

I henhold til README er hovedmotivationen for Servonk at kradse en personlig kløe for at bygge et alternativt open source OS, og at tilskynde til bidrag til Servo fra andre end Mozilla. Hvis du tilmelder dig den (stadig overraskende travle) #b2g-kanal på irc.mozilla.org, vil du opdage, at de seneste diskussioner drejer sig om Servonk.

Webian

Mit eget Webian-projekt gik forud for B2G, men fortsætter stadig med at kravle fremad, idet det tager ved lære af mange af erfaringerne fra Firefox OS og bruger de webstandarder, det var med til at skabe. Webian er et operativsystem dedikeret til at køre standardbaserede webapplikationer.

Desktopversionen er i øjeblikket bygget på den eksperimentelle Quantum Browser Runtime (qbrt) fra Mozilla, og touch-versionen er baseret på Android Things og GeckoView.

Webian Desktop 0.3

Webian Touch

Webian Touch kører på en RasPad

Den nuværende tilgang, jeg bruger til touch-baserede enheder er at implementere systemets brugergrænseflade som en Android-app, der kører på toppen af Android Things. Android Things er dybest set en særlig version af Android, som kun kører en enkelt app (der medfølger ikke nogen standardsystembrugergrænseflade som f.eks. en statuslinje eller task manager), hvilket gør det muligt for producenterne af enheder at have fuld kontrol over systembrugergrænsefladen.

Android Things er blevet brugt til at bygge en række kommercielle “intelligente skærme” fra Lenovo, LG og Samsung (dog især ikke Googles egen Home Hub-smartskærm, som er baseret på den mere lette Google Cast-platform). Jeg bruger Android Things til at bygge mit eget browserbaserede OS ved hjælp af Gecko via GeckoView med et native system UI i skrevet i Java. Ideen er, at standardwebapps derefter kan opdages og installeres fra nettet ved hjælp af deres Web App Manifest og Service Workers, hvor de er tilgængelige.

Den positive side ved at bygge på Android Things er, at Google vedligeholder det underliggende OS og Android API’er, mens jeg har fuld kontrol over systemets brugergrænseflade og kan bruge Gecko via det eksisterende, velunderstøttede Android widget-lag. Ulempen er, at det sandsynligvis aldrig kan præstere lige så godt som B2G kunne have gjort på samme hardware, fordi det kræver det ekstra Java-lag, hvis fjernelse var en af B2G’s største fordele. Og så er Android selv naturligvis kontrolleret af Google.

Astian OS

Astian OS Logo

Astian OS kalder sig selv for en efterfølger til Firefox OS, men det er mere en åndelig forgrening end en egentlig afledning. Det er i virkeligheden en desktop Linux-distribution med en fork for webapplikationer, baseret på Devuan (en fork af Debian).

Astian OS Launcher

IceWolf OS

IceWolf Logo

Originalt kendt som Plánium OS, IceWolf OS (kan du se, hvad de gjorde der?) er et open source-projekt, der blev startet i Brasilien. Ifølge dets Twitter-profil er IceWolf OS inspireret af Firefox OS og er bygget på webteknologier.

Efter eksperimenter med NodeJS & Chromium, Electron og NW.js gør projektlederen Patrick A Lima nu en indsats for at gå tilbage til Gecko, sammen med det nye Firefox OS-inspirerede navn. Desværre (som jeg selv har oplevet) er Gecko meget sværere at indlejre på grund af den monolitiske karakter af dens arkitektur.

Plánium OS

Mozilla Projects

Mit nuværende job er at arbejde i Research & Development i afdelingen for Emerging Technologies i Mozilla. Mange af de nuværende projekter inden for Emerging Technologies har deres oprindelse i Firefox OS.

VejrVR-indsatsen, der kulminerer i Firefox Reality-browseren, blev først startet som en potentiel ny formfaktor for Firefox OS i VR-headsets.

Firefox Reality

DeepSpeech blev født som en del af stemmeassistenten Vaani til Firefox OS, og kan med tiden blive brugt i en stemmebrowser kaldet Firefox Listen.

Firefox Listen on Pocket

Den nuværende Mozilla IoT-indsats omfatter noget tidligt arbejde på intelligente skærme ved hjælp af Android Things og GeckoView.

Things Controller by Mozilla

Legacy

I de fem år under Mozillas ledelse blev der leveret omkring fem millioner enheder, der kører Firefox OS. Siden da er over 50 millioner smarttelefoner og millioner af smart-tv’er blevet leveret med B2G-kode, og adskillige nye softwareprojekter er blevet afledt af eller inspireret af det.

Ifølge StatCounter er der på mobilen nu flere brugere af KaiOS-browseren end Firefox (1,13 % vs. 0,34 %).

Mobile Browser Market Share, December 2018. Kilde: StatCounter

Deres tal viser, at KaiOS-browserens markedsandel overhalede Firefox på mobilen engang i april 2018 og viser ingen tegn på at stoppe.

Worldwide Mobile Browser Market Share 2017-2018. Kilde: StatCounter

Med den nuværende vækstrate for KaiOS og den tilsvarende nedgang i Firefox’ markedsandel, hvis KaiOS holder fast i Gecko og Mozilla ikke formår at vende udviklingen, er det muligt, at KaiOS i sidste ende kan blive den største forbruger af Gecko helt og holdent.

Men KaiOS kører i øjeblikket en meget gammel patchet version af Gecko 48, og Panasonics My Home Screen 3.0 kører Gecko 34, mens den seneste version af Gecko i Firefox er 64.

KaiOS kører Gecko 48

Panasonic My Home Screen 3.0, der kører Gecko 34

KaiOS Technologies og Panasonic er forhindret i at opgradere til en nyere version af Gecko, fordi Mozilla har fjernet al B2G-kode fra mozilla-central code repository, herunder Gonk widget-laget. Siden da er der sket betydelige arkitektoniske ændringer i Gecko som en del af Quantum-projektet, som gør det meget vanskeligt for downstream-projekter at portere B2G til den nyeste version.

Det betyder desværre, at arven fra Firefox OS i øjeblikket består af titusindvis af millioner af telefoner og tv-apparater verden over, der kører en forældet browsermotor, som sandsynligvis aldrig kan opdateres. Dette bringer potentielt brugerne af disse enheder i fare, men holder også webplatformen som helhed tilbage.

Fremtiden

Så hvad vil disse virksomheder gøre nu? Det er meget sandsynligt, at KaiOS uden støtte fra Mozilla vil blive tvunget til at migrere fra Gecko til Googles Blink-motor. Faktisk kan jeg forstå, at der allerede arbejdes på at gøre dette, med støtte fra Google Chrome-teamet.

Den resulterende arkitektur kunne ligne meget en Android/Chrome OS-hybrid, noget der er blevet spekuleret om i årevis. Panasonic kunne så bruge den samme kodebase eller bare gå over til en helt anden softwarestack.

En port af B2G til Blink er et stort projekt, men hvis det bliver til virkelighed, vil det yderligere bidrage til den WebKit/Blink-monokultur, som vi i stigende grad ser på webplatformen i dag med Chrome, Safari, Opera, Samsung Internet, Edge og Brave.

Med både Opera og Microsoft, der har opgivet deres egne browsermotorer til fordel for at bygge Chromium-baserede browsere, har Mozilla virkelig den sidste alternative implementering af webplatformen fra bunden. Det er enormt vigtigt, for uden flere interoperable implementeringer kan der ikke være nogen webstandarder.

Der er en løbende indsats fra Mozillas side for at målrette nye Android-baserede platforme med Gecko-baserede browserapps på FireTV, Amazon Echo Show og VR-headsets samt specialiserede browsere rettet mod nye markeder. Men selv om faldet i Firefox’ markedsandel er blevet langsommere i den seneste tid, idet konkurrenterne konvergerer mod Chromium-kodebasen, og Mozillas samlede markedsandel stadig er faldende, ser fremtiden for Gecko og webplatformens mangfoldighed og sundhed lidt dyster ud.

Konklusioner

Siden Mozilla har indstillet Firefox OS, har B2G-kildekoden fundet vej til et overraskende antal kommercielle produkter og danner nu grundlaget for verdens tredjestørste og hurtigst voksende mobilstyresystem. Men disse enheder kører i øjeblikket med forældede versioner af Gecko, bruger låste, pakkede app-butikker, er udviklet bag lukkede døre og er nok ikke et godt udstillingsvindue for det åbne web på den måde, som B2G oprindeligt var tiltænkt.

Jeg tror ikke nødvendigvis, at smarte feature-telefoner og smart-tv’er ville have været en stor succes for Mozilla, hvis de selv havde forfulgt disse produktretninger med Firefox OS. Disse formfaktorer er heller ikke nødvendigvis det bedste udstillingsvindue for mulighederne i det åbne web. Den uventede fortsatte arv fra B2G viser imidlertid, hvor stor værdi der stadig var i det, der har vist sig at være en meget alsidig og skalerbar platform.

Fra low end $7-telefoner med små 2.4″ skærme til high end-tv til 17.000 dollars med 77″ 4K-skærme, B2G har fortsat at præstere.

Smart feature phone to Smart TV. Kilder: KaiOS Technologies & Panasonic

Med min personlige mening bør Mozilla seriøst overveje at samarbejde med KaiOS Technologies om at genindføre Gonk-widgetlaget til mozilla-central og genvinde noget ejerskab over B2G-kodebasen. KaiOS kunne så bruge en slanket B2G-arkitektur med lokale systemtjenester, som det havde været planen med B2G-overgangsprojektet, og indføre moderne webstandarder for installerbare webapplikationer.

Dette ville gøre det muligt for KaiOS at fortsætte med at køre en opdateret version af Gecko på millioner af enheder i stedet for at skifte til Blink, hvilket mange af deres medarbejdere og partnere måske faktisk foretrækker, og det kunne bidrage væsentligt til mangfoldigheden og sundheden på nettet. Jeg tror også, at dette kunne åbne op for enorme fremtidige muligheder for nye produktområder for Mozilla også.

Der er nye formfaktorer, der dukker op i dag, såsom smarte skærme (Amazon Echo Show, Lenovo Smart Display, Google Home Hub) og tablet-hybrid-enheder (Pixel Slate, ASUS Chromebook Flip), som kunne passe godt til B2G og det åbne web.

Lenovo Smart Display. Kilde: Stacey on IoT

Pixel Slate. Kilde: Wired

Med fortsatte udforskninger inden for stemme, blandet virkelighed og IoT er der mange nye potentielle produktområder for Mozilla, som kunne drage fordel af B2G-softwarestakken.

Smarte skærme kunne for eksempel være det ideelle hjemsted for en stemmestyret, betroet personlig agent, der er i overensstemmelse med Mozillas nye treårige strategi. Mens de tidlige produkter til smarte skærme bygges på Googles Android Things-platform, og det kunne også være en mulighed for Mozilla, har selv Google selv brugt Google Cast til sit eget Google Home Hub-produkt, en mere letvægts-teknologistak, der minder meget mere om B2G. B2G kunne give Mozilla og partnere en fordel på dette marked med en platform, der er mindre kontrolleret af Google.

Der kunne være andre anvendelsesmuligheder for B2G i VR-headsets, det intelligente hjem og utallige tilsluttede enheder, som vi endnu ikke har fundet på.

Personligt ville jeg elske at se Mozilla komme ud af den komfortzone, som jeg frygter, at den har trukket sig tilbage til i de seneste år, hvor den leverer Firefox-browsere på andres platforme, hvor internettet altid er en andenrangsborger. Jeg vil gerne se nogle nye store satsninger på produkter og partnerskaber, hvor webplatformen igen får lov til at stå i centrum, hvor Mozilla ikke er begrænset af andre platformes regler.

The Web is the Platform, MWC 2012. Kilde: Madhava Enros

The web is the platform. Lad os give det lov til at skinne.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.