Microsoft похоронила Internet Explorer. Это больно ударило по десяткам тысяч компаний по всему миру
Бизнес-пользователи ОС Windows оказались не готовы к прекращению поддержки Internet Explorer. Microsoft отказалась от него 15 июня 2022 г., но, как выяснилось, многие компании, еще не перешедшие на Windows 11 и работающие в Windows 10, по-прежнему используют его для различных задач, в том числе и для регулярного просмотра веб-страниц. Примерно 47% офисных ПК все еще зависят от этого устаревшего обозревателя.
Internet Explorer все еще востребован
Корпорация Microsoft прекратила поддержку браузера Internet Explorer, который в августе 2022 г. отметит свое 27-летие. Как пишет Neowin, это стало настоящей неожиданностью для десятков тысяч корпораций со всего света.
Согласно отчету исследовательской компании Lansweeper, отказ от дальнейшей поддержки Internet Explorer со стороны Microsoft затронет приблизительно 47% корпоративных ПК под управлением Windows 10. Притом в статистике учитываются лишь те версии этой ОС, которые еще получают обновления – многие ранние сборки Microsoft давно перестала поддерживать.
Из этого следует, что 47% нельзя считать точным значением. На деле зависимых от Internet Explorer компьютеров с установленной Windows 10 может оказаться значительно больше.
Свой отчет аналитики Lansweeper готовили на основе аудита 9 млн компьютеров, закрепленных за 33 тыс. организациями по всему миру. Статистику по обычным пользователям компания пока не приводит. Также в анализе не учитывается Windows 11 – эта система, анонсированная в июне 2021 г. и вышедшая в начале октября 2021 г., по умолчанию поставляется с другим браузером. Она укомплектована Edge, наследником Internet Explorer, во многом скопированном с Google Chrome. Полноценной заменой Internet Explorer он не является как минимум потому, что построен на совершенно другом браузерном движке.
Не все так плохо
Со слов экспертов Lansweeper, многие компании, не торопящиеся переходить на Windows 11 по тем или иным причинам, далеко не всегда используют Internet Explorer каждый день и в качестве основного браузера. Такой сценарий использования, безусловно, существует, даже в 2022 г., но статистика учитывает все варианты применения этого браузера, в том числе при открытии древних веб-сайтов в режиме Internet Explorer через Edge.
Значение в 47%, упомянутое в отчете Lansweeper, довольно условное. Эксперты компании подсчитали, сколько компьютеров в организациях по-прежнему зависят от Internet Explorer для трех пока еще поддерживаемых версий Windows 10. Оно рассчитывается путем сложения 21,37% (версия 21H2, вышла в ноябре 2021 г.), 16,87% (20H2, октябрь 2020 г.) и 8,06% (21H1, май 2021 г.), что в сумме и дает те самые 47%.
Между тем, на инфографике отчетливо видно, что показатель в 21,37% нельзя считать рекордным. В этом плане Windows 10 21H2 занимает второе место, уступая версии 2004 двухлетней давности. Она вышла в мае 2020 г., и ее результат в отчете Lansweeper – 29,67%.
В отчете перечислены и другие версии Windows 10, корпоративные ПК под управлением которой все еще привязаны, в той или иной степени, к Internet Explorer. Сюда входят и версии с индексами LTSC (Long-Term Servicing Channel) и LTSB (Long-Term Servicing Branch) – специализированные модификации ОС с долгосрочной техподдержкой.
Никто не вспомнит
Согласно статистике портала StatCounter, общемировая доля Internet Explorer, с учетом пользовательских и офисных компьютеров, крайне мала. В мае 2022 г. она не превышала 1,65%, в то время как у Edge было 10,12%, у Firefox – 7,66%, а у Google Chrome – 66,16%.
Дебют Internet Explorer состоялся в августе 1995 г. Он сразу обзавелся славой очень медленного браузера, притом как в плане загрузки веб-страниц, так и в плане своего развития. Однако это не помешало ему в течение некоторого времени быть самым популярным обозревателем.
Этому способствовал тот факт, что Internet Explorer десятилетиями поставлялся в комплекте с Windows – самой популярной серией операционных систем. Многие пользователи работали в нем, не желая или не умея устанавливать другие браузеры и не спешащие осваивать какую-либо новую программу.
Microsoft не обновляет Internet Explorer с 2013 г., когда свет увидела его версия с индексом 11. Лишь изредка браузер получал критические патчи безопасности. С июля 2015 г., когда вышла Windows 10, Microsoft продвигает Edge.
В последние годы своего существования Internet Explorer стал славиться не только медлительностью, но и небезопасностью. В феврале 2019 г. Microsoft открыто назвала свой некогда знаковый продукт «дырявым» и призвала пользователей поскорее отказаться от него.
Многие современные сайты, включая государственные российские веб-ресурсы, перестали поддерживать Internet Explorer и корректно открываться в нем. Таким образом, этот браузер остался на обочине, и в нынешнее время он чаще всего используется для работы с устаревшими давно не обновлявшимися веб-сайтами.
Чем плох интернет эксплорер
Прекрасная статья с Хабра о тяжелой судьбе веб-разработчиков.
Я давеча написал комментарий о том, что компании Майкрософт давно пора перестать издеваться над веб-разработчиками и перейти на движок Gecko. Многие, видимо, посчитали это неуместной шуткой; тем не менее, это таки вовсе не шутка, а констатация факта. Те, кто с этим не согласен, видимо не пытались ещё разрабатывать под этот замечательный браузер.
Давайте я расскажу вам, какой это замечательный процесс.
Сколько браузеров вы поддерживаете, дорогие разработчики? Не так давно, пять лет назад, этот список был довольно прост: IE6, IE7, Opera, Firefox, Chrome. Пять браузеров, плюс кое-какие минорные вариации между 2 и 3 Firefox и 9 и 10 Оперой.
Сколько браузеров мы поддерживаем теперь?
Firefox, Chrome и Opera никуда не делись. Файрфокс и Хром давно перешли на короткий релизный цикл, последний артефакт неавтоматического обновления (Firefox 3.6) не так давно наконец-то потерялся с приборов. Опера должна перейти на тот же цикл в ближайшее время — да и последние версии Оперы/Престо особой головной боли не добавляли. Добавился Яндекс.Браузер, который внутре тот же Хромиум, хоть и обновляется реже.
Ну и, наконец, к вопросу про IE: сколько версий IE мы вынуждены поддерживать? В октябре по li.ru доли разных версий Internet Explorer в рунете были такими: IE10 — 4%, IE8 — 2.3%, IE9 — 1.7%, IE7 — 0.7% плюс невидимый на приборах IE11, который с выходом Windows 8.1 должен отбить у IE10 какую-то долю. Т.е. нам кажется, что это одна-две версии браузера, если вы готовы пожертвовать 4.7% аудитории, или три-пять — если не готовы или вдруг вы пишете продукт для страны с более высокой долей IE.
Как бы не так! Слушайте внимательно.
Internet Explorer, начиная с, прости господи, восьмой версии поставляется с набором движков от предыдущих версий. IE8 умеет работать в режиме IE7 и в режиме Quirks Mode (фактически, IE5.5!). IE9 умеет работать в режимах 9, 8, 7 и Quirks. IE10 умеет работать в режимах 10, 9, 8, 7 и Quirks. IE11 умеет работать в режимах 11, 10, 9, 8, 7 и Quirks. И это, внимание, РАЗНЫЕ движки! Не знаю, чем они там упарывались, когда принимали это решение, но режим IE10 в IE11 — вовсе не IE10! Вот, например, в IE9-10 есть баг с неправильный позиционированием канваса по z-index, который решался выставлением ему background-color: rgba(255, 255, 255, 0). В IE11 в режиме IE10 этот баг был тщательно портирован прекрасными разработчиками из Редмонда, а вот workaround портировать позабыли, и теперь канвас с абсолютным позиционированием там как бэ использовать нельзя. Совсем.
Итого, если вы, совершенно случайно, пишете какую-нибудь библиотеку или просто хотите реюзать код на разных доменах — то вам вот прям сейчас нужно поддерживать (сколько-сколько?) ДВАДЦАТЬ разных версий Internet Explorer! Двадцать версий браузера, который использует менее 10% аудитории! На секундочку, у файрфокса за всё время его существования было 28 мажорных релизов, у Хрома — 32.
И это только начало, ребята. Дух старой школы невероятно силён в Редмонде: все эти версии Internet Explorer будут поддерживаться Майкрософтом (сколько-сколько?) 10 лет! Занимательная задачка на устный счет: посчитать, сколько версий IE нам придётся поддерживать через 5 лет.
Пол Айриш написал про это прекрасную статью ещё в 2011: www.paulirish.com/2011/browser-market-pollution-iex-is-the-new-ie6. Но даже он не смог предсказать всю упоротость разработчиков Майкрософта.
Шо?! Это ещё не всё?!
Это ещё далеко не всё, мои маленькие красноглазики. В IE10-11 Майкрософт презентовал ещё маленькую тележку свежих и революционных идей.
Начнём с того, что IE11 поставляется вот с таким юзер-агентом:
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko
Что в нём прекрасно? В нём НЕТ ВЕРСИИ самого Internet Explorer-а! Вообще слов «MSIE» больше нет. Знаете, почему? Потому что Майкрософт считает, что их браузер, внимание, не нужно детектить по юзер-агенту, поскольку он поддерживает все новейшие стандарты и его не надо отличать от других новых браузеров.
Давайте я повторю ещё раз: разработчики браузера, который поставляется с 6 разными движками, эмулирующими баги предыдущих версий этого браузера, начиная с 1999 года, заявляют, что его не нужно определять по юзер-агенту.
При этом абсолютно те же люди между последним Developer Preview IE11 и финальным RTM релизом берут и отрывают вендорские префиксы и ломают ещё пару десятков обратных совместимостей, о чём любезно сообщают в своём msdn-е: msdn.microsoft.com/en-us/library/ie/dn304886%28v=vs.85%29.aspx
Да-да. Если ваш код отлично работает в Developer Preview, это совершенно не значит, что он заработает в релизной версии, которая внезапно одномоментно раскатится паре десятков миллионов человек по всему миру. Но вы ни в коем случае не занимайтесь детектом версии по юзер-агенту!
Фиг с ним, с Developer Preview. В их прекрасной поделке нужно отличать версию оси, под которой она работает! Я серьёзно.
Вот сидят люди. В трудовой у них, наверняка, написано что-то типа Senior Software Architect. Придумывают стандарт PointerEvents, в котором, чин чинарём, всё по-взрослому — специальный флаг navigator.pointerEventsEnabled показывает, поддерживает ли браузер пойнтер-события или нет. Чтобы, понимаешь, никто ничего по юзер-агенту не детектил, а всё как в нормальных браузерах.
А потом внезапно выясняется, что у тех же людей обработка жестов падает в IE10/Win7. Вот прям в msdn-е так и написано:
Так что помимо 20 разных версий IE у вас есть как минимум две разных версии ОСи — Win7 и Win8. На самом деле, их больше — есть ещё Windows Phone и Windows RT, а в Windows 8 ещё есть два режима браузера — метро и десктоп. Они все отличаются. Нам повезло, мы не нашли прям заметных багов, чтобы держать отдельные ветки кода ещё и под эти оси — не факт, что вы окажетесь столь же удачливыми. Ну что, сколько там версий IE получилось? Я уже запутался, но, наверное, под сотню.
А теперь — десерт! Вот допустим вы просто пишете веб-странички, вам плевать на режимы браузера и вы вообще недоумеваете, чего париться — сайт ведь не может сам перейти в какой-нибудь режим совместимости, правда?
У меня есть для вас плохие новости, ребята. Заходите вот сюда:
iecvlist.microsoft.com/ie10/201206/iecompatviewlist.xml
И ищите там свой сайт.
Знаете, что это? Это глобальный Compatibility List, в который заносятся сайты, которые, по мнению Майкрософт, нужно показывать в каком-нибудь из режимов совместимости.
Нет, серьёзно, они отсматривают весь Интернет и составляют реестр сайтов, которые плохо себя вели!
Знаете, как сайты попадают в этот список? Майкрософт выпускает превью-версии своих браузеров. В них есть специальная кнопочка в адресной строке — показать этот сайт в режиме совместимости. Майкрософт собирает анонимную статистику — если в эту кнопку часто тыкают, сайт попадает в реестр.
Серьёзно, они этого даже не скрывают. Похоже, даже немножечко гордятся.
msdn.microsoft.com/ru-ru/library/gg699485%28v=vs.85%29.aspx
Выбраться из этого списка очень просто — написать в саппорт Майкрософт, ага.
Ну и вишенка на торте: допустим я вас убедил и вы регулируете, в каком режиме показывать страницу, с помощью специальной меты, дабы избежать ненужных проблем. Так вот, в IE11 (по крайней мере в RTM-версии, сейчас лень проверять) она не работает — факт нахождения в списке совместимости приоритетнее заданного вебмастером X-UA-Compatible!
Дорогая Microsoft! Прекрати, пожалуйста, над нами издеваться и вкрути движок Gecko в свой так сказать продукт.