Safari compie 10 anni: come il browser di Apple ha rivoluzionato il Web mobile

Safari è un browser Apple 10Dieci anni fa, il CEO di Apple Steve Jobs ha sorpreso il mondo di Internet presentando Safari, un nuovo browser Web desktop. L'obiettivo di Apple era fornire un'esperienza di navigazione Web veloce e semplice, ma di prim'ordine per il Macintosh. Da allora Apple ha aggiunto nuove funzionalità, ma tra i browser Mac Safari ha sempre avuto un vantaggio nel comportarsi come un'app per Mac e spesso è in testa al gruppo per prestazioni purissime.

Tuttavia, per molti utenti Web Safari è anche un programma. Non è mai stato più di un lontano terzo rispetto a Internet Explorer e Firefox, e poi un lontano quarto con l'ascesa di Google Chrome.

L'impatto maggiore di Safari negli ultimi dieci anni non si riflette nelle statistiche di utilizzo; piuttosto, è in WebKit. WebKit è un software che visualizza il contenuto Web. Apple ha creato WebKit per Safari, ma ora è ovunque, inclusi Google Chrome, dispositivi Android e quasi tutto ciò che è Apple. Tramite WebKit, Safari ha svolto un ruolo enorme spostando i dispositivi mobili dal debole "Web mobile" basato sul protocollo WAP (Wireless Application Protocol) per rendere smartphone e tablet a tutti gli effetti - e presto dominanti - i giocatori sul Web "reale" . Per quanto strano possa sembrare, se hai utilizzato Internet da uno smartphone o un tablet, probabilmente devi ringraziare Safari.

Come è successo?

The Olde IE Days

MacWorld Boston 1997 Jobs + Microsoft

Safari ha avuto inizio nel 2001. Apple stava distribuendo Internet Explorer come browser Web predefinito in Mac OS (Sì, giovane, c'era una volta una versione per Mac di IE) ma quando Steve Jobs tornò in Apple nel 1997, elaborò un complesso condivisione di brevetti e accordo transattivo con Microsoft. Una parte ha reso Internet Explorer il browser predefinito del Mac per cinque anni.

Le cosiddette guerre dei browser tra Netscape e Internet Explorer erano in pieno svolgimento. L'accordo di Microsoft con Apple è stato una vittoria per Redmond, ma è stato anche un problema a lungo termine per Apple. Internet stava diventando uno dei motivi principali per cui le persone usavano i computer e Apple credeva che il Web sarebbe diventato sempre più importante. L'accordo quinquennale significava che Apple stava cedendo un aspetto centrale dell'esperienza Mac a Microsoft. Microsoft non possedeva Internet, ma era famigerata per la sua strategia "abbraccia, estendi ed estingue" la concorrenza. (Quella strategia aveva aiutato a uccidere Cyberdog, un precedente browser Apple.)

Allora, come adesso, Apple preferiva controllare il proprio destino, progettando l'esperienza Mac dall'hardware in su. Passare al browser di qualcun altro in cinque anni potrebbe essere solo un esercizio per scegliere un male minore, quindi Apple ha iniziato a lavorare sul proprio browser Web molto prima che l'accordo Microsoft terminasse.

"All'inizio non ricordo una scadenza", ha scritto un ex ingegnere di Safari che non voleva essere identificato, "ma [Safari] si stava muovendo velocemente e entro l'estate [del 2002] il team era a conoscenza di quella data."

Non appena l'accordo è scaduto, Apple ha svelato Safari e aveva una beta gratuita pronta per il download. Nel giugno 2003, Safari ha raggiunto la versione 1.0 e Internet Explorer per Mac era ormai passato; a ottobre, Safari era il browser predefinito del Mac.

La Forchetta Sulla Strada

Konqueror

Il cuore di un browser Web è un motore di layout, un software che interpreta il contenuto di un sito Web e determina come visualizzarlo sullo schermo. Per Safari, Apple avrebbe potuto creare il proprio motore di layout con funzionalità esclusive per Mac, ma secondo i manager di Apple all'epoca, Apple voleva che il suo browser Web rendesse i Mac il modo migliore per accedere al Web, e questo significava creando fantastiche funzionalità solo per Mac che speravano i siti Web avrebbero adottato. Un motore di layout open source basato su standard era la strada da percorrere.

Il candidato più ovvio era Gecko, originariamente sviluppato per Netscape Navigator. Gecko aveva migliorato le prestazioni e il supporto degli standard per Netscape, e Apple avrebbe potuto usarlo: Gecko fu rilasciato come open source nel 1998, quindi non solo alimentava Netscape, ma anche browser come Galeon, Chimera, il nascente Firefox (allora chiamato Phoenix) e il browser solo per Mac Camino.

Tuttavia, quando Apple ha presentato Safari, ha anche rivelato che Safari è stato costruito attorno al motore di layout KHTML meno conosciuto di Konqueror, sviluppato dalla comunità KDE. Apple ha sviluppato la propria versione di KHTML per creare il proprio motore di layout, che ha chiamato WebKit (noto nei circoli di sviluppo come "fork"). Don Melton, il responsabile ingegneristico originale di Safari, ha notato che Apple ha scelto KTHML rispetto ad alternative come Gecko per il supporto degli standard, il design pulito e le dimensioni ridotte. Tuttavia, la scelta ha colto di sorpresa la comunità di Internet.

"KHTML potrebbe essere stata una sorpresa più grande di Apple che ha creato un browser", ha scritto Melton nel suo blog ricordando l'annuncio pubblico di Safari da parte di Jobs. “E quel momento è stato glorioso. Avevamo preso a pugni l'intera folla. "

Non tutti erano contenti. Apple ha apportato modifiche a KHTML (e al motore Javascript KJS) in segreto da un anno o più. Apple ha onorato gli impegni open source e ha iniziato a rilasciare il proprio lavoro su KDE: questo è un punto cruciale, perché significava che Apple non possedeva WebKit e chiunque poteva basarsi sui contributi di Apple. Tuttavia, l'enorme volume di materiale (e la scelta dei sistemi di tracciamento) rendeva scoraggiante l'integrazione del lavoro di Apple e alcuni si chiedevano se dovesse essere fatto del tutto.

"Gli sviluppatori di KHTML erano entusiasti e diffidenti", ha scritto uno sviluppatore KDE che ora lavora su software basato su WebKit ma non voleva essere nominato. “La mossa di Apple ha convalidato KHTML e le sue risorse potrebbero far avanzare seriamente [KHTML e KJS]. Ma nessuno voleva che Apple prendesse il sopravvento su KHTML ".

Ci sono voluti più di due anni prima che le cose si sistemassero, con Apple che ha aperto il suo intero fork KHTML solo a metà del 2005. La spaccatura riecheggia oggi: nonostante i tentativi di unire, KHTML è ancora separato ed è ancora il motore di layout predefinito in Konqueror.

Tuttavia: WebKit era fuori dal cancello e disponibile come open source ... e Internet non è stato lo stesso.

Going Mobile

HP TouchPad (webOS)

Apple utilizza WebKit in Safari e le sue app come Mail, ma anche altri software desktop utilizzano WebKit, inclusi AIR e Creative Suite di Adobe, oltre a Google Chrome, e Chrome è molto più popolare di Safari. In una piccola inversione di ruolo, Microsoft utilizza WebKit in Outlook per Mac e prima in Entourage.

Questo è un supporto significativo, ma il vero impatto di WebKit è stato sulle piattaforme mobili . Che tu ci creda o no, Nokia è stato il primo produttore di telefoni a saltare su WebKit, costruendo un browser basato su WebKit per i suoi telefoni S60. Probabilmente è stato il primo browser "reale" per un dispositivo mobile: la maggior parte dei telefoni scorreva attraverso il "Web mobile" abilitato per WAP, mentre i telefoni S60 accedevano con successo allo stesso contenuto dei browser desktop. Il browser S60 ha sollevato il velo, dimostrando che inserire un vero browser Web in un telefono non solo era possibile, ma era di gran lunga migliore rispetto ai siti solo per dispositivi mobili o ai siti che non funzionavano affatto sui telefoni.

WebKit è entrato davvero sotto i riflettori mobili nel 2007 con l'iPhone. Non solo l'iPhone accedeva allo stesso Web dei computer desktop, ma Mobile Safari era originariamente l'unico modo per creare software per iPhone. Apple ha rapidamente invertito la rotta e si è spostata verso le app native per iPhone, ma nel 2009 webOS di Palm ha fatto una mossa audace e ha scommesso tutto su WebKit: l'intera interfaccia di webOS è guidata da WebKit.

"Quando è uscito webOS, ero entusiasta perché le sue app native sono scritte con tecnologie Web: HTML, JavaScript e CSS", ha dichiarato Tomomi Imura, ex sviluppatore dell'interfaccia umana Palm, via e-mail. "Le app Web mobili venivano finalmente trattate come cittadini di prima classe e WebKit lo ha reso possibile".

WebKit ovunque

Il webOS di Palm è stato un fallimento commerciale e l'ex direttore del software di Palm, Paul Mercer, ha accusato WebKit di non funzionare come le app native. Ma la sfortunata traiettoria di webOS non ha danneggiato WebKit.

In questo momento, WebKit domina Internet mobile. I dati di NetMarketShare hanno browser basati su WebKit che rappresentano oltre l'85% del mercato mobile. Sul desktop, WebKit è rappresentato principalmente da Safari e Chrome; secondo StatCounter, si tratta di quasi il 45% del mercato dei browser desktop, anche se NetMarketShare registra un 23% più conservativo.

Chi sono tutti questi utenti WebKit? Per cominciare, sono centinaia di milioni di persone che utilizzano iPhone, iPod touch e iPad. Hai bisogno di centinaia di milioni in più? WebKit è anche il cuore di Android. Da quando i primi dispositivi sono stati messi in vendita nel 2008, il browser Android è stato basato su WebKit. A partire da BlackBerry 6, il Playbook e gli smartphone BlackBerry utilizzano WebKit; così fa il sistema operativo mobile bada di Samsung, il browser Silk assistito da cloud di Amazon per tablet Kindle Fire e persino il browser sperimentale che Amazon inserisce nei recenti ereader Kindle. Navigare sul Web su un Nintendo 3DS? Utilizza WebKit. Il prossimo sistema operativo mobile Tizen sta facendo una scommessa come webOS: Tizen è Linux sotto il cofano, ma l'interfaccia è alimentata da WebKit.

Nel mondo reale, WebKit ha contribuito a rendere coerente l'esperienza Web. Fino a pochi anni fa, non era insolito trovare siti importanti che funzionavano solo in Internet Explorer, non funzionavano in Safari o erano totalmente inaccessibili su un telefono. Ora, gli utenti Internet si aspettano che la maggior parte dei siti Web funzionerà indipendentemente dal browser o dal dispositivo che stanno utilizzando. WebKit non è l'unico responsabile, ma è stato un fattore enorme e sta raccogliendo i frutti.

"WebKit è oggi il volto del Web mobile", ha scritto l'ex ingegnere di Safari. "Non credo che nessuno lo immaginasse quando Safari è stato spedito."

La storia, destinata a ripetersi?

Come scegliere un tablet

WebKit ha un lato negativo. Il successo di WebKit sui dispositivi mobili significa che app e siti a volte fanno affidamento su funzionalità che non fanno parte della tecnologia HTML5, non ancora, comunque. Gli esempi includono modi per supportare immagini "Retina" ad alta risoluzione, insieme a sfumature, transizioni, ombre, trasformazioni ed effetti di carattere. Alcuni dei migliori siti Web e app Web per dispositivi mobili hanno un aspetto (e funzionano) migliori solo nei browser WebKit.

"Così tanti siti Web mobili sono ottimizzati solo per WebKit", ha osservato Tomomi Imura. "Gli evangelisti degli sviluppatori di Microsoft, Opera e Mozilla stanno lavorando duramente per sostenere la loro piattaforma e istruire gli sviluppatori, ma questo è un effetto collaterale del fatto che WebKit sia lo standard di fatto".

Molte tecnologie Web (da quelle semplici come Do Not Track a quelle complicate come HTML) sono definite dal World Wide Web Consortium (W3C). Le persone interessate (ma soprattutto le aziende) si uniscono a gruppi di lavoro e cercano di elaborare uno standard gratuito che tutti possono utilizzare. Il processo è solitamente lento, quindi una volta che una proposta inizia a consolidare sia i progetti commerciali che quelli open source spesso saltano sulle prime versioni come esperimento ... o per ottenere un vantaggio sui concorrenti. Gli standard W3C potrebbero non essere formalmente completati per anni dopo che una tecnologia diventa un luogo comune.

Il dominio di WebKit significa che altri motori di layout devono affrontare una scelta difficile: aspettare gli standard di domani o supportare le cose di WebKit oggi? Opera è già passata all'emulazione di WebKit; FireFox lo sta valutando fortemente e Microsoft ha scimmiottato WebKit brevemente in Windows Phone 7, quindi si è invertito. Per anni, i browser desktop non hanno avuto altra scelta che essere compatibili con Internet Explorer, perché il suo predominio significava che la maggior parte dei siti web erano progettati pensando a IE. Ora, i browser mobili devono affrontare scelte simili su WebKit. È un'eco inquietante delle battaglie tra Internet Explorer e Netscape.

I brevetti complicano anche gli standard W3C. IOS di Apple gestisce gli eventi di tocco - tocchi, pizzichi, scorrimenti e gesti - nel proprio codice, ma il modello di Apple è stato implementato separatamente da altri ed è entrato in WebKit da Android nel 2009. Il processo degli standard W3C è stato avviato e (ovviamente) WebKit i browser hanno iniziato a utilizzare gli eventi touch subito. Ma nel 2011 Apple ha divulgato brevetti riguardanti eventi tattili (incluso il brevetto USA 7.812.828, parte della lotta di Apple con Samsung e Motorola). Quei brevetti potrebbero non reggere, ma il processo del W3C per standardizzare gli eventi tattili si è fermato. Microsoft ha presentato i propri (piuttosto diversi) Pointer Events come possibile sostituto, ma la polvere non si è risolta

Che viaggio lungo e strano è stato ...

Dieci anni dopo che Apple ha introdotto Safari, non ha ancora preso il sopravvento sul mercato dei browser desktop, né ha nemmeno fatto un grande colpo. Probabilmente non lo farà mai. Tuttavia, biforcando KHTML e dando vita a WebKit, l'influenza di Safari è stata almeno altrettanto importante per il Web moderno quanto Internet Explorer e la progenie più famosa di Netscape, Gecko e Firefox. È una testimonianza dell'ampia portata della tecnologia open source ... e qualcosa a cui pensare quando si avvia il browser del cellulare.