Когда разнеслась новость о том, что Mozilla начинает волну сокращений – уже вторую за текущий год – реакция последовала незамедлительно. От внимания разработчиков не ускользнуло, что компания уже срезала весь корпоративный жирок и теперь кромсает живые мышцы. Она распустила команду, которая занималась защитой от угроз. Она «сократила издержки» на инструменты для разработчиков – раздел, пользовавшийся большой популярностью. Она урезала команду Servo, которая работала над браузерным движком нового поколения на базе Rust. Она стёрла с лица земли команду MDN. В общем и целом, две волны сокращений суммарно унесли почти треть сотрудников.
Учитывая, что программисты составляют значительную часть весьма скромной пользовательской базы Mozilla, усечение инструментов для разработчиков представляется особенно недальновидным решением, которое разочарует самых преданных пользователей. Однако люди, мало знакомые с историей компании, скорее всего, примут ситуацию за очередной пример того, как игрок не сумел пробиться на конкурентном рынке, делая ставку на нишевые возможности. В конце концов, флагманский продукт компании, браузер Firefox, уже много лет не претендует на лидерство на рынке. Значит, это просто процесс вымирания очередного динозавра, что же ещё?
Но Mozilla не исчерпывается одним Firefox. Это не рядовая маленькая IT-компания, которую теснят гиганты с капиталами в триллионы долларов вроде Microsoft, Apple и Google. Mozilla отличается богатой историей и большим вкладом в развитие веб-стандартов. То, что она сейчас в критическом положении – повод для беспокойства для всех нас.
История Mozilla в двух словах
Mozilla зародилась на пепелище одного из самых эффектных провалов в мире программных продуктов. Компания Netscape Navigator, которая была пионером в разработке веб-браузеров в середине 90-х, за какие-то несколько месяцев проделала путь от интернет-властелина до аутсайдера. Причиной стала агрессивная политика объединения, которую компания Microsoft проводила в отношении Internet Explorer, и это, конечно, несправедливо. Но большинство IT-экспертов тогда уже сходились на том, что в будущем браузеры неизбежно станут бесплатными и общедоступными. Строить бизнес на продукте такого типа стало безнадёжной затеей.
После этого в миг озарения Netscape Navigator создала некоммерческую организацию Mozilla Organization (позже ее переименовали в Mozilla Foundation) в целях разработки набора встроенных приложений Netscape: браузера, почты и чата. Эта инициатива понемногу увяла перед лицом конкурентов, у которых было больше денег и больше пользователей. Но с течением лет Mozilla Foundation трансформировалась в организацию иного типа – её новой целью стало продвижение открытых веб-стандартов и веб-грамотности (не говоря о других, несколько утопических принципах, декларируемых в знаменитом манифесте Mozilla).
Спустя много лет группа разработчиков из Mozilla возобновила попытки создания браузера в продукте под названием Firefox. На её базе появилась отдельная корпорация, которая находится в полной собственности Mozilla Foundation и спонсирует её по сегодняшний день. Если бы эти технологии оказались замкнуты в пределах AOL, компании, купившей Netscape, они бы давно отмерли, переменчивые ветра интернет-моды развеяли бы их в прах. На самом деле, даже AOL махнула рукой на программное обеспечение, которое унаследовала от Netscape, и переключилась на Internet Explorer, после чего в скором времени канула в безвестность.
Лучшие хиты Mozilla
Firefox – самое известное творение Mozilla. И хотя сейчас его легко недооценивать, считая просто одной из альтернатив популярных браузеров, в своё время он был первопроходцем в блокировке рекламы, защите данных и создании инструментов для разработчиков (Firebug значительно опередил Chrome DevTools).
Однако если бы вклад Mozilla ограничивался только этим, она была бы не более чем секундной заминкой на пути к мировому господству Chromium и WebKit. Между тем, именно Mozilla дала ход некоторым из наиболее значимых веб-технологий. Ниже приведём четыре её лучших инициативы.
Rust
Когда Netscape пошёл ко дну, немногие догадывались, что самым ценным из того, что он привнёс в мир, окажется маленький хиленький сценарный язык. Этот язык назывался JavaScript.
JavaScript появился в тот короткий период, когда Netscape был царём горы в Сети. Тем не менее, спустя двадцать лет после краха Netscape он продолжает наращивать популярность и всё сильнее подминает под себя другие языки. Исходя из этого, несложно себе представить, что самой ценной инновацией, которую оставит после себя Firefox, станет ошеломительно эффективный статически типизированный Rust.
Под обаяние Rust подпадает весь диапазон разработчиков. Тем, кто считает C++ слишком либеральным и щедрым на ошибки, Rust нравится. Но и тем, кто считает традиционные языки объектно-ориентированного программирования слишком тяжеловесными и неэффективными, тоже нравится Rust. И несмотря на то, что пользуются им сравнительно немногие, Rust стабильно удерживает первое место в хит-параде самых любимых языков на Stack Overflow начиная с 2016 года.
К сожалению, в новой политике Mozilla развитие Rust занимает весьма скромное место. При последней волне сокращений руководство избавилось от программистов, специализирующихся на этом языке, а также распустило команду Servo, которая намеревалась сделать новый браузерный движок на Rust. Но на текущий момент представляется, что Rust не канет в небытие вместе с породившей его компанией. Создание отдельной организации Rust Corporation уже на стадии планирования.
HTML5
Сейчас это даже припоминается с трудом, но когда-то давным-давно в мире бушевала кровавая война между HTML и XHTML – версией HTML без обратной совместимости, переосмысленной с применением более жёсткого синтаксиса XML. Причём HTML проигрывал. В 2004 году W3C, организация, отвечавшая за разработку стандартов для HTML, официально приостановила всю работу над всем, что с ним связано.
Тем бы дело и закончилось, если бы не WHATWG – сообщество, которое по такому случаю на скорую руку сколотили Apple, Opera и Mozilla. Что было дальше, мы все знаем: группа WHATWG победила, заставила W3C сменить курс и породила целую кучу стандартов под общим заголовком HTML5, включая видео без Flash, веб-воркеры, веб-сокеты и многое другое. Эти стандарты и по сей день с нами.
Mozilla, разумеется, была не единственным действующим лицом этой драмы. Но она сыграла критически важную роль в формировании движения, которое определило путь развития технологий на десятилетие вперёд.
Asm.js
Одним из лучших фокусов, которые подарила нам Mozilla, был asm.js. Строго говоря, asm.js – это просто оптимизированная разновидность JavaScript, обученная трюкам вроде битовых операций для сильной типизации. Однако на его примере разработчики из Mozilla показали, что способны компилировать и другие языки, вплоть до подобных микроязыков с прицелом на повышенную производительность. Располагая немногим более чем неформальными спецификациями и транспайлером Emscripten, они взяли 3D-игры в реальном времени, сделанные на движке Unreal на C++, и поместили их в браузер.
Asm.js дал толчок развитию одной из самых важных инноваций в современной веб-истории – WebAssembly. WebAssembly идёт по пути asm.js, представляя собой своего рода машинный код для веба, который выполняется в среде JavaScript. Он также вводит некоторые усовершенствования, например, компактный бинарный формат для кода, который не нуждается в парсинге или компиляторских затеях. В наши дни многие из самых интересных инноваций создаются именно на WebAssembly; в их числе – фреймворк Blazor от Microsoft.
WebAssembly – это совместный проект Mozilla и создателей других веб-браузеров, но его не удалось бы поднять так быстро, если бы не опыт asm.js. Даже сейчас asm.js играет роль полифила при WebAssembly, запасного варианта с обратной совместимостью для немногочисленных старых браузеров, которые не поддерживают WebAssembly.
MDN (Mozilla Developer Network)
MDN – это огромный ресурс с высококачественной документацией для разработчиков. Что-то вроде Википедии современной веб-разработки или же аналога W3Schools, только в несколько раз лучше.
Если вам когда-нибудь приходилось рыскать по Сети в поисках ответов на свои вопросы, вы наверняка сталкивались с кладезями мудрости MDN. Возможно, вам доводилось пользоваться тамошним исчерпывающим справочником по CSS свойствам или тщательно упорядоченными материалами по HTML DOM. Может, вы зарывались с головой в информацию о каком-нибудь свежеиспеченном API вроде IndexedDB или WebRTC (на MDN устаревших сведений не водится). А может, вы читали амбициозное введение в HTML, которое начинается с описания разметки для чайников и наращивает сложность вплоть до таких фреймворков JavaScript, как React, Ember и Vue.
Запасы документации MDN не ограничиваются тем, что представлено на сайте. Например, собранная Mozilla информация о совместимости браузеров настолько обширна, что применяется при создании сервисов вроде caniuse.com.
Сейчас Mozilla разделалась с командой MDN. Руководство обещает, что не даст популярному ресурсу погибнуть, вероятно, планируя привлечь к делу партнёров и сообщество. Но без финансовых вливаний и знаний людей, которые заинтересованы в проекте, нельзя с уверенностью сказать, что MDN удастся удержать свои стандарты на прежнем уровне. Ведь у Mozilla уже и так скопилось целое кладбище инициатив по веб-образованию, которые погибли в зародыше: Webmaker, Mozilla Backpack и мой личный фаворит X-Ray Goggles (крайне простой способ освоить начала HTML, от которого больше толку, чем от девяноста процентов видеоуроков). Для будущего это ничего хорошего сулить не может.
Что погубило Mozilla?
Mozilla ещё не погибла окончательно, но переломный момент уже явно позади. В письме к уволенным сотрудникам администрация ссылается на эпидемию коронавируса, однако подобное объяснение вызывает сомнения. В конце концов, Mozilla Foundation создавалась именно для того, чтобы сиюминутные потрясения не сбивали Mozilla с толку, чтобы команда могла сосредоточиться на долгосрочной перспективе. Её задачей было оградить разработчиков от капризов руководства, трендов-однодневок, инвесторов из Силиконовой долины, которые спят и видят, как бы удвоить свои капиталы. Эпидемия рано или поздно кончится, но привести растерзанный коллектив в прежний вид и снова завоевать доверие разработчиков будет непросто.
Правда, о которой компания говорит редко, а IT-издания – часто, заключается в том, что Mozilla избрала очень шаткую модель получения доходов: она завязана на великодушном рекламном предложении от конкурента, который тоже делает браузеры. Более 90% прибыли Mozilla имеет от сделки с корпорацией Google, согласно которой Firefox по умолчанию использует соответствующую поисковую систему. Взамен Mozilla получает ежегодную выплату в более чем четыреста миллионов долларов. Google уже несколько раз продлевала сделку, несмотря на то что охват рынка у Mozilla неуклонно ухудшается.
В последние годы корпорация Google продлевает сделки всё с меньшей готовностью и энтузиазмом. Возможно, руководство продолжает поддержку Firefox только из опасения, что иначе проживающий трудные времена браузер совсем вымрет и тогда внимание антитрестовых организаций сосредоточится на Google (из подобных же соображений Microsoft когда-то вкладывался в Apple). Но какими бы мотивами не руководствовался Google, решение Mozilla практически полностью полагаться на взносы от мегакорпорации из сферы IT выглядит как серьёзная стратегическая ошибка.
Периодически Mozilla предпринимала попытки создать долгоиграющие коммерческие продукты, такие как Firefox OS, дорогостоящую сеть VPN и премиум-сервис для управления закладками. Эти попытки, по большей части, оказывались неудачными. Сейчас Mozilla (которая корпорация, а не фонд) избрала новую, не слишком обнадеживающую цель: «добиться роста основных ресурсов браузера за счёт дифференциации пользовательского опыта». Это можно понимать по-разному, но как минимум одна интерпретация сводится к тому, что они рассчитывают наверстать упущенное, поиграв с интерфейсом и завернуть кое-что из продуктов в новые маркетинговые обёртки. Если так, то душераздирающая история заката Mozilla подходит к своим финальным главам.
Автор: DigitalEcosystems