Safari jde pro nás

29. 4. 2008 18:55 (aktualizováno) | Martin Hassman

Nedávno dorazil prohlížeč Safari v podobě betaverze i na Windows. Ačkoliv první betaverze spíš jen padala, brzo se vše opravilo a nyní již můžeme spokojeně testovat.

Překvapivě v češtině nevyšla žádná zajímavá recenze, našel jsem jen jednu úvahu stojící za přečtení Browser Wars II.: Útok Maců. Já se pokusím jen o několik postřehů.

Předzvěsti věcí budoucích

Na budoucnost Safari jsem velmi zvědav. Nejen, že po několika nudných letech (s víceméně setrvalým trendem) opět nastává zajímavá změna na poli webových prohlížečů, ale i proto, že Safari konečně vrátí na web další propagační strategii.

Po IE, které je uživatelům distribuováno automaticky s operačním systémem a s mizivým marketingem, po Firefoxu, který je propagován virálním marketingem a po Opeře, která marketing tolik neřeší (a když řeší, tak špatně), tu máme produkt Apple – firmy, která je svým marketingem proslulá a neučí se ho jako Mozilla.com za pochodu.

Předpokládám, že Apple se bude snažit Safari prosadit mj. pomocí bundlování s dalšími produkty á la iPod, iPhone apod. Safari nebude jako Firefox šířeno uživateli zdola, ale shora. Jsem velmi zvědav, jak se to v dnešním světě ukáže efektivní.

Nicméně dnes všichni píšou o tom jak Safari nemůže uspět, a mají v malíčku marketing i veškerou moudrost světa, takže úspěch Safari musí být jen bláhová iluze. Uvidíme za dva roky 8-)

iPhone

Jaký má vztah iPhone a Safari? Velký! Nebylo jasné, zda programátoři budou moct psát vlastní aplikace pro iPhone (pokud nabourají ochranu, tak samozřejmě budou, myslím oficiálně). Odpověď zní, ano, mohou psát aplikace, ale bude se jednat pouze o aplikace běžící na jádru Safari – Webkitu (detaily), tedy de facto o webové aplikace, případně offline webové aplikace.

Na Webkitu jsou postaveny widgety dashboardu Mac OS X, teď k nim tedy přibudou widgety na iPhone, odhaduji, že vzápětí nabídne Apple widgety pro Windows. V případě úspěchu iPhone a jeho cool aplikacícool vzhledem dost možná vzroste zájem mít ony cool widgety i ve svém počítači a IMHO to bude jedna z hlavních cest, jakou se začne Safari dostávat na desktopy uživatelů.

BTW rozhraní naprosté většiny widgetů je tvořeno pomocí canvasu, jehož specifikace je součástí HTML5. O canvasu jsem již psal v Je canvas připraven pro web? a Canvas – Doom ve vašem prohlížeči.

Noční buildy

Pokud vás vývoj Webkitu, na kterém Safari běží, opravdu zajímá (např. sledujete jejich blog a bugzillu), tak vás potěší, že se již automaticky buildují i noční buildy pro Windows. Jsou to jen buildy Webkitu, takže již musíte mít Safari nainstalováno, pouze stáhnete nový Webkit a spustíte ho přes run-nightly-webkit.cmd, více viz návod. Mě tahle jednoduchá možnost mít vedle sebe několik instalací Webkitu vzájemně se neovlivňujících, schopných i běžet zároveň nadchla. Vzpomínám na časy, kdy jsem pracně spouštěl vedle sebe několik verzí Gecka.

Inspector

Pokud hledáte pro ladění svých svých webových stránek elegantní nástroj a dosud jste ho nenašli, vyzkoušejte Inspector, o který lze Safari rozšířit. Jak ho nainstalovat a co umí popisuje Adam Hauner v Inspekce u Safari nebo Alexander Kirk v Webkit catching up with Firefox and Firebug.

Debug menu

Safari obsahuje skryté debug menu, zobrazíte je úpravou souboru Preferences.plist, viz Enable Debug Mode on Safari (Windows) Error.

Pokud vás jako správné webdesignery zajímá, co značí zajímavě znějící volba Site-Specific hacks v debug menu, která je standardně zapnutá, tak jí můžete klidně přejít, protože se pouze jedná o hack zasílající serverům Yahoo.com a Flickr.com upravený UAstring. Safari se na těchto webech nemaskuje za jiný prohlížeč, ale za starší verzi sebe sama.

Například Flickru moje Safari posílá:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/418.9.1 (KHTML, like Gecko) Safari/419.3

namísto správného:

Mozilla/5.0 (Windows; U; Windows NT 5.1; cs) AppleWebKit/522.4.1+ (KHTML, like Gecko) Version/3.0.2 Safari/522.13.1

Proč se tomu děje se mi nepodařilo dohledat (resp. jsem se nedokázal dostat do bugtracking systému, ve kterém je ten důvod popsán – pro zájemce odkaz do zdrojáků na _userAgentForURL), pravděpodobně se tím obchází nějaký problém s detekcí prohlížeče na straně serveru. Více o UAstringu Safari najdete u člověka, který o nich ví snad nejvíc na světě (tohle myslím vážně, klidně si dva dny něco o UAstringách nastudujte, a pak položte AHA záludnou otázku a on vás stejně strčí do kapsy k ostatním) v článku Struktura identifikace Safari se mění.

Kompilace Webkitu

Webkit je Open Source (poze Webkit, nikoliv celý prohlížeč Safari, takže jako GUI musíte buď použít Safari nebo počkat až někdo napíše nějaké vlastní, což pokud již nenastalo IMHO nastane brzy). Buildování Webkitu není nijak složité, stačí jet podle postupu začínajícího na straně Installing the Developer Tools.

Jediný krok, který jsem napoprvé spletl, je instalace cygwinu. Instalujte cygwin přesně podle návodu tím jejich cygwin-downloaderem a ušetříte si řadu problémů. Zkompilovaný Webkit potom ve svém Safari spustíte podobně jako noční build Webkitu (viz výše).

Trochu mne zarazilo, že ke zkompilování musím použít WebKit Support Library, který není pod otevřenou licencí (ale možná to ta licence řeší, já ji příliš nezkoumal).

Webkit – přenositelné jádro budoucnosti?

Webkit mne opravdu nadchl. Jedna 4MB knihovna a pár konfiguračních souborů. Sbohem Gecko, sbohem balaste desítek souborů! (Nechápejte mne špatně, mám Gecko rád, ale tady si prostě nechal o pár let ujet vlak.)

V tuhle chvíli stále řada aplikací používá na Windows pro zobrazování (často nejen HTML, ale i svého GUI) jádro Internet Exploreru. Pokud se snaží být platformně nezávislí, tak switchují (na Windows IE, na Linuxu Gecko či KHTML). Málokdo na Windows běží na Gecku (třeba OpenOffice.org ano a nejsou z toho zrovna nadšení).

Ač nerad, jsem přesvědčen, že Webkit svým portováním na Windows Gecko v tomhle směru nahradí. Už mu zbývá jen port na Linux (KHTML je hezké, ale je to jen malý potůček, který se teď jen smutně vlévá do dravé řeky Webkitu) a máme tu konečně pořádně jádro. Pokud by Apple připravil port Webkitu na Linux, IMHO ho vývojáří multiplatformních nástrojů a la wxWindows hned začnou používat místo stávajícího IE a Gecka.

Prognózy v tomto článku se můžou zdát odvážné, já jsem ale přesvědčen, že se většina z nich během nejbližších let splní.

Anketa

Kdy dosáhne Safari 10%?

  • 29. 6. 2007 12:20

    Pavel "JasnaPaka" Cvrček (neregistrovaný)

    Osobně nejsem takový optimista, ale to asi Martine víš. Jedna věc je svět Maců, kde Safari či Quicktime patří za "killer" aplikaci, ale jak třeba ukazuje Quicktime, mimo svět Macu už to není ono. Dáváš za příklad možnost prosazení s iPhonem. Pokud pominu fakt, že vázání na konkrétní prohlížeč mi moc nevoní, tak si vzpomenu na výsledek nějaké té ankety, která proběhla v USA, a jejíž výsledek říká, že o iPhone prý není moc zájem. A že jsou určitě uživatelé marketingově slušně masírování. Jedním z hlavních důvodů je prý jeho cena. Pokud je to s tím zájmem tak, pak nečekám velké rozšíření a mimo USA to bude jen horší.

  • 29. 6. 2007 13:19

    Martin Hassman (neregistrovaný)

    Mě právě zajímá, kam až a hlavně jak rychle je schopen to marketing zvednout. Navíc Webkit je úžasné jádro a to, co mu teď chybí, je právě ten marketing - dostat ho mezi lidi. Přál bych si, aby se brzy objevil i nějaký bratříček Safari - webkit s klasickým windowsím GUI - někomu by to vyhovovalo víc.

    Otázka je jasná - a zní kdy 8-)

  • 29. 6. 2007 14:43

    PF (neregistrovaný)

    Zajímalo by mě jak moc je to s tou propojeností khtml (tedy konqueroru) a safari. Například když v konqueroru zavítáte na googlovskou fotogalerii (picasaweb.go­ogle.com) tak nefungují některé pokročilejší funkce (slideshow, přesouvání obrázku v nasavení galerie a tak...) kdežto u safari to funguje. Má safari nějak líp zpracovaný javascript??
    Jinak jsem docela zvědav jak se safari prosadí, ale když se třeba člověk podívá jak moc rozšířený je quicktime (tedy přehrávač) tak to moc optimisticky nevypadá (nainstalovaný ho má spousta lidí kvůli prohlížení movů, ale jako přehrávač hudby ho moc lidí nepoužívá, alespoň v mém okolí ne...)

  • 29. 6. 2007 14:45

    Martin Hassman (neregistrovaný)

    [3] Zatím to vypadá, že nůžky mezi Webkitem a KHTML jsou čím dál víc rozevřené.

  • 29. 6. 2007 14:48

    PF (neregistrovaný)

    neslyšeli jsme náhodou různé povídání o návratu komunitě? V čem je problém? Apple nedá, nebo vývojáři konqueroru neberou?

  • 29. 6. 2007 14:59

    Martin Hassman (neregistrovaný)

    [6] S dostupností kódu není největší problém, ten je na http://svn.webkit.org/repository/webkit/trunk/ byť někdy je tam commitnut se zpožděním, Apple je firma využívající momentu překvapení (podobně jako třeba Google) a není ráda, když jí někdo kouká do toho, co připravuje, takže např. když se připravoval port Safari na Windows, byli změny prováděny v nějakém interním repozitory, aby si toho navenek nikdo nevšiml. A teprve po oficiálním vyhlášení a vydání Bety byly vloženy do veřejného SVN. Nevím, kolik to je kódu a zda to nemůže vadit.

  • 29. 6. 2007 15:12

    Martin Hassman (neregistrovaný)

    [5] (v předchozím komentáři měla být pětka 8-) Problém bude (neznám detaily a sleduju víc Apple zdroje než KDE, tak budu rád, když mě někdo upřesní nebo doplní - pro pohled z druhé strany viz třeba Miroslav Suchy http://suchy.blog.root.cz/0704/khtml-webkit-unity-spise-ne ) ve velikosti Webkit komunity. Ta už dávno přesáhla ono maličké KHTML. Teď mám na mysli vývojářskou komunitu. Mě opravdu překvapilo, když jsem se několikrát připojil na #webkit kanál a našel tam čirý ruch srovnatelný např. s ruchem vývojářů okolo Gecka. Navíc Webkit dělají lidé, kteří umí s komunitou spolupracovat (např. Hyatt, který má zkušenosti z Mozilly), to je vidět na spolupráci placených vyvojářů Applu s vývojářskou komunitou. Podrobné návody na kompilaci i pro lidi jako jsem já (KHTML bych si asi nikdy, do Webkitu jsem teď s radostí šel, abych si ho ošahal - návod jak pro blbečky pro mě přímo ideální).

    KHTML nemůže tohle tempo stíhat (proto jsem psal o té dravé řece) a buď se smíří s tím, že se bude muset Webkitu trochu přizpůsobit (a vedle tak velké komunity to je KHTML, kdo by se musel přizpůsobit - malý tomu velkému), a moct tak z něj těžit, nebo si pojede KHTML po svém a zůstane vzadu. Vzít si z Webkitu můžou cokoliv, jen to viditelně nestíhají. Možná, že KDE je prostě veliké a KHTML je jedním z jeho zákoutí a KDE vývojáři se věnující jiným činnostem a KHTML nechávají plavat.

    Rád tu uslyším názor kohokoliv, kdo sleduje KDE a KHTML zdroje, já to vidím spíš z pohledu Webkitovské komunity.

  • 29. 6. 2007 15:32

    Martin Hassman (neregistrovaný)

    Z pohledu inovací webu. Členy WHATWG dnes třeba jsou vývojáři Safari, Opery a Mozilly viz http://www.whatwg.org/charter dole. Nikde tam nevidím nikoho za KHTML (a WHATWG je otevřená, když by se někdo přihlásil, nevidím důvod, proč by ho nevzali).

    Teď jsem si procházel i těch 484 členů HTMLWG u W3C http://www.w3.org/2000/09/dbwg/details?group=40318&public=1 všichni výrobci prohlížečů tam mají své zástupce, obvykle několik, ale za KHTML (nebo KDE) tam nikoho nevidím. Což mě jen utvrzuje v tom, že za KHTML dnes asi nikdo pořádně nestojí, já si jinak nedovedu vysvětlit, že by se o dění ve W3C nezajímali.

  • 29. 6. 2007 15:43

    PF (neregistrovaný)

    ...skoro se nabízí kacířská myšlenka, že by nebylo špatný, kdyby Safari portovali i na Linux...

  • 29. 6. 2007 16:03

    colos (neregistrovaný)

    Pro běžného uživatele bude důležité: 1. český překlad, 2. poradna s řešením problémů např. - ( http://forum.czilla.cz/ nebo http://www.operacesky.net/forum/ ) 3. pokud se všechny stránky zobrazí jak mají - uživatel Safari zkusí.

  • 29. 6. 2007 17:08

    Jakub Šťastný (neregistrovaný)

    Abych rekl pravdu, Gecko me obcas leze poradne na nervy, na Safari se opravdu tesim :) Hodilo by se i pro Linux tedy ;) Kazdopadne muj macbook uz je na ceste, takze Safari si uziju nativne :))

  • 29. 6. 2007 22:06

    David Majda (neregistrovaný)

    [9] Někde (teď už nevím kde a jsem líný to hledat) jsem četl, že se pracuje na GTK portu, takže Linuxu se možná v dohledné době dočkáme. Ale nejsem si úplně jistý věrohodností zdroje informace.

  • 1. 7. 2007 21:16

    Pavel Koudelka (neregistrovaný)

    [12] Jestli se nepletu, o neco takoveho se snazi docela zajimavy projekt Kazehakase. Tenhle prohlizec sice nativne pouziva Gecko, ale nejnovejsi verze umeji prepnout jadro na WebCore (podmnozina WebKitu). Nemohu potvrdit, v Ubuntu Feisty repozitarich je jen starsi verze bez WebCore a kompilace a ja si prilis nerozumime :-), ale muzete to ozkouset: http://kazehakase.sourceforge.jp/

  • 1. 7. 2007 21:51

    Daniel Kvasnička (neregistrovaný)

    No, WebKit taky po ocku sleduju a bylo by fajn, kdyby se vice rozsiril. Ja bych byl rad, kdyby vznikl nejaky svizny a nepreplacany (ale hlavne jednoduse rozsiritelny) WebKit prohlizec zalozeny na GTK+. A podle toho, co jsem nasel na Googlu, tak mrtvo v tomto ohledu tak uplne neni (http://www.atoker.com/blog/2007/06/12/webkitgtk-is-coming/).

    Jinak Gecko bych tak nezatracoval. Je fakt, ze diky JavaScriptu a XULu propukla takova epidemie rozsireni jako nikdy u zadneho jineho prohlizece a at se mi chovani Flocku (popr. Firefoxu) nemusi jakkoliv libit, nektera rozsireni me u nej drzi, protoze nahrada se tezko hleda.

  • 2. 7. 2007 12:44

    Martin Hassman (neregistrovaný)

    Neco z pohledu marketingu dnes vyslo v Why iPhone May Really Matterhttp://www­.readwriteweb­.com/archives/why_ip­hone_may_really_mat­ter.php nemala cast se tyka prave Safari.

Přidávat nové názory je zakázáno.

120na80.cz: Jak se zbavit nadměrného pocení?

Jak se zbavit nadměrného pocení?

DigiZone.cz: CZ a SK Digi TV budou spolupracovat

CZ a SK Digi TV budou spolupracovat

DigiZone.cz: Nová role Jaroslava Tvrdíka

Nová role Jaroslava Tvrdíka

Měšec.cz: Platíme NFC mobilem. Konečně to funguje!

Platíme NFC mobilem. Konečně to funguje!

Lupa.cz: Největší pitominy s logem “nyní smart a připojené”

Největší pitominy s logem “nyní smart a připojené”

Vitalia.cz: Tohle je Břicháč Tom, co zhubnul 27 kg

Tohle je Břicháč Tom, co zhubnul 27 kg

DigiZone.cz: Sázka na e-sporty stanici Prima vychází

Sázka na e-sporty stanici Prima vychází

120na80.cz: 7 překážek při odvykání kouření

7 překážek při odvykání kouření

Vitalia.cz: Petr Koukal: Až rakovina mi zkvalitnila život

Petr Koukal: Až rakovina mi zkvalitnila život

Vitalia.cz: Bio vejce nepoznají ani veterináři

Bio vejce nepoznají ani veterináři

Vitalia.cz: Cheese&Chilli: předsudky o nudné britské kuchyni

Cheese&Chilli: předsudky o nudné britské kuchyni

Vitalia.cz: V dTestu vyhrál levný opalovací krém

V dTestu vyhrál levný opalovací krém

DigiZone.cz: Skylink o půlnoci vypnul 12 525

Skylink o půlnoci vypnul 12 525

Podnikatel.cz: 3 velké průšvihy obchodních řetězců

3 velké průšvihy obchodních řetězců

Podnikatel.cz: Od baletu k požární ochraně. A jiné rarity

Od baletu k požární ochraně. A jiné rarity

Podnikatel.cz: Daň z nemovitosti? Změny budou v říjnu

Daň z nemovitosti? Změny budou v říjnu

Podnikatel.cz: Tahle praktika stála šmejdy přes milion

Tahle praktika stála šmejdy přes milion

Vitalia.cz: Klíšťata letos řádí, skvrna se udělá jen někomu

Klíšťata letos řádí, skvrna se udělá jen někomu

DigiZone.cz: ČT vypíše výběrové řízení na iVysílání

ČT vypíše výběrové řízení na iVysílání

DigiZone.cz: Sat novinky: pátý kanál maďarské televize

Sat novinky: pátý kanál maďarské televize