Если вы застали Веб начала нулевых, то, конечно, помните кошмарную технологическую диспропорцию, сформировавшуюся тогда. Веб-браузеров уже было достаточно, чтобы было из чего выбирать — Firefox ещё не появился, но доживал своё Netscape Navigator, а, скажем, Opera существовала почти в нынешнем виде, но доминировал над всеми и всем Internet Explorer. Благодаря шестой версии, поставлявшейся в составе MS Windows XP, IE стал почти безраздельным властителем глобальной сети: с ним отправлялись в виртуальность больше чем девять из каждых десяти сетян!
«Шестёрка» не была ни особенно удобной, ни быстрой, ни правильной, ни безопасной, она эволюционировала страшно медленно, но и куда ей — монополии! — было торопиться? Её трактовка веб-стандартов сама стала стандартной, её баги стали фичами, на которые равнялись миллионы веб-дизайнеров. И даже десять лет спустя бесчисленное множество старых сайтов всё ещё висели мёртвым грузом на шее Веб: оптимизированные под IE6, они некорректно отображались в более современных браузерах. Чтобы изжить наследие Шестёрки, даже Microsoft, сама споткнувшаяся об этот камень, была вынуждена призывать сетян обновиться (см. «Кому и чем мешают старые браузеры?«).
Что ж, с тех пор многое изменилось в лучшую сторону. К началу 2013-го сетяне пользовались четырьмя браузерами из разных семейств. Internet Explorer по-прежнему привлекает значительную часть интернет-публики, но, согласно некоторым данным, уже не занимает лидирующей позиции. Ему на пятки наступают Firefox, Chrome и Safari, а в мобильном сегменте сильна Opera. Получается пять, но браузеры Google и Apple на самом деле близнецы-братья: у них общее сердце — HTML-странички они отображают с помощью HTML-движка WebKit, который развивают совместно.
Не будем спорить о том, сколь сильно влияние каждого из перечисленных браузеров в отдельности. Важно другое: к началу 2013-го в Сети воцарилось пусть шаткое, но равновесие! Ни один из игроков не обладал чрезмерным влиянием на Веб, а значит, и перекосов, подобных случившемуся десять лет назад, можно было не опасаться. Но тут-то и пришла плохая новость. Вы её, конечно же, слышали: неделю назад Opera Software объявила об отказе от родного веб-движка (Presto) в пользу уже знакомого вам WebKit.
Теоретически это означает, что и десктоп-, и мобильная версия Opera будут отображать веб-странички так же, как и любой другой браузер, основанный на WebKit. А таких много: помимо Chrome, Safari и (отчасти) линуксового Konqueror, WebKit популярен в узких продуктовых нишах: его, к примеру, использовала Sony на PlayStation 3 и Amazon в своих читалках и планшетках Kindle. Это заслуженная популярность: WebKit развивается под свободными лицензиями, причём значительную часть его кода можно менять, не раскрывая исходников.
Собственно, что касается Opera Software, то, хоть никто и не признаётся в этом прямо, она сдалась. Веб-движок поменяли не от хорошей жизни. Opera, позиции которой в десктоп-сегменте заметно ослабли за последние три года, пока ещё сильна в секторе мобильных устройств. Он же её и кормит: компания, судя по всему, зарабатывает на перенаправлении мобильных пользователей в поисковые системы и адаптации своего браузера под нужды конкретных сотовых операторов. Однако агрессивно растущий WebKit добрался и до смартфонов с планшетками — и сейчас для Opera удачный момент, чтобы сохранить аудиторию и клиентов. Теперь Opera сама использует WebKit, и можно попробовать удержать пользователей от миграции, скажем, на Chrome, предложив им более удобный интерфейс, большую функциональность и т.п. Уже до конца февраля мы увидим превью-версию Оперы с движком WebKit на Mobile World Congress в Барселоне.
Оставим в стороне вопрос гордости, ведь речь о бизнесе. Что изменится для приверженцев Opera? Они получат более шустрый (сообщество разработчиков WebKit ставит производительность чуть ли не на первое место), более «стандартный» (разные веб-движки отображают HTML-контент по-разному, а на WebKit ориентируется больше дизайнеров, чем на Presto) и наверняка более удобный браузер (ведь Opera Software сможет сосредоточиться теперь на внешней обвеске вместо того, чтобы снова и снова дорабатывать собственный движок). Но, к сожалению, есть у этого решения и неприятная обратная сторона. И её рискуют попробовать на вкус не только пользователи Opera, а все сетяне.
С Оперой или без, WebKit стал или в ближайшее время станет доминирующим веб-движком. Опасения на этот счёт впервые возникли ещё год назад, когда Google портировала Chrome на Android (см. «Готовьтесь к диктатуре WebKit«). Сегодня совокупную долю основанных на нём браузеров оценивают уже в 40 процентов (плюс-минус, в зависимости от метода оценки), но что ещё важнее — это единственный движок, доля которого растёт. В результате через год-два мы рискуем оказаться в ситуации, очень похожей на ту, что сложилась в начале нулевых. Кое-кто, впрочем, утверждает, что мы уже в ней: якобы на WebKit ориентируются сегодня большинство веб-дизайнеров. В Сети опять процветает монокультура.
Термин это сельскохозяйственный, расшифровки не требует, но вот вспомнить плюсы и минусы такого подхода стоит. Знаете, для чего фермеры засевают поля одной культурой? Чтобы добиться максимальной урожайности при минимальных трудозатратах. С понятными оговорками можно распространить аналогию и на браузеры. Здесь факт меньших накладных расходов стал очевиден немедленно после того, как Opera объявила о переезде на WebKit: компания сокращает 10 процнетов своего штата, который теперь неоправданно велик для культивации браузера.
Но так же, как в сельском хозяйстве, где огромные пространства, засеянные одной культурой, более подвержены вредителям и всякой заразе, есть минусы монокультурного подхода и в мире интернет-технологий. Здесь мы рискуем стать жертвой неудачных технических решений, которые появятся и распространятся благодаря доминирующей позиции отдельно взятого веб-движка.
Знаете, в чём главная слабость так называемых веб-стандартов? В том, что их не существует. Главный распорядитель Веб — консорциум W3C выдаёт не стандарты, а только лишь рекомендации. Он рекомендует разработчикам браузеров и веб-дизайнерам использовать то или иное новое решение. Конечная судьба конкретной рекомендации зависит от множества факторов: пожелают ли создатели браузеров её учесть, как именно она будет реализована и так далее. Таким образом, ещё неделю назад участь веб-стандартов решали четверо игроков. Сегодня — только трое, причём один из них имеет шансы затмить остальных. Дальнейшее нетрудно представить: достаточно вспомнить «нулевые» и Internet Explorer 6.
Строго говоря, аналогия между WebKit и IE6 не совсем корректна. Internet Explorer разрабатывается одной компанией и, соответственно, учитывает прежде всего её интересы. С WebKit иначе: его развитием занимается сообщество из множества крупных и мелких игроков, среди которых — Google и Apple, Nokia и Research In Motion, независимые линуксоиды. Кроме того, внутри себя члены этого сообщества не всегда приходят к общему мнению, из-за чего разные реализации WebKit слегка отличаются друг от друга. Вот только хватит ли мелких отличий, отделяющих, скажем, Chrome от Safari, чтобы удержать Сеть от падения в монокультурную яму?
Вопрос остаётся открытым, прогнозов пока немного, и из уже озвученных лично мне ближе всех позиция Брендана Эйча, технического директора Mozilla Corp. Эйч считает, что после непродолжительного периода монокультурного сжатия, вызванного перерождением Opera и агрессивным ростом WebKit, случится новый взрыв разнообразия. Появятся новые (вероятно, свободные) веб-движки, и это избавит WebKit от участи Internet Explorer 6.
А Сеть и всех нас — от повторения старой ошибки.