Продолжаем.



Проникшись JavaScript Крокфорд чуствует, что будущее за Single Page Application (про которые пока ещё никто не знает). В своём стартапе State Software он с командой прорабатывает идею веб-приложений, написанных на JavaScript. Ну и быстро понимает, что XML очень жмёт. А надо сказать, что в тот момент XML был главным и важнейшим стандартом передачи данных. Умные именитые ребята ходили и убеждали всех, что будущее только за XML. Крупные компании вкладывались в XML. Где-то рядом уже запихивали XSLT в браузеры. All the hipsters were excited about XML 🤡.



Но вот сидит Крокфорд и грустит, что для того, чтобы запихнуть XML в JS ему нужен парсер. Но, тут вдруг его осеняет, что гораздо проще передать литерал объекта текстом, так, как мы уже привыкли создавать объекты в JS. И тогда парсер будет очень простым и объём кода, передаваемого по сети станет меньше. Даглас и Чип Морнингстар собирают концепт и идут искать инвесторов.



А на дворе самое начало нулевых, крах доткомов и инвесторы очень осторожны. Они не хотят вливать деньги в то, что не является стандартом. XML вот стандарт. Там есть инструменты. А ваша поделка завтра рассыпется и что делать? Тогда Даглас и Чип придумывают название нового стандарта — JSON (JavaScript Object Notation), Даглас покупает домен json.org и запиливает свой знаменитый сайт, который вы все возможно видели. У нас есть сайт и название, мы стандарт! :)



Дальше начинается битва с Дэйвом Винером который на тот момент был очень влиятельным разработчиком и создателем XML-RPC. Винеру очень не понравился JSON и он достаточно резко прошёлся по нему в своём блоге. «Я тут услышал о чем-то под названием JSON, что предлагает решить проблему, которая была аккуратно решена XML-RPC в 1998 году»



Кстати, Даглас назначает Винера ответственным и за популяризацию SOAP (тут Даглас язвит - Simple Object Annoying Protocol. I don’t remember what the A was, but it might have been atrocious or abominable, I don’t know) Но сам Винер признаёт, что SOAP so difficult to program если сравнивать его с оригинальным XML-RPC.



В общем, Винер смотрит на JSON и кричит «ВЫ ЧЕГО?!! ЭТО ЖЕ ДАЖЕ НЕ XML!», предлагает найти разработчиков этого чуда и привязать их к дереву. Кажется, Крокфорда это обидело на всю жизнь.



В любом случае, дело идёт так себе инвесторы не верят в идею и не дают денег, но тут появляется Gmail и совершает AJAX-революцию (X значит XML, хе-хе). Теперь все хотят SPA. Вера в будущее веба на XHTML и XSLT растворяется. Люди перестают думать про XML-инструменты. Новым людям, пришедшим сразу в веб был нужен стандарт, менее жирный, чем XML.



Тут Даглас говорит интересную штуку, что сложность формата XML породила логическую ловушку о том, что и все инструменты вокруг него должны быть сложными. И эта накопленная сложность воспринималась как должное и гуру XML говорили «ну да, мы делаем сложные штуки, а как вы хотели?». А тут появились ребята, которые топили за простоту, а не за сложность. И ментально было сложно принять, что все твои сложные знания уже больше не нужны, что инструменты стали простыми, что передача данных по сети — это очень просто. Что хорошо и красиво — это когда просто, а не когда сложно.



В итоге, JSON победил, а XML проиграл. JSON вошёл в стандарт и получил MIME type application/JSON. А Крокфорд хотел конечно text/JSON, потому что ну причём тут Application? Почему есть text/XML но нет text/JSON? Крокфорд не знает, шутит, что это месть ему от XML-фанатов.



Вот и всё. Даглас считает, что JSON это и была самая главная вещь, которую он сделал в своей жизни и второй великой вещи у него уже не выйдет.



А я однажды передал Дагласу соль, сидя с ним за столом. Возможно, это и был высшая цель моего существования :_)