В своем стремлении доминировать в Интернете Microsoft чуть было не уничтожила JavaScript. В начале 2000-х годов Microsoft Internet Explorer был самым популярным браузером в мире. Его конкурент, Netscape Navigator, плелся где-то в хвосте. Оба браузера использовали схожие скриптовые языки клиентской части для обеспечения интерактивности — JavaScript и JScript боролись за место того, кто будет формировать интернет в ближайшие десятилетия. Владея примерно 96% доли рынка, Microsoft не видела необходимости продвигать стандарт, который укрепил бы позиции JavaScript в браузерах. Череда событий, приведшая в 1998 году к обвинениям в монополизме и заставившая Билла Гейтса уйти в отставку, едва не стала причиной смерти JavaScript. Первый веб-браузер с графическим пользовательским интерфейсом, Mosaic, увидел свет в 1993 году. Будучи удобным для людей без технического бэкграунда, он сыграл важную роль в стремительном росте зарождающейся Всемирной паутины — Википедия. Примечание переводчика. Mosaic не был первым в мире браузером, однако именно он открыл людям всю широту возможностей Всемирной паутины. Дружелюбный интерфейс, понятный даже новичкам, отображение текста и картинок в одном окне, поддержка большого количества сетевых протоколов, выделение ссылок, кнопки «вперед» и «назад» — это был настоящий прорыв! Пользователям были доступны версии для Microsoft Windows, Macintosh, Commodore Amiga, Unix и Linux. После закрытия проекта компания Microsoft лицензировала исходный код Mosaic и на его основе разработала Internet Explorer. А группа инженеров, работавших над Mosaic, основала собственную компанию, получившую название Netscape. Между Microsoft и Netscape завязалась борьба за доминирование на рынке, последствия которой ощущались еще в течение долгого времени. В 1995 году, когда компьютеры стали уже весьма мощны, веб-сайты все еще оставались статичными и невзрачными. Перед разработчиками браузеров стояла задача создать инструменты, которые дали бы веб-дизайнерам больше гибкости и динамики. В 1995 году компания Netscape начала решать проблему статичных веб-сайтов. Они решили подстраховаться: во-первых, обратились к Sun Microsystem, чтобы договориться об использовании Java в качестве скриптового языка в их браузере. Во-вторых, наняли Брендана Эйха для разработки нового языка, который служил бы той же цели — на случай, если с Java ничего не получится. Второй подход показался высшему руководству компании более эффективным, и уже в течение года на свет появился первый прототип. В том же году Microsoft выпустила Internet Explorer. А еще год спустя они продемонстрировали переработанную версию JavaScript под названием JScript. Развитие браузеров шло настолько разными путями, что в какой-то момент стало крайне сложно создавать сайты, которые выглядели бы одинаково в них обоих. На сайтах стали встречаться пометки типа «лучше всего отображается в Netscape» или «лучше всего отображается в Internet Explorer». Примечание переводчика. Согласно данным MIT, Томас Риардон, основавший проект по разработке Internet Explorer, использовал исходный код Mosaic разработчика Spyglass, Inc., формально связанный с браузером NCSA Mosaic. К началу 2000-х годов Microsoft явно выигрывала. 9 из 10 человек пользовались Internet Explorer. Несмотря на то, что компания Netscape начала свою деятельность в середине 90-х, имея солидную долю рынка, к началу 2000-х к Microsoft перетекло 96% пользователей. Как компании удалось добиться такого невероятного успеха? Причин было много, и некоторые из них впоследствии стали причинами для судебных исков. Во-первых, к моменту выхода Netscape на биржу (1995 год) Microsoft уже была публичной компанией с огромными финансовыми ресурсами. В 1996 году рыночная стоимость Microsoft была в 10 раз выше, чем Netscape. Microsoft сделала два важных маневра, которые кардинально изменили ситуацию на шахматной доске. Во-первых, компания решила комплектовать каждую копию Windows собственным браузером — тем самым Internet Explorer. Во-вторых, Microsoft стала предоставлять браузер бесплатно не только пользователям Windows, но и обладателям Apple Macintosh. Джим Барксдейл, бывший тогда генеральным директором Netscape, писал: «Очень редко в войне малые силы одерживали верх над превосходящими...». Будучи неспособна продолжать борьбу, Netscape в 2002 году продалась компании AOL. В 1996 году, через год после появления JavaScript, Netscape обратилась в ECMA International с предложением по стандартизации языка. Компания Microsoft сразу же подключилась к этой инициативе. В конце 90-х и начале 2000-х дела Microsoft обстояли совершенно иначе, нежели в 1996-ом. Примечание переводчика. Изначально JavaScript носил совершенно другое имя — Mocha, затем был переименован в LiveScript. Свое нынешнее название JavaScript получил лишь 4 декабря 1995 года. Это был маркетинговый ход: в то время большой популярностью пользовался Java, и чтобы привлечь внимание к новому языку программирования, было решено назвать его JavaScript. В какой-то момент Microsoft отказалась от всех попыток участвовать в стандартизации JavaScript и вместо этого сосредоточилась на расширении сферы влияния Internet Explorer. Логика такого решения была абсолютно оправдана с экономической точки зрения. Поскольку Microsoft уже полностью контролировала рынок, любая попытка унифицировать JavaScript повредила бы Internet Explorer сильнее, чем любому другому браузеру. Сразу уточним, что к началу 2000-х годов JavaScript был запатентованной технологией корпорации Microsoft. То есть она обладала тотальным контролем над языком. Однако open source не может процветать в условиях корпоративной цензуры, поэтому лишь немногие разработчики его использовали. Из-за этого язык развивался крайне низкими темпами. Ситуация вокруг JavaScript начала меняться только в 2004 году, когда наследник Netscape, компания Mozilla, выпустила браузер Firefox. Стратегия компании Mozilla была направлена на стандартизацию JavaScript. Firefox очень быстро завоевал популярность среди пользователей. Отчасти — благодаря своему либеральному подходу, отчасти потому, что креативные пользователи с большим энтузиазмом отнеслись к открытой среде, а не к технологии «большого брата» того времени — Microsoft. По мере того как Internet Explorer угасал, на рынок выходили все новые и новые игроки. Одним из них стал Chrome, представленный в 2008 году корпорацией Google. Большинство игроков на рынке выступали за стандартизацию. Консенсус был достигнут в 2009 году, когда крупнейшие компании встретились в Осло для выработки компромисса, известного как ECMAScript 5 или ES5. Примечание переводчика. Главный исполнительный директор Google Эрик Шмидт долгое время отказывался от идеи разработать собственный браузер. В частности, он ссылался на то, что «Google — компания небольшая, да и участвовать в «болезненных войнах браузеров» он не хочет. Его мнение изменилось после показа демоверсии браузера, созданной разработчиками Mozilla Firefox. После нее Шмидт сказал, что «она была настолько хорошей, что заставила меня переосмыслить ситуацию». Читателю может показаться, что проблематика конфликта «Microsoft vs. JavaScript» высосана из пальца. Казалось бы, как единственный браузер, Internet Explorer, отличаясь от всех прочих конкурентов отсутствием стандартизации скриптового языка, может этот язык уничтожить? Но таких примеров совсем не мало и в наши дни. Один из самых свежих — мягкие ограничения в продуктах Google для всех пользователей Firefox или Edge. Даже самая маленькая несовместимость с лидером рынка способна отвратить миллионы пользователей от в целом хороших альтернативных решений. Так что и в 90-е, и в наши дни мы по-прежнему стоим перед выбором: что важнее, свобода и независимость или сиюминутное удобство.