Король помер. Нехай живе король! Чи стане Safari новим Internet Explorer
Усім привіт! Мене звати Сергій Журавель. Я допомагаю компаніям розробляти вебзастосунки, студентам вивчати JS, а коли є трохи вільного часу — пишу статті для DOU. Нещодавно мене попросили пригадати кілька «страшних» історій, які трапляються з програмістами, і мені одразу пригадалися реальні пригоди з браузером Internet Explorer, браузером, який був спочатку чудом, а потім жахіттям, яким досі лякають новачків-веброзробників. Тож я вирішив пригадати цю історію більш детально і поділитися з вами.
Ця стаття буде цікавою тим, хто хоче згадати або дізнатися більше про часи «війни браузерів», тим, кому цікаво, як розвиваються сучасні браузери, а також тим, хто просто хоче почитати щось цікавеньке.
Історія про те, що в минулому браузер IE від Microsoft хотів стати королем, і у нього це вийшло, але з часом він став не влаштовувати свої підданих і не хотів розвиватися. Йому знайшли заміну, прийшли нові, амбітні та гнучкі браузери. Веброзробники почали забувати про часи, коли потрібно було дуже багато сил та часу віддавати на підтримку одного браузера, яким користувалося все менше людей. І ось почали ширитися чутки, що новий браузер може повторити історію IE.
Safari є королем у своєму iOS-королівстві, але він почав відставати в розвитку. Чи повторить Safari долю IE, чи навчиться на помилках минулого?
Пролог
Давно минули часи, коли браузер Internet Explorer від компанії Microsoft наводив жах на веброзробників. Сьогодні вже виросло нове покоління розробників, що навіть не знають про такий браузер і скільки проблем потрібно було вирішити, щоб вебсайт правильно відображався і працював в ньому. Здавалося б, сьогодні можна вдихнути вільно і спокійно жити, радіючи новій реальності, в якій всі браузери підтримують один стандарт і вчасно його реалізують. Але чи дійсно це так? Чи нас знову чекає небезпека у вигляді браузера, який має власну думку на стандарти та їхню реалізацію?
Кажуть, що історія повторюється двічі — один раз як трагедія, і другий раз як фарс. Давайте розберемося, що було в минулому. Що було не так з браузером IE і чи можливо зробити висновки з помилок компанії Microsoft? Хто новий король серед браузерів? І що не так із Safari?
Початок історії і «війна браузерів»
Думаю, всі чули про такий період як «Війна браузерів». Історія ця дуже цікава та інтригуюча, всім раджу більше детально про неї почитати. Хочу лише нагадати деякі основні моменти.
До 1996 року більшу частину ринку захопив браузер Netscape Navigator. За нього потрібно було платити лише корпораціям, а звичайні користувачі могли отримати його безкоштовно (так, в ті часи браузери продавалися як і інші програми, сьогодні це звучить трохи дивно, бо всі браузери є безкоштовними). Браузер доволі швидко завантажував текст на сторінках та підтримував сучасні технології, наприклад cookies та JavaScript.
Коли компанія Microsoft вирішила почати «битву за трон» (гонитву браузерів), то перед розробниками Internet Explorer поставили завдання в короткий строк створити програму, що відвоює першість у Netscape. За основу для першого релізу обрали браузер Mosaic (якого сьогодні вже не існує).
У серпні 1995 року виходить перша версія Internet Explorer. Тоді вона ще не була інтегрована в Windows і планувалося пропонувати її для вільного скачування. Інтегрований у Windows 95 браузер вийшов в 1996 році, і хоча захоплення ринку ще не почалося, але перші шанувальники вже з’являлись. Цікавий нюанс: з другого релізу браузер працював як на Windows, так і на macOS.
У вересні 1997 року Microsoft випускає четверту версію браузера Internet Explorer і наступного дня співробітники Netscape побачили на газоні перед офісом неприємний сюрприз: логотип Internet Explorer. Тим самим була офіціально заявлена мета відвоювати ринок браузерів у Netscape і IE пішов у наступ.
З початку «війни браузерів» у компанії Microsoft було багато переваг, наприклад, передові для того часу фічі як робота з електронною поштою та групові політики безпеки для корпорацій. Окрім того, користувачі Internet Explorer отримували його безкоштовно (що не було чимось звичним на той час, наприклад, перші версії Opera були платні) разом з Windows, яка вже тоді була найпопулярнішою операційною системою.
Окрім того, користувачам не потрібно було кликати спеціаліста, щоб встановити додаткову програму, можна було просто відкрити потрібне вікно і вийти в інтернет. Тому дуже швидко Netscape втратив популярність (особливо на корпоративному ринку), а Internet Explorer переміг у цьому протистоянні і практично без перешкод почав забиратися на п’єдестал.
Тож не дивно, що з в період з 1999 по 2003 роки браузер Internet Explorer завоював величезну долю ринку і практично знищив Netscape Navigator, що тоді практично не оновлювався. Цей період зазвичай вважають золотою ерою IE (за деякими даними, в цей момент браузером користувалися до 90% користувачів інтернету).
Кінець ери Альтрона Internet Explorer
В 2001 році відбулася подія, що спочатку принесла шалену популярність ІЕ, піднявши його на вершину Олімпу, а потім призвела до його загибелі. У цей рік вийшла шоста версія браузера ІЕ. Саме вона стала причиною ненависті веб-майстрів всього світу до ІЕ, тому що ця версія ігнорувала загальноприйняті стандарти розробки.
Тобто сайти, що відмінно виглядали у всіх відомих браузерах, мали багато проблем в Internet Explorer 6. Це дуже не подобалося багатьом, особливо розробникам. Але і у користувачів не викликало радощів, що браузер міг зависнути або навіть призвести до «синього екрану смерті» (погугліть blue screen of death issues with internet explorer, щоб побачити, скільки є подібних запитів. Причин, що призводили до BSOD, було багато, наприклад некоректно зверстана сторінка сайту). Також було багато проблем з безпекою.
Але чому так сталося? Є думка, що це результат запаморочення від успіхів. Справа в тому, що сама по собі шоста версія браузера була доволі хорошою для того часу. Окрім того, вона йшла разом з найпопулярнішою операційною системою Windows XP, що побила всі рекорди популярності серед користувачів (я ще пам’ятаю, наскільки вона дійсно була крутою і не було бажання переходити потім на Windows Vista і навіть на наступні версії). Навіть сьогодні ще є комп’ютери з цією ОС (а пройшло вже більше 20 років).
Тож склалася просто фантастична ситуація для компанії Microsoft: популярна версія браузера встановлена на ще більш популярну ОС. Мабуть, здавалося, що ніщо не може влинути на цих «колосів родоських».
Але вийшло так, що Microsoft не змогла потягнути протистояння з усім світом. Важко сказати, що саме було причиною, але те, що спрацювало з Windows, не спрацювало з ІЕ: користувачі не прийняли нав’язані правила гри і почали шукати інші програми для серфінгу інтернету.
За шостою версією браузера закріпилася дурна слава як серед розробників, так і серед користувачів. І чим більше зростала популярність XP, тим більше росло незадоволення вбудованим в неї браузером.
Компанія Microsoft багато разів намагалася врятувати ситуацію, але нові версії браузеру не змогли зупинити втрату популярності. Компанія офіційно заявила про зупинку підтримки ІЕ з 2022 року. Microsoft створила новий браузер Edge, але навіть факт того, що Windows все ще є найпопулярнішою ОС, вже не домагає поширювати свій власний браузер, отримати нових прихильників дуже складно. Адже за територію тепер б’ються дуже потужні конкуренти.
Статистику по популярності браузерів та як змінювалася популярність браузерів у часі можна подивитися ось тут або ось тут.
Які ще були причини занепаду ІЕ
Звичайно, основною проблемою занепаду IE було те, що веброзробники всього світу не погодилися прийняти правила гри від компанії Microsoft. Браузер мав багато особливостей, які потрібно було окремо підтримувати. В той же час вже було декілька нових і модних браузерів, які ще й підтримували спільний стандарт. Але були ще моменти, що прискорили падіння короля браузерів.
Наприклад, кілька років тому Кріс Захаріас розповів історію, як він прийняв участь у заговорі розробників Youtube «вбити» IE6. Якщо коротко, то розробники втомилися підтримувати примхи ІЕ та одного разу зібралися і прийняли рішення відобразити банер «Ваш браузер застарів, скачайте новий» для користувачів IE6. За офіційною версією, вони зробили це без затвердження менеджерами, тобто самовільно. Ця подія призвела до дуже швидкого падіння популярності ІЕ (не лише 6 версії) на 10%.
Що маємо сьогодні і хто новий король
Google Chrome
За статистикою використання браузерів, сьогодні ми маємо нового короля. Велику частину ринку сьогодні займає Google Chrome. Думаю, його популярність була значною частиною пов’язана з розвитком пошукової системи від цієї компанії. Також є інформація, що Google використовував не дуже чесні прийоми в конкурентній боротьбі, щоб захопити ринок. Ексробітник Mozilla у Twitter розповів, що в Google постійно запевняли, що вони на одному боці з Mozilla, але при цьому відбувалися дивні речі: реклама Chrome разом з ключовими словами при пошуку Mozilla, Google Apps переставали працювати в Mozilla, демосайти починали блокувати Mozilla і писати, що вони несумісні з Mozilla і не підтримують його. Можливо це було просто співпадіння, але Johnathan Nightingale вважає, що спеціалісти Google не могли бути настільки некомпетентними, щоб допустити стільки помилок (хоча я підтримую бритву Генлона — «Ніколи не вбачайте злого наміру в тому, що цілком можна пояснити дурістю»).
Навіть сьогодні існує думка, що Chrome продовжує нечесну гру. Наприклад, Youtube доволі довго працював на застарілому Shadow DOM v0 API, який підтримував лише Chrome (Blink), через що Youtube працював дуже повільно в інших браузерах).
Але якими б не були причини, Chrome утримує пальму першості з результатом вище 60% останні декілька років. Чи може щось похитнути трон? Скоріш за все, поки що не видно хмар над королівством. Тим паче, що наразі ще є інші браузери, що претендують зайняти місце «хлопчика для биття».
Mozilla Firefox
Також потрібно згадати про браузер Mozilla. Цей браузер, як і однойменна організація, з’явилася на уламках Netscape, — після того, як в мережі опублікували вихідний код Netscape Navigator, що став основою пакету програмного забезпечення Mozilla Suit.
Проєкт отримав назву в честь старого маскоту Netscape — зеленого динозаврика, що посміхається. В перші роки Mozilla Suit займалися в основному ентузіасти на пожертви та фінансування від корпорації AOL. До 2006 року браузер Mozilla Firefox зміг зайняти більше 10% ринку. Тож Netscape Navigator в якомусь сенсі також взяв участь в перемозі над королем ринку, або як мінімум в переділу ринку, коли ІЕ втрачав позиції. Але Chrome зміг перемогти і Firefox.
Можливо, через програш, Firefox на деякий час вибув з гонки і зайнявся глибоким рефакторингом, створюючи нову платформу. Завдяки новій платформі зараз у Firefox вже є можливості позмагатися з Chrome. Наприклад, деякі тулзи в Firefox виходять кращими, ніж в Chrome, тому деякі веброзробники переходять на Firefox. Але як мінімум поки що, Firefox не може потягатися з Chrome. Хтозна, можливо вже скоро зможе, адже браузеру дійсно є що запропонувати і користувачам, і розробникам.
Safari
Також значну частину ринку (особливо мобільного) займає браузер Safari. Це особлива історія, яку розглянемо окремо. Звичайно, браузер не поганий, але як на мене, він завжди був в чомусь схожий на IE — мабуть, насамперед тим, що він вбудований в операційну систему від компанії Apple. Тобто вже є якийсь елемент нав’язування та можливість у розробників думати «а куди ті користувачі дінуться». Можливо ще тому, що для мене дуже добре запам’яталося протистояння компаній Microsoft та Apple (про їхній розвиток, протистояння та спільну історію навіть зняли фільми, наприклад «Пірати Кремнієвої долини»).
Десь два роки тому я зацікавився темою PWA (прогресивних веб додатків). Тоді я дізнався, що компанія Apple на словах підтримує розвиток цієї технології, але в реальності не поспішає її реалізовувати в браузері Safari. Також давно помічав, що все більше і більше CSS хаків потрібно було додавати саме для Safari (до того ж, окремо для десктопної і мобільної версій).
Був час, коли ми активно використовували різні транспайлери та шими і не замислювалися про це. Але сьогодні все більше веброзробників замислюються над питанням: якщо вже немає ІЕ і всі браузери підтримують останні стандарти, то навіщо тоді траспайлери та шими, давайте писати на модернових технологія і не турбуватися за ті браузери, що не підтримують стандарти. І якщо з ІЕ це в принципі може спрацювати (хоча він навіть сьогодні все ще жевріє, і інколи його таки просять підтримувати), то виявилося, що не все так просто з браузером Safari.
Згідно з Web Platform Tests dashboard, браузери на основі Chrome підтримують 94% тестового набору, Firefox — 91%, а Safari — лише 71% (в цьому місяці вийшла нова версія і підтримка покращилася до 88%). Про це я прочитав у статті, і головне, чого я не знав раніше — це те, що Safari має браузерну монополію на iOS, яку ніколи не мала Microsoft. У Windows, наприклад, коли не подобається IE чи Edge, то можна встановити Firefox, Opera, Chrome і т. п. А на iOS ми начебто можемо встановити Firefox чи Chrome, але вони будуть розроблені на рушії WebKit (через політику компанії Apple). А це означає, що всі веб сайти, що мають працювати на iOS-девайсах (що є дуже важливим ринком для багатьох продуктів) залежать від розвитку WebKit. І можливо ще більшою проблемою є те, що Safari/WebKit може не дуже напружуватися, маючи свою нішу без конкурентів, а відтак відставати в розвитку.
Є різні причини, чому компанія Apple не реалізує всі можливості PWA (наприклад, щоб не втратити частину ринку в Apple Store), чи всі сучасні вебстандарти (компанія каже, що захищає приватність користувачів). Але історія показала, що якщо не розвиватися, не реалізувати вебстандарти і популярні API, то можна закінчити як ІЕ.
Тож основні проблеми Safari на сьогодні:
- Слабка підтримка Web-стандартів.
- Слабка підтримка PWA.
- Монополія на iOS.
- Повільний цикл розробки.
Незважаючи на проблеми Safari, було дуже приємно побачити позитивну динаміку в підтримці стандартів браузером, хоча відставання все ще залишається. Є надія, що компанія Apple таки робить висновки з історії, і її браузер, як мінімум, не повторить шлях IE. А як максимум — ще візьме участь у суперництві між топовими браузерами майбутнього.
Як ви вважаєте, який браузер стане королем у майбутньому? Можливо, Vivaldi з його приватністю та безпекою? Адже нещодавно його назвали найкращим браузером для Linux. Яким браузером користуєтеся ви?
38 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів