JavaScript был создан за десять дней как «игрушечный» инструмент для дизайнеров, но в итоге стал фундаментом глобального веба, доказав, что радикальные идеи небольших групп способны сокрушить корпоративных гигантов. Путь Брендана Айка — это хроника борьбы между академическим совершенством и прагматичным принципом «худшее — это лучшее», изменившая правила игры в интернете навсегда.
🚀 Путь инженера: от физических моделей к цифровому буму 1:45
От физики к программированию: выбор в пользу реальности 1:45
Брендан Айк (Brendan Eich) пришел в мир программирования не сразу. В старшей школе его технологический опыт ограничивался помощью другу, который владел компьютером Commodore PET: вдохновившись «Звездными войнами», они пытались написать простейшую двухмерную игру, симулирующую полет по траншее Звезды Смерти. В те годы юный Айк был увлечен не столько компьютерами, сколько мощными научными калькуляторами компании Hewlett-Packard, работавшими на основе обратной польской записи (RPN). Будучи заядлым любителем научной фантастики, он поступил в Университет Санта-Клары с намерением изучать физику, мечтая о варп-двигателях и гиперпространственных прыжках.
Однако реальность академической науки разочаровала будущего инженера. Осознав, что до практического воплощения фантастических концепций еще далеко, Брендан Айк начал активно программировать. Ему удалось избежать написания кода на Fortran с использованием перфокарт, так как эта практика сохранялась на инженерном факультете, тогда как на факультете естественных наук уже использовали Pascal и переносимые компиляторы языка C для мини-компьютеров DEC. Айк искренне влюбился в процедурную abstraction и идеи структурного программирования, которые продвигал создатель Pascal Никлаус Вирт. Профессор Вирт славился жестким педагогическим подходом: например, он тестировал студентов кастомной почтовой системой с лимитом в 25 слов на сообщение.
В разговоре Лекс Фридман (Lex Fridman) поднял вопрос о кризисе теоретической физики на закате XX века. Брендан Айк согласился с наличием проблемы, отметив опасный перекос западной науки в сторону красивых абстрактных моделей в ущерб экспериментальной проверке. По его мнению, зацикленность на теории без сверки с реальностью вредит многим дисциплинам. Напротив, бурно развивающаяся Кремниевая долина 1980-х годов с ее Apple II и IBM PC предлагала осязаемый, практический результат. Прагматичный подход определил и отношение Айка к классическим академическим дилеммам: он подчеркнул, что знаменитая теоретическая проблема равенства классов P и NP практически бесполезна в реальной инженерии, поскольку создание полезных для людей систем — это всегда больше искусство, чем точная наука.
Уроки Micro Unity и «принцип умножения» Джима Кларка 11:41
После окончания магистратуры Брендан Айк провел семь лет в компании Silicon Graphics, работая над компьютерной графикой, пока корпоративная среда не стала слишком бюрократизированной. В поисках новых вызовов он перешел в амбициозный стартап Micro Unity, который Айк ласково называет «фиктивной аспирантурой». Компания пыталась совершить революцию, объединив аналоговые и цифровые цепи на одном гигантском чипе размером пять сантиметров, который требовал водяного охлаждения и позиционировался как «убийца суперкомпьютеров Cray». Позже проект переориентировали на создание умных телевизионных приставок, программное обеспечение которых можно было обновлять удаленно.
Команда инженеров писала код на C и C++ с использованием GCC, оптимизируя алгоритмы шифрования и обработки сигналов, перенося сложные математические вычисления на уровень софта. Несмотря на колоссальный опыт, проект Micro Unity провалился из-за чрезмерной технологической сложности. Переходя в компанию Netscape в апреле 1995 года, Айк услышал от ее основателя Джима Кларка фундаментальное правило прагматичной инженерии:
«Если вы делаете десять инновационных вещей одновременно, и у каждой шанс на успех составляет один к десяти, то по закону умножения общая вероятность успеха всей системы равна одному на десять миллиардов».
Этот урок заставил Айка навсегда отказаться от избыточного теоретического усложнения в пользу скорости реализации конкретных решений.
Становление Netscape и стратегия двух языков 14:58
Когда Брендан Айк присоединился к Netscape, компания двигалась к своему историческому IPO, состоявшемуся в августе 1995 года, со скоростью закручивающейся ракеты. До появления браузера Mosaic в 1993 году интернет оставался сугубо текстовым пространством. Инновация Марка Андриссена и Эрика Бины, внедривших поддержку изображений через тег <img>, наглядно доказала Айку колоссальное значение преимущества первого хода на сетевом рынке. Ранее в разговоре они касались принципа «Худшее — это лучшее», постулирующего, что в сетевом мире выживает не идеальный, а максимально быстро адаптирующийся продукт.
Команда Netscape осознавала угрозу со стороны конкурентов. В конце 1994 года софтверный гигант Microsoft пытался выкупить Netscape за бесценок, но получил отказ. Вскоре Билл Гейтс осознал масштаб угрозы, свернул собственный проприетарный проект Blackbird и выпустил знаменитый манифест «Интернет-разоружение» (Internet Tidal Wave), развернув всю мощь корпорации на копирование открытых веб-технологий. В условиях жесточайшего дефицита времени Netscape требовалось срочно сделать браузер динамической программной платформой.
Изначально Брендана Айка нанимали с обещанием, что он сможет встроить в браузер Scheme — элегантный диалект языка Lisp. Однако к моменту его выхода на работу Netscape уже заключила стратегическое соглашение с Sun Microsystems об интеграции виртуальной машины Java. Известный ученый Билл Джой и Марк Андриссен пришли к выводу, что развивающейся веб-экосистеме необходимы два принципиально разных инструмента. Java позиционировалась как сложный компилируемый язык для высокооплачиваемых профессионалов, создающих тяжелые компоненты. Вебу же требовался легкий скриптовый аналог Visual Basic — доступный инструмент для дизайнеров и любителей, способный связывать эти компоненты воедино. Именно эта стратегическая концепция сосуществования двух языков и предопределила появление нового гибкого инструмента автоматизации веб-страниц.
🛠️ Рождение «языка-склейки»: 10 дней, которые изменили веб 25:16
Идея «языка-клея» для дизайнеров и аматёров 25:16
В середине 1990-х годов сооснователь Netscape Марк Андриссен и Билл Джой из Sun Microsystems осознали острую необходимость в создании языка-компаньона для Java. Веб стремительно развивался, и индустрии требовался инструмент для автоматизаторов, дизайнеров и просто любителей — так называемый демотический подход, позволяющий легко «склеивать» готовые компоненты воедино. Брендан Айк (Brendan Eich) пришел в Netscape в апреле 1995 года. Из-за взрывного роста компании свободной вакансии в клиентской команде не оказалось, и первый месяц он проработал в серверном отделе, занимаясь протоколом HTTP 1.1. Однако все мысли Айка были заняты будущим языком веба.
Разрабатывая концепцию, он вдохновлялся HyperTalk — языком Билла Аткинсона для среды HyperCard на ранних компьютерах Mac. Поиски финального позиционирования технологии привели к цепочке переименований:
- Mocha — первоначальное кодовое имя, которое очень нравилось Марку Андриссену.
- LiveScript — промежуточное название, под которым язык презентовали в августе 1995 года.
- JavaScript — финальное коммерческое имя, торговую лицензию на которое у Sun удалось получить лишь в декабре 1995 года.
При этом руководство Netscape требовало, чтобы визуально синтаксис напоминал Java и C — со всеми их фигурными скобками. Это было необходимо для обеспечения «коммерции данных» в оперативной памяти между Java и новым языком. В результате JavaScript унаследовал грамматику выражений от Java, но сам Брендан Айк заложил в него элементы функционального программирования из Scheme и Lisp. Первоклассные функции (first-class functions) были критически необходимы для реализации обратных вызовов (callbacks) в браузере, поскольку ранние браузеры работали исключительно в однопоточном режиме, где категорически нельзя было блокировать пользовательский интерфейс.
Легендарный 10-дневный спринт: парсеры, костыли и уступки пользователям 36:34
Когда в начале мая 1995 года Брендана Айка наконец перевели в клиентскую команду, он получил долгожданную отмашку от Марка Андриссена. Внутри компании росло скептическое отношение к проекту, и медлить было нельзя. Легендарный спринт занял около десяти дней — с вечера одного четверга до понедельника следующей недели, в условиях катастрофической нехватки сна. Полагаясь на свои студенческие знания компиляторов, Айк вручную написал парсер рекурсивного спуска для нового языка. Из-за спешки в первой версии полностью отсутствовал сборщик мусора — память выделялась через пулы объектов и со временем неизбежно иссякала, пока летом 1995 года создатель не добавил подсчет ссылок. Это временное решение позже породило уязвимости удаленного выполнения кода из-за ошибок управления памятью в C, что заставляло команду Netscape в последующих релизах безумно латать дыры безопасности.
Еще одной сложной задачей стало внедрение кода прямо внутрь HTML-разметки, что вызывало ярость у SGML-гуру. Чтобы код не отображался старыми браузерами как текстовая абракадабра, Айк придумал знаменитый хак с двухсторонним скрытием комментариев внутри тега <script>. Оглядываясь назад, Брендан Айк больше всего гордится тем, что смог отстоять первоклассные функции. Главным же своим сожалением он называет уступку ранним пользователям, которые попросили добавить неявное приведение типов для оператора равенства (==), чтобы сравнивать числа со строковыми полями баз данных. Как отмечает Айк, это сделало язык «неряшливым», подтверждая слова Никлауса Вирта о том, что суть дизайна заключается в умении оставлять вещи за бортом. Ранее в разговоре Лекс Фридман (Lex Fridman) касался темы конфликта Java и JavaScript, а также фундаментальных ошибок дизайна языка, которые будут развернуты в третьей главе.
Принцип «Худшее — это лучшее» в эволюции веба 34:54
Судьба JavaScript наглядно иллюстрирует знаменитый технологический принцип «Худшее — это лучшее» (Worse is better). Смысл этой концепции заключается в том, что быстрое распространение продукта и приоритет места на рынке гораздо важнее его первоначальной идеальности. Получив широкую дистрибуцию и эволюционное преимущество, несовершенная технология обретает возможность улучшаться со временем. Именно поэтому JavaScript выжил, в то время как Java в браузере фактически «умерла», оказавшись запертой в «тюрьме плагинов» — ограниченном прямоугольнике апплета, не способном нативно взаимодействовать с DOM-деревом HTML-документа. Та же участь позже постигла и технологию Flash от Macromedia, которой Айк искренне восхищался за ее инструменты анимации. Netscape могла купить Flash (тогда FutureSplash) в конце 1995 года, но отдел маркетинга отправил создателей восвояси. В итоге окончательный смертный приговор Flash вынес Стив Джобс, запретив его на iPhone, что заставило индустрию направить всю энергию на развитие JavaScript.
Важнейшую роль в успехе сыграл Марк Андриссен. Айк с теплотой вспоминает их встречи в кафе Peninsula Creamery в Пало-Альто, где за огромными молочными коктейлями и бургерами они штурмили идеи. Андриссен мыслил масштабно и агрессивно, открыто заявляя до IPO, что связка «Netscape плюс Java убьет Windows», превратив браузер в мета-ОС. Хотя противостояние Netscape с Internet Explorer и последующие браузерные войны станут центральной темой четвертой главы, именно смелость Андриссена и прагматизм Айка заложили фундамент для того, чтобы JavaScript стал главным языком глобальной сети.
☕️ Архитектурный дуализм веба: корпоративная Java и компромиссы проектирования JavaScript 51:10
Противостояние титанов: тяжеловесная Java против гибкого «клея» для компонентов 51:10
В середине 1990-х годов компания Netscape предприняла масштабную попытку превратить свой браузер в полноценную, динамическую рабочую среду. Как вспоминает Брендан Айк (Brendan Eich), это был мощный платформенный рывок, включавший глубокую интеграцию Java, JavaScript, поддержку разнообразных плагинов и расширение возможностей HTML-таблиц. Разработчики пытались создать интерактивный стек из того, что до этого момента было набором весьма статичных веб-языков. Однако внутри этой новой экосистемы изначально было заложено глубокое концептуальное противоречие, предопределившее развитие фронтенда на десятилетия вперед.
Изначальный замысел создателей веб-платформы предполагал жесткое разделение труда между двумя совершенно разными языками. Java позиционировалась как сложный, строго типизированный, монументальный инструмент для экспертов и профессиональных корпоративных инженеров. В то же время JavaScript создавался как легкий, динамический и доступный язык, предназначенный для «склеивания» различных компонентов и быстрого управления поведением веб-страниц «на лету». Ситуация осложнялась тем, что Netscape вела отчаянную борьбу за дистрибуцию с Internet Explorer от Microsoft, о деталях которой подробно рассказывается в главах, посвященных браузерным войнам.
Этот дуализм наложил неизгладимый отпечаток на всю архитектуру раннего интернета. Ярким примером послужило создание Document Object Model (DOM) — программного интерфейса, с помощью которого скрипты получают доступ к элементам страницы. Брендан Айк отмечает, что в 90-х годах интерфейсы DOM проектировались с расчетом на одновременную и равноправную поддержку как Java, так и JavaScript. Из-за компромиссов в угоду тяжеловесной Java первые браузерные API получились избыточно объектно-ориентированными, жестко процедурными и невероятно громоздкими.
Чтобы выполнить элементарную манипуляцию с элементом страницы, разработчику приходилось совершать сложные ритуальные вызовы конструкторов — Айк иронично называет это «танцами окей-покей». Лишь годы спустя, благодаря прагматичному подходу сообщества и появлению лаконичных интерфейсов вроде библиотеки jQuery, а затем и стандартов HTML5 (таких как Query Selector API), эти цепочки вызовов удалось радикально упростить. В конечном счете Java так и не прижилась в качестве основного инструмента веб-разработки, полностью уступив клиентскую сторону своему более легковесному и адаптивному напарнику.
Спешка длиною в вечность: компромиссы и ошибки проектирования JavaScript 53:07
Создание JavaScript в экстремально сжатые сроки неизбежно привело к ряду фундаментальных архитектурных просчетов, о которых Брендан Айк открыто сожалеет и сегодня. Главным триггером многих проблем стала пресловутая 10-дневная разработка первой версии языка. Айк находился в ситуации жесткого инженерного цейтнота: ему приходилось намеренно удерживать и откладывать внедрение красивых, теоретически выверенных и хорошо продуманных фич из других языков, которые он мог бы скопировать или адаптировать при наличии времени.
Среди ключевых ошибок дизайна, заложенных на самом старте из-за спешки, создатель языка особенно выделяет две проблемы:
- Неявное приведение типов в операторе равенства (
==): Стремление сделать язык максимально «терпимым» к ошибкам новичков привело к созданию хаотичных и непредсказуемых правил сравнения разных типов данных, ставших объектом бесконечной критики со стороны программистов. - Нехватка времени на создание полноценного сборщика мусора (Garbage Collector): В первой коммерческой версии качественную автоматическую сборку мусора реализовать попросту не успели. Лекс Фридман (Lex Fridman) напоминает, что «быстрое добавление сборщика мусора» и закрытие критических дыр в безопасности происходили уже в спешном порядке на этапе отладки последующих бета-версий Netscape.
Еще одним примером вынужденного компромисса стало прямое копирование некоторых синтаксических элементов из Java. В частности, Айк перенес в JavaScript побитовые операторы. В архитектуре JavaScript, где все числа изначально обрабатывались как числа с плавающей запятой двойной точности, эти операторы принудительно приводили типы к целым числам в управляющем графе потока данных. Иронично, но эта архитектурная странность, родившаяся из спешки, спустя годы позволила оптимизировать производительность движков и легла в основу механизма быстрых типов в ядре семантики JavaScript.
В условиях жесткого контроля изменений Айку помогали отзывы первых пользователей — так называемых «lead users», таких как Билл Дортч (Bill Dortch), который создавал первые интерактивные галереи еще в 1996 году. Несмотря на то что в процессе дальнейшей эволюции стандартов (которой посвящена следующая глава) многие острые углы удалось сгладить с помощью строгого режима (strict mode), компромиссы первых десяти дней навсегда остались в ДНК всемирной паутины.
👑 Глава 4. Демократия стандартов и выжженная земля браузерных войн 1:23:15
Эволюция ECMAScript и социальный контракт JavaScript 1:23:15
Сегодня JavaScript признан самым популярным языком программирования в мире по многим метрикам. Брендан Айк (Brendan Eich) объясняет этот успех сочетанием удачных фундаментальных решений: внедрением функций первого класса и сохранением понятной для большинства программистов иерархии операторов языка C. Тем не менее, путь к вершине не был простым. В конце 1990-х и начале 2000-х годов JavaScript воспринимался индустрией исключительно как «микки-маусовский язык» (mickey mouse language). Его считали временным инструментом для создания мелких раздражающих элементов веб-страниц, вроде бегущей строки в статус-баре браузера.
Выстоять в этот нестабильный период языку помог уникальный подход его создателя. Пока сторонние эксперты продвигали тяжеловесную Java, требующую строгого объявления типов, Айк непрерывно прислушивался к нуждам рядовых веб-разработчиков. Он стремился сделать так, чтобы JavaScript эффективно функционировал в рамках однопоточного цикла событий (event loop) и позволял быстро собирать реальные динамические приложения.
Со временем управление развитием языка перешло к комитету по стандартизации ECMA (в частности, техническому комитету TC39). Этот орган превратился в уникальную социальную структуру. Сегодня в ECMA взаимодействуют не только конкурирующие между собой производители браузеров, но и крупнейшие корпорации, чей бизнес завязан на веб-технологиях — такие как PayPal и Salesforce. Им приходится адаптировать свои движки под единый стандарт и нанимать миллионы разработчиков, ориентируясь на их повседневные запросы.
Процесс стандартизации регулярно становится ареной для идеологических столкновений. Ярким примером стали споры вокруг стандарта ES6 (ECMAScript 2015) и внедрения классов. Пуристы жестко критиковали это решение, утверждают, что классы «разрушили» первоначальную прототипную концепцию JavaScript. Однако Брендан Айк подчеркивает, что JavaScript — это гибкий динамический язык. Объекты и классы исторически прекрасно сосуществовали в других динамических средах: Smalltalk, Python и различных диалектах Lisp.
Эта открытость сформировала вокруг JavaScript уникальное, живое и временами хаотичное сообщество. Лекс Фридман (Lex Fridman) сравнивает его структуру с сабреддитом WallStreetBets. Если мир C++ напоминает закрытый, консервативный Уолл-стрит для узкого круга экспертов, то JavaScript — это по-настоящему народный, «демотический» язык (demotic language). Он дает колоссальную силу распределенной толпе и пускает в индустрию новичков без жестких требований к образованию или регалиям. Это кардинально отличает его от эпохи конца 90-х, когда соискатели массово штурмовали курсы для получения официальных Java-сертификатов исключительно ради денег, тайно ненавидя программирование и мечтая работать пилотами или гидами.
(Ранее в интервью собеседники также подробно обсуждали технологическую эволюцию виртуальных машин, включая оптимизацию динамического кода, историю создания движка V8 от Google Ларсом Баком, а также появление asm.js и WebAssembly. Эти темы, как и последующее спонсирование Бренданом Айком языка Rust в Mozilla, подробно рассматриваются в соседних главах статьи).
Браузерные войны: корпоративное давление и крах Netscape 1:39:20
Развитие интернета невозможно представить без хроники масштабных «браузерных войн», ключевым эпизодом которых стало противостояние Netscape и Internet Explorer в 1990-х годах. В ходе беседы Лекс Фридман отмечает, что военные метафоры отлично описывают этот период жесткой конкуренции за каналы дистрибуции и технологические стандарты.
Брендан Айк напоминает, что компания Microsoft впоследствии была официально признана виновной в нарушении антимонопольного законодательства США за злоупотребление своим доминирующим положением на рынке. Тем не менее, он призывает не недооценивать инженерные заслуги конкурентов: к моменту релиза Internet Explorer 4 команда Microsoft проделала колоссальную работу и создала действительно качественный и сильный продукт.
Внутри самого Netscape в это время разворачивалась внутренняя драма. Команда инженеров, стоявшая у истоков веб-революции, была смертельно истощена и выгорела. Айк с иронией вспоминает внутреннюю топографию офиса: сам он работал на втором этаже, тогда как фронтенд-разработчики, собиравшие воедино интерфейс и события JavaScript, сидели на первом.
После успешного выхода на публичный рынок (IPO) высшее руководство Netscape совершило роковую ошибку в управлении бизнесом. Вместо того чтобы сосредоточить ресурсы на полировке собственного браузера и удержании технологического лидерства, менеджмент начал массово скупать сторонние компании. Руководители Netscape наивно рассчитывали построить огромный конгломерат, способный соревноваться с Microsoft «лоб в лоб» на всех фронтах. Подобная стратегия хаотичных поглощений редко приводит к успеху. В случае с Netscape она лишь размыла фокус компании, лишила инженерную команду последних сил и в конечном счете привела к потере рынка под натиском Microsoft.
(Истории о том, как остатки выгоревшей команды Netscape смогли перегруппироваться, основать Mozilla и выпустить Firefox, посвящена шестая глава данной статьи).
🚀 Революция производительности: asm.js и WebAssembly 1:40:12
Одной из самых амбициозных задач в истории браузерных технологий стала попытка преодолеть ограничения JavaScript при выполнении ресурсоемких приложений. В период расцвета веб-инструментов, когда разработчики стремились перенести сложные задачи — от 3D-графики до полноценных игр — непосредственно в окно браузера, стало очевидно, что стандартный интерпретируемый JavaScript не всегда справляется с «тяжелыми» вычислениями. Брендан Айк подчеркивает, что развитие инструментов оптимизации стало логическим ответом на потребность в производительности, сравнимой с нативным кодом.
Путь к высокой производительности 1:49:18
Оптимизация JavaScript была не просто техническим упражнением, а необходимостью, чтобы веб-страницы перестали быть статичными документами и превратились в полноценные программные среды. Основная проблема заключалась в том, что JavaScript, будучи динамическим языком, требовал сложной обработки при исполнении. Технологические инновации, такие как asm.js, стали важным этапом, позволяющим компилировать код из языков с низкоуровневым управлением памятью, таких как C++, в подмножество JavaScript. Это дало разработчикам возможность запускать высокопроизводительные приложения в браузере практически с нативной скоростью.
Позже эти наработки эволюционировали в WebAssembly (Wasm) — компактный бинарный формат, предназначенный для эффективного исполнения в виртуальных машинах браузеров. Это позволило браузерам вырваться из рамок обычных веб-интерфейсов и начать исполнять сложные игровые движки и вычислительные модули, которые ранее требовали установки специализированного программного обеспечения.
Архитектурные вызовы 1:49:31
Проектирование этих систем требовало переосмысления фундаментальных принципов взаимодействия кода. Стремление к модульности привело к использованию стандартизированных подходов, напоминающих компонентную модель (COM) с объектным подсчетом ссылок и использованием виртуальных таблиц методов (v-tables) в C++.
- Создание моста между JavaScript и низкоуровневыми компонентами позволило скриптовать объекты так же эффективно, как это делалось в Java.
- Перенос логики интерфейса с использованием специализированных языков разметки (таких как XUL) помог отделить визуальную составляющую от логики ядра.
- Эта работа заложила фундамент для современной веб-платформы, где браузер стал операционной системой для приложений нового поколения.
Как отмечает Айк, борьба за скорость выполнения кода была неразрывно связана с борьбой за стандарты. Хотя развитие браузеров (ранее в разговоре они касались истории браузерных войн Netscape и IE) создало хаос, именно потребность в запуске тяжелых графических и вычислительных задач в конечном итоге подтолкнула индустрию к созданию универсальных решений для производительности, таких как WebAssembly, ставших стандартом де-факто в современной разработке.
🌐 От открытого кода к Brave: история Mozilla, Firefox и эволюция браузеров 2:05:30
История современных браузеров — это непрерывная гонка вооружений, где инновации в области производительности и конфиденциальности переплетаются с борьбой за пользовательское внимание. Переход от эпохи закрытого кода Netscape к открытой модели Mozilla стал фундаментом, на котором был построен современный Firefox. Этот проект заложил основу для открытого взаимодействия, однако долгое время экосистема браузеров оставалась сильно зависимой от поисковых гигантов, таких как Google, чьи рекламные модели в значительной степени определяли то, как функционирует интернет.
Путь от Netscape к открытым стандартам 2:05:44
Браузеры прошли долгий путь от простых просмотрщиков страниц до сложных сред исполнения, соревнующихся в скорости движков JavaScript. Ранее в разговоре обсуждались проблемы дизайна JavaScript и браузерные войны. В этот период возникла глубокая связь между поисковыми системами и браузерами, ставшая «запутанным» узлом всей индустрии.
Mozilla была попыткой вырваться из логики проприетарного софта, предлагая модель открытого проекта, ориентированного на потребности пользователя, а не только на интересы владельца рекламной платформы. Однако финансовая зависимость от партнерских сделок с поисковиками (включая попытки сотрудничества с Yahoo в 2014 году) показала, насколько уязвимы браузеры без собственной автономной экономической модели.
Эволюция приватности: от случайности к дизайну 2:07:57
Сегодня конфиденциальность стала «глобальной волной», однако так было не всегда. В 90-е годы такие механизмы, как куки (cookies), внедрялись как вспомогательный инструмент для поддержки состояния в протоколах HTTP, которые по своей природе являются stateless (без сохранения состояния). Эти технические «случайности» быстро превратились в инструменты тотального отслеживания:
- Трекинг через куки: Изначально созданные для сохранения учетных данных (например, чтобы пользователь не вводил пароль на каждой странице банка), куки стали идеальным идентификатором.
- Изображения как маяки: Внедрение сторонних изображений в страницы позволило серверам отслеживать перемещения пользователей между разными сайтами.
- Скриптовый трекинг: По мере усложнения веб-технологий скрипты стали позволять отслеживать действия пользователей даже без использования традиционных изображений.
Эти механизмы были созданы без злого умысла, но стали топливом для экономики данных, сделав соцсети и рекламные сети одними из богатейших структур в мире.
Новая парадигма: браузер как защитник пользователя 2:13:15
Современный этап развития, представленный такими проектами, как Brave, ставит своей задачей блокировку этих «непреднамеренных» технологий трекинга по умолчанию. В отличие от старых расширений-блокировщиков, которые часто воспринимались издателями как враги, современные решения стремятся предложить альтернативную экосистему.
Ключевым вызовом здесь является развитие технологий защиты, таких как:
- Интеллектуальная защита от отслеживания (ITP): Использование локального машинного обучения прямо в браузере для обнаружения попыток обхода ограничений (например, попыток «наглого» создания first-party куки через редиректы).
- Борьба с фингерпринтингом: Противодействие методам идентификации устройства по уникальным статистическим характеристикам, что часто используется как альтернатива куки.
- Разделение контекстов: Создание «изолированных хранилищ» для каждого сайта, чтобы даже при использовании сторонних скриптов данные пользователя не могли быть объединены в единый профиль.
В этой борьбе браузеры становятся «супераппами», которые не просто отображают контент, но и активно защищают права пользователя, меняя баланс сил между издателями, рекламными гигантами и аудиторией.
🌐 Как Google подчинил себе веб: Движок V8, сила дистрибуции и антимонопольные войны 2:34:33
Сила дистрибуции, скорость Chrome и феномен движка V8 2:34:33
В истории веб-индустрии появление браузера Google Chrome стало переломным моментом. Как отмечает Брендан Айк (Brendan Eich), в свое время Chrome наглядно продемонстрировал всему миру, какими быстрыми и эффективными могут быть интернет-обозреватели. Этот технологический рывок был совершен во многом благодаря разработке принципиально нового, сверхмощного движка V8. Развитие этого проекта сопровождалось интересными организационными перестройками внутри корпорации. В частности, со временем вся команда разработчиков V8 была перенесена в Мюнхен. Это случилось после того, как ключевой создатель движка Ларс Бак (Lars Bak) окончательно устал от JavaScript, из-за чего Google принял решение нанимать высококлассных специалистов и докторов наук (PhD) непосредственно в Германии, развернув там мощный инженерный узел.
Однако, помимо чистой производительности, ключевым фактором тотального доминирования Google стала колоссальная мощь его каналов дистрибуции. Брендан Айк подчеркивает, что именно способность продвигать свои продукты за счет монопольного положения позволяет Google буквально «растаптывать» независимых конкурентов. Когда в 2004 году Mozilla заключала историческую партнерскую сделку с Google для интеграции поиска в Firefox, поисковик действительно обладал лучшими технологиями на рынке. Но со временем фокус сместился с инноваций на удержание контроля над рынком. Хотя ранее в разговоре собеседники подробно анализировали архитектуру альтернативных браузеров (что детально описано в других главах), текущая реальность такова, что именно дистрибуция Chrome диктует условия всей индустрии.
«Боргизация» издателей и скрытые механизмы поисковой монополии 2:37:43
Глобальная централизация современного интернета во многом обусловлена тем, что независимые веб-браузеры оказались заложниками централизованных поисковых сил. Поисковый алгоритм по самой своей природе является глобальным монопольным механизмом. Брендан Айк вспоминает слова Ларри Пейджа, сказанные много лет назад: создавая поиск, Google изначально предлагал пользователям сделку — отдать часть своей приватности в обмен на интеллектуальное исправление опечаток и предоставление релевантных результатов.
Эта концепция со временем переросла в жесткий монополистический капитализм. Поисковый гигант начал массово скупать сторонние компании и агрессивно заполнять страницу выдачи собственными привязанными (tied-in) сервисами, вроде YouTube, искусственно занижая видимость независимых сайтов. Одним из самых спорных проявлений такой стратегии стал проект AMP (Accelerated Mobile Pages). Под предлогом заботы об оптимизации медленных мобильных страниц Google фактически принуждал издателей переносить свой контент на серверы корпорации, поощряя их за это приоритетными местами в карусели поисковой выдачи. Брендан Айк характеризует это как процесс «боргизации» (Borgify) медиарынка, отсылая к культовой научно-фантастической расе Боргов. Независимые издатели откровенно ненавидят AMP, поскольку эта технология разрушает идентичность их брендов: вместо оригинального адреса сайта пользователи видят доменное имя Google, натянутое поверх чужого текста. Таким образом, корпорация пытается затянуть весь независимый веб в свой «куб Боргов», лишая авторов прямой связи с лояльными читателями.
Дилемма инноватора и «парфюм конфиденциальности» 2:34:59
Под давлением общественности и регуляторов Google вынужден реагировать на запросы безопасности, однако Брендан Айк убежден, что корпорация лишь пытается нанести «парфюм приватности» на Chrome, не меняя его хищнической природы. Причина этого кроется в классической «дилемма инноватора»: Google стал абсолютным заложником созданной им же гигантской экосистемы поведенческой рекламы (ad tech), от которой критически зависят миллионы нетехнологичных издателей по всему миру.
Пытаясь усидеть на двух стульях, Google анонсировал инициативу Privacy Sandbox и сопутствующие алгоритмы FLoC (Federated Learning of Cohorts), Turtledove и Fledge. Айк называет эти разработки типично «гугловскими» — избыточно усложненными (overengineered) и опирающимися на математическую модель дифференциальной приватности. Суть этой модели заключается во внедрении искусственного шума, чтобы скрыть конкретного человека в безликой толпе. Однако дифференциальная приватность имеет фундаментальную слабость: со временем сильный и упорный противник, накапливая массивы данных, все равно способен извлечь профиль пользователя из этой зашумленной толпы. Разумеется, такие игроки, как Apple, Brave или Mozilla, наотрез отказываются слепо принимать подобные стандарты. Google даже публично поддерживает внедрение «токенов доверия» (trust tokens), основанных на слепых подписях Дэвида Чаума, но панически боится применять их для реального подтверждения просмотров рекламы, так как это мгновенно разрушит их собственную бизнес-модель, завязанную на тотальный сбор данных.
Антимонопольный капкан: Уроки дела Microsoft и превентивная стратегия Google 2:43:38
Сегодня агрессивные действия Кремниевой долины привели к тому, что крупные технологические компании оказались на скамье подсудимых в масштабных антимонопольных процессах, инициированных как Министерством юстиции США (DOJ), так и прокурорами отдельных штатов. Лекс Фридман (Lex Fridman) интересуется, насколько реален принудительный раздел таких гигантов. В ответ Брендан Айк проводит глубокую историческую параллель с прецедентом «США против Microsoft» на рубеже веков. Тогда федеральный судья Томас Пенфилд Джексон допустил юридический перегиб: он без проведения надлежащих слушаний по правовой защите вынес вердикт о принудительном разделении Microsoft на две независимые структуры — одну для операционной системы Windows, другую для офисных приложений (Office). В итоге апелляционный суд отменил это жесткое решение, заставив стороны пойти на мировое соглашение.
Хотя те судебные ограничения в конечном счете сильно деморализовали Microsoft, заставив их временно отвернуться от веба в сторону закрытых проприетарных систем в эпоху провальной Windows Vista, Google извлек из этой истории правильные уроки. По мнению Айка, руководство поискового гиганта действует гораздо гибче и умнее, чтобы не допустить судебного расчленения. Вместо прямого столкновения с карьерными прокурорами Google, скорее всего, предпочтет превентивно пожертвовать малой частью своей империи. Они могут самостоятельно отделить и продать какое-нибудь крупное подразделение — например, рекламную платформу DoubleClick — чтобы формально удовлетворить требования регуляторов и окончательно сорваться с антимонопольного крючка.
🛡️ Наследие в коде: Brave, суверенитет пользователя и будущее веба 2:55:34
В финале беседы Брендан Айк (Brendan Eich) и Лекс Фридман (Lex Fridman) переходят от обсуждения технических деталей к философскому осмыслению того, что останется после десятилетий работы над архитектурой интернета. Хотя создание JavaScript обеспечило Айку место в истории, сам он видит своё истинное наследие не только в синтаксисе языка, но и в борьбе за стандарты веба и создание инструментов, возвращающих пользователю контроль над его цифровой жизнью .
Проблема трекинга и философия Brave 2:56:11
Центральным элементом текущей работы Айка является браузер Brave, который он называет важнейшим проектом, способным доказывать свою значимость на протяжении многих десятилетий . Brave возник как ответ на глубокий кризис конфиденциальности: современный веб оказался заложником архитектуры слежки. Побочным эффектом развития скриптов и cookie стало появление механизмов тотального трекинга, где каждое движение пользователя монетизируется без его явного согласия.
Айк подчеркивает, что Brave — это не просто очередной браузер, а попытка исправить фундаментально «сломанную» рекламную модель веба. Основные принципы Brave включают:
- Блокировка по умолчанию: Автоматическое отсечение трекеров и навязчивой рекламы, что не только защищает приватность, но и значительно ускоряет загрузку страниц.
- Смена парадигмы: Переход от модели, где пользователь является продуктом, к модели, где он — полноправный участник обмена ценностями.
- Доказательство жизнеспособности: Пример Firefox ранее уже показал, что рынок браузеров можно «перезапустить», даже когда кажется, что доминирование одного игрока (как это было с Internet Explorer) абсолютно .
Брендан Айк верит в теорию «упрямого меньшинства» (stubborn minority). Согласно этой идее, не нужно, чтобы абсолютно все пользователи меняли свои привычки. Достаточно нескольких процентов осознанных «ведущих пользователей» (lead users), чтобы изменить наклон всего рынка и заставить даже самых инертных гигантов считаться с новыми стандартами приватности .
Basic Attention Token (BAT): Экономика внимания 2:56:45
Для реализации новой модели веба недостаточно просто заблокировать рекламу — необходимо предложить альтернативу, которая позволит издателям и создателям контента выживать. Здесь на сцену выходит Basic Attention Token (BAT). Айк рассматривает эту криптовалютную модель как способ честного распределения доходов.
В экосистеме Brave и BAT внимание пользователя признаётся ценным ресурсом. Система позволяет пользователям получать вознаграждение за просмотр конфиденциальной рекламы и, в свою очередь, автоматически или напрямую распределять эти токены в пользу любимых издателей и авторов. Это создает замкнутый цикл, где посредники в лице рекламных корпораций теряют возможность бесконтрольно собирать данные.
Айк сравнивает этот дух сопротивления сложившимся порядкам с недавними событиями на фондовом рынке, такими как кейс с акциями GameStop и сообществом WallStreetBets . В обоих случаях технологии (будь то блокчейн, Robinhood или защищенный браузер) становятся инструментом, с помощью которого «дети из интернета» могут бросить вызов институциональным гигантам.
Будущее Кремниевой долины и «Американский путь» 2:57:45
Обсуждая будущее инноваций, Брендан Айк затрагивает тему упадка Кремниевой долины (Silicon Valley) как географического центра силы. Высокие налоги, заоблачная стоимость жизни и идеологическое давление вынуждают многих талантливых разработчиков и предпринимателей искать другие места для жизни и работы. Однако Айк не видит в этом конца эпохи прогресса.
Он связывает возможность перемен с глубоко укоренившимся «американским духом», который он описывает как прагматичный и склонный к защите прав, когда ситуация становится слишком несправедливой или олигархической . Основные тезисы Айка о будущем инноваций:
- Право на сопротивление: Если система становится слишком «разбалансированной» и злоупотребляет властью, меньшинство берет на себя ответственность за создание альтернатив.
- Сила кода: Всего несколько радикальных идей, воплощенных в программном коде, способны трансформировать общество .
- Децентрализация талантов: Дух Долины — это не место на карте, а готовность рисковать своей «жизнью, имуществом и священной честью», как это делали отцы-основатели.
Айк называет США величайшей страной именно из-за этой возможности «перезагрузки» через инновации. Он уверен, что новые технологические прорывы будут происходить независимо от того, кто именно приходит в индустрию, если они принимают эти принципы свободы и ответственности .
Завершая разговор, Лекс Фридман цитирует знаменитый закон Джеффа Атвуда: «Любое приложение, которое может быть написано на JavaScript, в конечном итоге будет написано на JavaScript» . Для Брендана Айка это не просто шутка, а констатация того, что созданный им когда-то «на скорую руку» язык стал универсальной тканью цифрового мира, на которой теперь строится новое, более свободное и приватное будущее.