В своем стремлении доминировать в Интернете Microsoft чуть было не уничтожила JavaScript.

Jeremy Bezanger on Unsplash
Jeremy Bezanger on Unsplash

В начале 2000-х годов Microsoft Internet Explorer был самым популярным браузером в мире. Его конкурент, Netscape Navigator, плелся где-то в хвосте. Оба браузера использовали схожие скриптовые языки клиентской части для обеспечения интерактивности — JavaScript и JScript боролись за место того, кто будет формировать интернет в ближайшие десятилетия.

Владея примерно 96% доли рынка, Microsoft не видела необходимости продвигать стандарт, который укрепил бы позиции JavaScript в браузерах. Череда событий, приведшая в 1998 году к обвинениям в монополизме и заставившая Билла Гейтса уйти в отставку, едва не стала причиной смерти JavaScript.

Гонка

Фото Jeff Griffith on Unsplash
Фото Jeff Griffith on Unsplash

Первый веб-браузер с графическим пользовательским интерфейсом, Mosaic, увидел свет в 1993 году. Будучи удобным для людей без технического бэкграунда, он сыграл важную роль в стремительном росте зарождающейся Всемирной паутины — Википедия.

Примечание переводчика.

Mosaic не был первым в мире браузером, однако именно он открыл людям всю широту возможностей Всемирной паутины. Дружелюбный интерфейс, понятный даже новичкам, отображение текста и картинок в одном окне, поддержка большого количества сетевых протоколов, выделение ссылок, кнопки «вперед» и «назад» — это был настоящий прорыв!

Пользователям были доступны версии для Microsoft Windows, Macintosh, Commodore Amiga, Unix и Linux.

Mosaic 3.0 для Windows, Википедия
Mosaic 3.0 для Windows, Википедия

После закрытия проекта компания Microsoft лицензировала исходный код Mosaic и на его основе разработала Internet Explorer. А группа инженеров, работавших над Mosaic, основала собственную компанию, получившую название Netscape. Между Microsoft и Netscape завязалась борьба за доминирование на рынке, последствия которой ощущались еще в течение долгого времени.

В 1995 году, когда компьютеры стали уже весьма мощны, веб-сайты все еще оставались статичными и невзрачными. Перед разработчиками браузеров стояла задача создать инструменты, которые дали бы веб-дизайнерам больше гибкости и динамики.

В 1995 году компания Netscape начала решать проблему статичных веб-сайтов. Они решили подстраховаться: во-первых, обратились к Sun Microsystem, чтобы договориться об использовании Java в качестве скриптового языка в их браузере. Во-вторых, наняли Брендана Эйха для разработки нового языка, который служил бы той же цели — на случай, если с Java ничего не получится. Второй подход показался высшему руководству компании более эффективным, и уже в течение года на свет появился первый прототип.

Брендан Эйх, создатель JavaScript, Wikimedia Commons
Брендан Эйх, создатель JavaScript, Wikimedia Commons

В том же году Microsoft выпустила Internet Explorer. А еще год спустя они продемонстрировали переработанную версию JavaScript под названием JScript. Развитие браузеров шло настолько разными путями, что в какой-то момент стало крайне сложно создавать сайты, которые выглядели бы одинаково в них обоих. На сайтах стали встречаться пометки типа «лучше всего отображается в Netscape» или «лучше всего отображается в Internet Explorer».

Internet Explorer в Windows 95, Википедия
Internet Explorer в Windows 95, Википедия

Примечание переводчика.

Согласно данным 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.

Смертельный удар

Johann Walter Bantz on Unsplash
Johann Walter Bantz on Unsplash

В 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.

Возрождение

Markus Spiske on Unsplash
Markus Spiske on Unsplash

По мере того как Internet Explorer угасал, на рынок выходили все новые и новые игроки. Одним из них стал Chrome, представленный в 2008 году корпорацией Google. Большинство игроков на рынке выступали за стандартизацию. Консенсус был достигнут в 2009 году, когда крупнейшие компании встретились в Осло для выработки компромисса, известного как ECMAScript 5 или ES5.

Примечание переводчика.

Главный исполнительный директор Google Эрик Шмидт долгое время отказывался от идеи разработать собственный браузер. В частности, он ссылался на то, что «Google — компания небольшая, да и участвовать в «болезненных войнах браузеров» он не хочет. Его мнение изменилось после показа демоверсии браузера, созданной разработчиками Mozilla Firefox. После нее Шмидт сказал, что «она была настолько хорошей, что заставила меня переосмыслить ситуацию».

Пара мыслей в завершение

Читателю может показаться, что проблематика конфликта «Microsoft vs. JavaScript» высосана из пальца. Казалось бы, как единственный браузер, Internet Explorer, отличаясь от всех прочих конкурентов отсутствием стандартизации скриптового языка, может этот язык уничтожить? Но таких примеров совсем не мало и в наши дни. Один из самых свежих — мягкие ограничения в продуктах Google для всех пользователей Firefox или Edge. Даже самая маленькая несовместимость с лидером рынка способна отвратить миллионы пользователей от в целом хороших альтернативных решений. Так что и в 90-е, и в наши дни мы по-прежнему стоим перед выбором: что важнее, свобода и независимость или сиюминутное удобство.

Комментарии (17)


  1. Samogon4ik
    01.10.2022 16:53
    -2

    Про мочу незнал


    1. jar_ohty
      01.10.2022 18:43
      +8

      Это мокка!


  1. CarbonBot
    01.10.2022 17:25

    Как же хорошо, что сейчас не приходится писать на Moch'е)


    1. pharrell
      01.10.2022 21:38
      +3

      Довольно популярная js-библиотека для тестирования https://mochajs.org/


    1. Starl1ght
      01.10.2022 21:55
      +5

      от переименования суть не меняется


    1. BubaVV
      01.10.2022 23:08

      Иногда приходится. Есть такой тестовый фреймворк или что-то около


  1. MAXH0
    01.10.2022 18:24
    +5

    Embrace, Extend, and Extinguish в действии. Это лишний раз подчеркивает насколько опасен контроль корпораций над стандартами и насколько важно поддержание открытого и свободного распространения программ.

    +[Из воспоминаний]
    Мое первое знакомство с джава-скрипт состоялось по книге от MS. Там было много патентованных фишек для IE 3.2 (по типу фильтров и ActiveX), все примеры были на визуалБэйсике скрипт. В конце после весьма тяжеловесного примера на визуалБэйсике, была крохотная статья на полтора листа про джава-скрипт. После ранее изложенного тяжеловесного кода этот код воспринимался как глоток свежего воздуха. Так я полюбил джава-скрипт. Я никогда бы не взялся его учить если бы мне попалось первым пособие от NC, которое прочел позднее и которое мне не понравилось.


  1. insighter
    01.10.2022 19:22
    +30

    Как Microsoft чуть не убила JavaScript

    Звучит так, как будто могло произойти, что то ужасное


    1. Xeldos
      01.10.2022 20:18
      +19

      Да, мы могли бы писать на VBScript.


      1. saboteur_kiev
        02.10.2022 04:14
        -5

        точнее ASP.net


  1. mentin
    01.10.2022 22:24
    +14

    ... к началу 2000-х годов JavaScript был запатентованной технологией корпорации Microsoft. То есть она обладала тотальным контролем над языком.

    я удивился насчёт "патентованной", как можно запатентовать чужую разработку, ТМ ещё можно налепить, но и то на свой JScript, а не чужой JavaScript. В оригинале нашел "proprietary" вместо патентованной, в смысле что МС мог с ней делать что хочет. Но всё же не патентованная, патенты из области законов, а не фактического контроля.


  1. MaxStirlits
    01.10.2022 23:58
    +1

    Ms ещё активно продвигала vbscript, как альтернативу javascript


    1. Alcpp
      03.10.2022 18:37

      был еще и cs-script.


  1. faultedChip
    02.10.2022 02:48
    +21

    А о чём вообще статья? Я ожидал каких-то подробностей, вроде различий JScript и JavaScript, появления VBScript, почему он не прижился и т.д. А в итоге получил сразу переход к Хрому и статью, которую бы даже на википедии забраковали.


  1. Bedal
    02.10.2022 12:04
    +4

    пустая статья — без описания роли vbscript и, главное, activeX написанное имеет мало смысла.


  1. ermouth
    02.10.2022 20:37

    Microsoft чуть не убила JavaScript

    Без Microsoft JS вообще бы не состоялся, по-моему.

    MS скопировали JS (именно сам язык без DOM-специфики) ну прямо очень близко к Нетскейпу – вместо создания своего нового языка. Всё до мелочей: и дичь с тайпкастами, и дырявые массивы, и отсутствие int-ов – но и функции первого класса, клёвый this, в общем как раз, за что js любят/ненавидят.

    А потом вышел IE5, и всё, Нетскейп кончился. А JS остался.


    1. freedbrt
      03.10.2022 10:06

      А теперь весьма символично что Microsoft придвигают свой TypeScript, что бы заткнуть некоторые дыры из JavaScript.