Hoe snel het tij in de technologiewereld kan keren, ondervindt Mozilla de laatste 10 jaar met Firefox. In de jaren '00 was deze browser nog een lichtbaken van innovatie die een heerlijk frisse wind deed waaien in de browsermarkt en marktleider Internet Explorer op de knieën dwong. Maar vanaf 2008 nam Google's browser Chrome de rol van vernieuwer over en kwam Firefox in het verdomhoekje terecht (te traag, te overladen met functies).
Eind 2017 lanceerde Mozilla dan eindelijk een grondig vernieuwde Firefox onder de naam 'Quantum' (versie 57). Vriend en vijand zijn het erover eens dat Firefox hiermee terug kan wedijveren met Chrome qua snelheid en performantie. In deze sessie demonstreren we de vele handige functies van Firefox, en we belichten ook kort de onderliggende technieken (zoals de 'Quantum' rendering engine en 'Photon' interface).
Tot slot bespreken we ook de rol en betekenis van de Mozilla Foundation. Deze organisatie zonder winstoogmerk heeft namelijk veel ruimere doelstellingen dan het 'product' Firefox alleen. We verduidelijken Mozilla's missie om 'te bouwen aan een beter internet' en overlopen een aantal straffe initiatieven.
3. Context / Vrije software (GNU)
In 1984 door Richard M.
Stallman (RMS) gelanceerd.
Vrije software bevat de 4
essentiële vrijheden.
GNU Public License (GPL) is
een copyleftlicentie.
3
5. Context / Opensourcesoftware
In 1998 door een groep (Linus Torvalds,
Tim O’Reilly, Eric S. Raymond, enz.)
gelanceerd als reactie op openbaar maken
van de broncode van Netscape Navigator.
Bevat de 4 essentiële vrijheden niet.
5
6. Context / Mozilla Public License
Mozilla Public License (MPL) is een zwakke
copyleftlicentie die balans zoekt tussen een
opensourcelicentie en een vrije softwarelicentie.
MPL versie 2.0 is
compatibel met GPL.
6
10. Historiek / Mozilla
● 1998: Netscape geeft broncode
vrij + richt Mozilla Organization op
(Mozilla was de codenaam van
Netscape Navigator,
samentrekking Mosaic + Godzilla).
● 2003: Mozilla Organization richt
Mozilla Foundation op
● 2004: Mozilla Firefox
● 2005: Mozilla Foundation richt
Mozilla Corporation op 10
11. Historiek / Mozilla Application Suite
Mozilla Suite (1998-2005)
● Navigator (webbrowser)
● Communicator (mail &
nieuwsgroepen)
● Composer (HTML-editor)
● ChatZilla (IRC-client)
● Address Book
Sinds 2006: SeaMonkey
(door community)
11
12. Mozilla / financieel
Mozilla Foundation krijgt royalties
van Google (voor ‘standaard
zoekmachine’ in Firefox)
● 2004-2006: eerste deal met
Google: $61,5 miljoen / jaar
● tot op heden verlengd
2016: ca $500 miljoen/jaar
Daarnaast eigenlijk heel weinig
inkomsten.
12
13. Mozilla-manifest (2018)
● mozilla.org/nl/about/manifesto
● n.a.v. 20 jarig bestaan
● manifest ‘voor een gezond
internet’
Mozilla Festival (MozFest)
● mozillafestival.org
● jaarlijkse conferentie (Londen)
● gericht op ‘het open web’
Mozilla / Mozilla-manifest & MozFest
13
14. Firefox / historiek
Begonnen in 2002 als experimentele browser gebaseerd
op Mozilla onder de naam m/b (mozilla/browser).
● Phoenix 0.1
● Firebird 0.7
● Firefox 1.0
14
21. ● Microsoft bevestigt dat EdgeHTML wordt vervangen
door Chromium
● Chrome/Chromium op weg naar bijna-monopolie
(desktop en mobiel)
● Mozilla is ‘sterk verontrust’:
“From a social, civic and individual empowerment
perspective ceding control of fundamental online
infrastructure to a single company is terrible”
Firefox / Toekomst?
21
29. Firefox / Sleutelwoorden
● Rechtsklikken in
zoekvenster van website (vb
wikipedia)
● ‘Sleutelwoord voor deze
zoekopdracht toevoegen…’
● Kies sleutelwoord, vb ‘wpnl’
● Vervolgens kan je in de
adresbalk snel in wikipedia
zoeken, vb: ‘wpnl’ (spatie)
<zoekterm> 29
31. ● (Shift) spatiebalk: pagina
hoger of lager
● Ctrl-F of ‘/’: zoeken op
pagina (Alt-N of F3: volgende)
● Ctrl-L: location (adresbalk)
● F5 of Ctrl-R: huidige pagina
vernieuwen
● F11: op volledig scherm
● Ctrl-Shift-Delete:
geschiedenis wissen
Firefox / Sneltoetsen
31
33. ● Met scroll-knop klikken op
link: openen in nieuwe tab
● Met scroll-knop klikken op
tab: tab sluiten
● Ctrl+scrollen: tekst
verkleinen/vergroten
● Rechtsklikken: contextmenu
/ element inspecteren
Firefox / Muisknoppen
33
36. Firefox / Quantum
Project om “next generation” web
engine voor Firefox te maken.
Componenten van Servo integreren
in Gecko, maar ook verbeteringen
aan interface (Photon).
Firefox Quantum is Firefox (vanaf
57) met componenten van Servo
geïntegreerd in Gecko.
36
37. Firefox / Test Pilot
Experimentele projecten stopgezet (jan 2019) maar…
Geïntegreerd in Firefox:
● Containers
● Activity Stream
● Firefox Screenshots
Aparte projecten:
● Firefox Lockbox
● Firefox Send
Add-ons voor Firefox:
● Firefox Color
● Side View
● Firefox Notes
● Price Wise
● Email Tabs
37
38. Firefox / Mobiel
Firefox voor Android
● gebruikt Gecko
● synchroniseert met al je apparaten
Firefox voor iOS
● gebruikt iOS-ingebouwde WebKit
● synchroniseert browsergeschiedenis,
tabs en bladwijzers
● geen add-ons 38
39. Firefox / Mobiel
Firefox Focus
= een privacy-browser want blokkeert
automatisch bekende trackers en wist
uw geschiedenis.
39
40. Firefox / Mobiel
Fenix (pre-release, v0.1)
“Fenix is not your
parent's Android
browser.”
● opvolger voor huidige
Android-app
● Fenix = gebaseerd op
○ ingebouwde
Android-componenten
○ Mozilla's GeckoView. 40
42. Mozilla / Thunderbird
● 2004: versie 1.0
● 2012: Thunderbird krijgt ‘lagere prioriteit’
ten voordele van Firefox
● 2015: Mozilla wil zich terugtrekken, maar
levert toch verder serverinfrastructuur
● 2019: Mozilla engageert zich terug, o.a. om
Thunderbird sneller te maken
42
43. Mozilla / Bugzilla
Is een webgebaseerde bugtracker en in 1998
vrijgegeven als opensourcesoftware door
Netscape Communications.
Bugzilla wordt door allerlei organisaties
gebruikt om bugs in vrije en propriëtaire
software te beheren.
43
44. Mozilla / Rust
Is een algemene, gecompileerde en low-level
programmeertaal. Rust is deels geïnspireerd
op C, maar kent syntactische en semantische
verschillen tegenover C.
Is een functionele programmeertaal die focust
op veiligheid.
44
45. Mozilla / Pocket
Vroeger Read It Later, is een applicatie en
dienst om een leeslijst van webartikels te
beheren.
In 2017 gekocht door Mozilla Corporation en
geïntegreerd in Firefox. Er zijn plannen om de
code openbaar te maken, maar nog niet
gebeurd.
45
47. Firefox OS
● kort leven: 2013-2015
● leeft verder in gesloten vorm via de
fork KaiOS
● KaiOS is 3e meest populaire
mobiele besturingssysteem
○ Linux
○ gebaseerd op Firefox OS
○ o.a. op JioPhone, Nokia 8110 4G (‘banana
phone’)
Mozilla / Firefox OS (R.I.P)
47
48. Mozilla / Stopgezette producten
● Sunbird
○ agenda (Mozilla Calendar Project)
○ nu Thunderbird-extensie ‘Lightning’
● Firebug
○ Firefox-extensie voor webontwikkelaars
○ nu ‘Web Developer Tools’ (ingebouwd)
● Mozilla Persona
○ universele login voor websites
48
52. Webtechnologie / PWA’s
● Progressief: ze werken voor
iedereen ongeacht browser
● Zowel offline als online
● App-achtig
○ vanaf Chrome 72 in Google Play in browser
zonder Chrome UI mogelijk
○ toevoegen aan homescreen
● Altijd up-to-date
● Vindbaar met zoekmachines
● Linkbaar: want URL 52
53. Webtechnologie / PWA’s
PWA’s zijn monsterverbond tussen
● ontwikkelaars & opdrachtgevers
○ besparen op ontwikkelingskosten
(iOS/Android)
● Google
○ hoe meer interactie via het web, hoe beter
want meer Google-ads, analytics, etc.
● Microsoft
○ app-probleem oplossen door PWA aan te
bieden via Universal Windows Platform
● Apple
○ voorzichtige steun na aarzeling o.w.v. hoge
inkomsten van App Store 53
54. Webtechnologie / PWA’s
Enkele websites
● propriëtair:
○ Flipboard, Pinterest,
Uber, Twitter Lite,
Instagram, Tinder,
Starbucks, Google
Maps Go, ...
● open source:
○ Telegram
web.telegram.org
54
55. Enkele voorbeelden
● Gitaartuner: guitar-tuner.appspot.com
● Memorecorder: voice-memos.appspot.com
● Notities: sii.im/playground/notes
Andere voorbeelden op pwa.rocks.
Webtechnologie / PWA’s
55
56. Webtechnologie / WebAssembly
WebAssembly (wasm) maakt complexe apps,
games, video- en beeldbewerkings-
programma’s beschikbaar voor de browser
zonder het gebruik van plugins.
Bijna net zulke goede prestaties als wanneer ze
‘native’ op het systeem zouden draaien.
De open standaard wordt vormgegeven door
een W3C Community Group.
56