Když se podíváte na podíly jednotlivých desktopových prohlížečů na trhu s předpokladem, že dvě rozdílné verze téhož prohlížeče nepovažujete za jeden prohlížeč ale za dva, zjistíte, že starší verze Internet Exploreru jsou stále velmi rozšířené, zatímco u prohlížečů od jiných výrobců má většina uživatelů tu nejnovější verzi. Čím to je způsobené? Vývojáři si přejí, aby všichni měli pokud možno nejnovější verzi všeho. Je to reálné? Co brání tomu, aby se současný stav věcí přiblížil této vizi?
V minulém díle jsem připomenul dějiny Internet Exploreru a vyvodil z toho jeden poznatek – dva principy, které by měl prohlížeč dodržovat stejným způsobem, jako matematický výpočet invariant. Pokud se jeden z těchto principů poruší, prohlížeč přestane naplňovat očekávání svých uživatelů. V tomto díle se však nebudu na prohlížeč dívat jako uživatel, ale jako vedení obchodní společnosti. Ta má totiž na prohlížeč úplně jiné požadavky.
Bezpečnostní politika
Zatímco každý uživatel si určuje svou bezpečnostní politiku sám pro sebe, obchodní společnosti si nemohou dovolit, aby každý zaměstnanec mohl dělat cokoliv. Běžný zaměstnanec zpravidla nemá dostatek znalostí na to, aby správně vyhodnotil veškerá rizika svých zásahů do systému na celou organizaci. Čas od času slýchávám, jak si někteří zaměstnanci nedali pozor, udělali na počítači to a to, následkem čehož lehla celá firma. Vedení společnosti taková situace nikdy nemůže připadat vtipná, a tak se zavádí opatření, aby pochybení, které občas dělá každý, měly co nejmenší následky, ideálně žádné. K tomuto účelu slouží Group Policy Management.
Pečlivé plánování aktualizace
Intranet
Je několik webových serverů, a není jich zrovna málo, které nejsou připojeny do Internetu. Jsou přístupné jenom ze sítě obchodní společnosti, která je provozuje. Tato síť se obvykle rozprostírá přes všechny její pobočky, takže taková webová aplikace může fungovat jako podnikává, stejně jako aplikace desktopová. Tím vzniká specifická vazba pro podniky. Jeden prohlížeč slouží jak pro Internet, tak i pro intranet.
Monopoly
Podnikové aplikace musí fungovat. Pořád a nepřetržitě. Když uživatel narazí na stránku, která nefunguje, je za několik sekund u konkurence. Jenže to v podnikové síti neplatí. Zatímco aplikace pro koncové uživatele optimalizuje na líbivost, aplikace pro podniky optimalizuje na funkčnost. A když nějaká aplikace funguje, skutečně není důvod cokoliv měnit. Když už je potřeba něco měnit, je to z důvodu kompatibility nových věcí s těmi starými. A do ceny nových věcí se promítne i cena náhrady za věci staré. Takže hádejte, jestli bude mít přednost zaběhnutý systém, nebo aplikace, o které se uvažuje, že by se možná mohla nasadit.
Proškolení
Od určitého počtu zaměstnanců přesahují náklady na jejich seznámení s novým systémem pořizovací cenu samotného systému. Takže nejenže se musí dodržovat přísná softwarová kompatibilita, ale je žádoucí, aby se uživatelské rozhraní neměnilo. V praxi to znamená, že je téměř nemožné nějaký zaběhnutý systém nahradit.
Podpora
Když dva systémy spolu fungují, není potřeba nic řešit, protože to stojí čas a za ten je potřeba zaměstnancům zaplatit. Když se nasazuje systém třetí a přijde na to, že v některém z prvních dvou je chyba, je přirozené snažit se tu chybu opravit. Jenže se to málokdy povede. Buď proto, že oprava systému prvního rozbije ten druhý, nebo že systém vůbec opravit nejde. Buď zaměstnanec, který ho vytvářel, už ve firmě nepracuje, nebo firma která ho dodávala, už neexistuje.
Úspory
Podle výzkumu, který si nechal udělat Microsoft od Forresteru, používá 96 % podniků dlouhodobě jednu verzi IE, protože jim to šetří peníze. Velkým podnikům to může ušetřit i 400 000 USD ročně za každou aplikaci. Není proto divu, že každou aktualizaci prohlížeče je potřeba předem plánovat a zamyslet se nad tím, jestli se vůbec vyplatí. Kromě ceny do hry vstupují 4 faktory, které se vzájemně ovlivňují. Internet Explorer, aplikace, hardware a Windows.
ActiveX
ActiveX je rozhraní, přes které nějaký doplněk může prohlížeč rozšířit. Je to například Adobe Flash, který má na svém skóre tři zero-day zranitelnosti za poslední měsíc. Vzdal jsem snahu o každé z nich vydávat článek a místo toho jsem jen připomněl, jak tyto doplňky zakázat. ActiveX toho dovoluje opravdu hodně, prakticky dovoluje ovládnout celý prohlížeč, číst a upravovat zobrazené stránky v něm a podobně. Jenže ActiveX nebyl navržený pro internet takový, jaký ho známe dnes. ActiveX dovoloval věci, které pomocí HTML tenkrát nešly. Nejznámější je asi Microsoft.XMLHTTP, který se dostal do JavaScriptu jako XMLHttpRequest. Další je ActiveMovie, který se identifikátorem 22d6f312-b0f6-11d0-94ab-0080c74c7e95 vloží do HTML jako object a umožňuje přehrávání videa. Stejný objekt používá Windows Media Player. Dnes k tomu slouží tag video. Internet Explorer ActiveX musí stále podporovat. Slyšel jsem dokonce o případu jedné podnikové aplikace, do které je přihlašování udělané ve Flashi.
Jak na upgrade
Enterprise Mode
Enterprise Mode (v češtině Režim rozlehlé sítě) je podnikový režim Internet Exploreru. V tomto režimu Internet Explorer zachovává zpětnou kompatibilitu se staršími verzemi a to i v těch oblastech, které novější verze už nepodporovaly. Cílem bylo vytvoření moderního prohlížeče, který zachová funkcionalitu IE 8. V tomto režimu například není aktivní blokování ActiveX a jsou podporovány CSS Expressions.
Enterprise Mode Site List Manager
Aby bylo možné nahradit všechny verze IE od verze 8 tou nejnovější, je nutné nastavit pro každou aplikaci vykreslovací režim.
Site Discovery Toolkit
Protože je jasné, že nikdo nemůže vědět, v jakém režimu se aplikace vykreslují, je tu nástroj zvaný Site Discovery Toolkit. Ten posílá údaje o tom, která stránka se vykreslila ve kterém režimu do System Center Configuration Manageru. Z něho se pak dá vyčíst, jakým způsobem Site List Manager nastavit. Je dostupný pro IE8, IE9, IE10 a IE11.
Vykreslovací režimy
Proč má vykreslovací režimy jen IE?
Protože Safari, Firefox, Chrome a Sko používají ke zpětné kompatibilitě jiné mechanismy. Největší dopad má asi CSS vlastnost box-sizing, která zajišťuje kompatibilitu se starými weby. To sice vyžaduje zásah do stránky, ale na Internetu funguje konkurence, která provozovatele donutí tuto změnu udělat.
Bude Microsoft do IE přidávat další vykreslovacími režimy?
Nebude. Verzování funguje, jen pokud je proti čemu verzovat. Verzovat proti mnoha prohlížečům se nedá. Jednoduše proto, že když je číslo verze pro některý prohlížeč určené špatně, projeví se to jen v něm. Takže v tom případě bude vždy jeden prohlížeč znevýhodněn a ostatní zvýhodněny. A to je hra, na kterou výrobci prohlížečů nechtějí přistoupit. A Microsoft se svou reputací IE už vůbec ne.
Edge
Současné vykreslovací režimy se tedy nechají dožít v Enterprise Modu a všechny zastoupí jen jeden nový vykreslovací režim. Jmenuje se Edge a místo verzování bude používat stejné mechanismy, které používají ostatní prohlížeče.