Гость TJ
Дамир Камалетдинов

«Быть лучше и вторым — нельзя»: сооснователь Mozilla и создатель JavaScript Брендан Айк ответил на вопросы сообщества TJ

О монополии Google, будущем Mozilla, популярности JavaScript и создании своего поисковика.

Фото Дрю Альтайзера

13 апреля в гости к TJ пришёл первый англоязычный гость — Брендан Айк, сооснователь и генеральный директор Brave Software и Basic Attention Token. Он больше часа отвечал на вопросы пользователей. Полную версию интервью можно посмотреть в видеоформате, редакция TJ выбрала главное из беседы.

Для удобства чтения некоторые ответы героя незначительно отредактированы и сокращены.

О монополии и конкуренции с Google

У любой монополии есть жизненный цикл. Например, когда умер банкир Джей Пи Морган, все остальные банкиры поняли, что его банк зачастую был для людей последней надеждой. Потребовалось новое решение, и это привело к созданию федерального резерва в США.

Google может просуществовать и сотню лет — General Electric ещё существует, хоть и не та, что была во времена Томаса Эдисона. Но став монополией, Google поставил себя в неудобное положение: во-первых, с точки зрения закона открываются всё новые подробности, к примеру, как Google и Facebook договаривались о ценообразовании. Во-вторых, на рынке — чем больше власти у компании, тем меньше она делает инноваций, тем больше в ней бюрократии, политики — так работает рост.

Конкуренцию создаёт открытый исходный код и API, и именно с их помощью можно тягаться с монополией Google. К примеру, есть целая родословная открытого кода, которая привела к созданию браузера Chrome. Он начался не в Google, а с проекта KHTML/KJS на Linux: на его основе создали движок WebKit, с помощью которого Apple сделала свою ветку проекта. А затем Google использовала тот же движок WebKit для браузера Chrome. Но и её собственный движок Blink, и сам браузер созданы на основе открытого кода движка WebKit и браузера Chromium.

Brave тоже использует Chromium. Конечно, можно справедливо заметить, что мы в чём-то повторяем Google. Возможно, кто-то скажет: «Вы не создали этот браузер сами». Это тоже справедливо, но и Google не создала — компания просто использовала WebKit.

Сейчас любая программа — это один слой ранее использованного или переписанного кода за другим. Теперь мы работаем так. Поэтому я по большей части не считаю программные патенты чем-то легитимным. Недавно мы наблюдали за судебным разбирательством между Google и Oracle — и я высказывался в защиту Google, потому что не считаю что API Java можно защитить авторским правом.

О конкуренции с Google на рынке поиска

Главная проблема — индексация. Это затратное мероприятие, если проводить её без остановки и для всех страниц. Мы пытаемся добавить инноваций и задействовать наших пользователей: наша система проводит индексацию с помощью запросов, которые отправляют наши пользователи, и сайтов, которые они посещают — анонимно, конечно. Это позволяет шаг за шагом индексировать всё больше страниц без нужды становиться Google и рыскать по всему интернету с помощью облачного суперкомпьютера.

К примеру, Bing начал заниматься индексацией после Google — их система меньше, а машинное обучение не такое эффективное. Если у пользователя какой-то редкий или уникальный запрос, Google всё ещё лучший — это заметно по другим поисковикам. Например, в DuckDuckGo можно добавить «!G» перед запросом, тогда браузер направит его в Google.

Такая же опция есть в Brave. Кроме того, можно подключить несколько поисковых движков, и если запрос будет слишком редким, то система анонимно передаст его в Google. Я считаю это нашим конкурентным преимуществом, но система индексации Google — это их эксклюзивная возможность, потому что компания занялась разработкой очень рано.

Как зарабатывают проекты вроде Brave и Mozilla

Люди всё чаще осознают, что если не платят за продукт, то сами являются продуктом. Но не все хотят платить или могут себе позволить платные версии. Мы даём пользователям выбор. У нас есть реклама, которая подбирается для пользователя машинным обучением на основе его данных в браузере и поисковая реклама от партнёров.

В Brave по умолчанию заблокировано отслеживание пользователей для таргетированной рекламы, поэтому если кто-то видит рекламу в браузере, то он сознательно подписался на нашу программу Brave Rewards. Это лёгкий способ зарабатывать криптовалюту, не оставляя своих данных — можно просто получать токены, который браузер будет направлять авторам, которых выберет пользователь. Можно отправлять как разовые пожертвования, так и регулярные, а мы берём комиссию в 30% от проданной рекламы, а пользователю отдаём 70%.

Помимо прямой продажи рекламы у нас есть партнёрские соглашения, которые позволяют зарабатывать с поиска — в зависимости от региона это DuckDuckGo, Qwant, и, кажется, «Яндекс». Редкие и уникальные запросы мы направляем в Google, поэтому ничего с них не получаем, но когда мы полноценно начнём продавать рекламу в поисковике Brave, то часть дохода от неё тоже будет уходить пользователю.

Mozilla же ещё в 2004 году заключила крупную сделку с Google и встроила его поисковиком по умолчанию в Firefox. Это случилось после того, как то же самое сделала Apple — и это соглашение выгодно всем сторонам.

Brave не уподобляется Google и не централизует систему индексации. У нас даже будет платная версия браузера без рекламы: пользователь — наш самый важный партнёр, и мы доказываем это конкретными действиями. Мы берём подход Google с хранением данных на серверах, который создал экономику на основе рекламы — и переворачиваем его с ног на голову. Мы делаем всё это через браузер, а пользователю отдаём долю дохода в криптовалюте.

Об отслеживании пользователей

Brave во главу угла ставит пользователя. Это не абстрактная идея — пользователи могут убедиться в этом. Только 70% дохода от рекламы, размещённой в браузере, идёт рекламодателю. Пользователь получает больше нас, поэтому с точки зрения бизнеса нам довольно трудно предать его доверие. Мы используем открытый код, чтобы любой независимый эксперт мог дать ему оценку.

Мы не отслеживаем данные о пользователях никаким способом. Браузер умеет пинговать наши сервера, кажется, с помощью пограничного сервера кэширования, чтобы проверить, не появилось ли какого-то важного обновления безопасности. Он делает это каждый день. Мы отправляем совсем мало информации и пользователя никак не идентифицируем, не запоминаем IP-адрес, поэтому и о географии пользователей ничего не знаем. Это делают магазины приложений, поэтому мы кое-что знаем о мобильных устройствах — например, что большая часть наших пользователей на Android. Но мы не знаем, кто наши пользователи — мы только знаем, как обновить их браузер.

О децентрализованном интернете

Почти все структуры, включая жизнь на Земле, Google или фанатов какого-то популярного фильма, стремятся к централизации. И в этом нет ничего плохого. Но централизованный игрок не должен брать все твои данные, зарабатывать с их помощью, наращивать обороты, скупать другие компании и делать их частью своей огромной монополии. Вот в чём проблема.

Я считаю, что децентрализация — это макротренд. Это видно и по технологии блокчейн, и по программам типа Brave, которые ставят пользователя на первое место, и по Apple, которая своим особым способом всегда заботилась о защите данных пользователя. Браузер Safari был первым, обладающим режимом приватности и блокировкой файлов cookie от третьих сторон.

Сейчас мы наблюдаем, как компании превращаются из ферм с центральным сервером, которые продают данные, в децентрализованные компании, которые заботятся о пользователе. Разговор о децентрализации — это на самом деле разговор о людях, о пользователях.

15 лет назад была очень популярна технология RSS. Можно представить блог или любой другой контент в стандартном формате, можно пропустить его через программу-агрегатор и читать. Люди очень любили агрегатор Google Reader, поэтому Google его закрыли, конечно.

У браузера Brave будет ридер-версия, мы её вроде назвали Brave News. На iOS и в десктоп-версии кнопка находится внизу страницы новой вкладки, скоро она появится и на Android — и она дает возможность читать в формате RSS. И всё это приватно — никакой сервер не хранит ваши предпочтения или подписки. И люди смогут создавать свои ленты RSS.

Фанаты блокчейн-технологии думают, что децентрализация возможна только с ней и криптой, но я думаю, RSS, маленькие сервера, забота о пользователе и агрегаторы тоже важны. И этот макротренд будет набирать обороты, если пользователи будут выбирать такие децентрализованные продукты.

О том, что происходит с Mozilla

Я сделал в Brave то, что, возможно, попытался бы сделать в Mozilla. Только это бы было труднее, потому что там работает наследие Firefox, движок Gecko. У браузера есть свои преимущества, количество пользователей например, но мне было бы трудно сделать что-то такое радикальное — пользователям бы это не понравилось. А начинать с нового браузера проще, потому что аудитория, которой нравится, что ты делаешь, придёт к тебе и друзьям расскажет, а ты тем временем задашь новый стандарт. Так что Brave может привносить инновации более агрессивно, чем Firefox.

Firefox нуждается в технологическом лидерстве. Браузер — это не готовый продукт, это часть живой системы интернета. Если Google единолично будет делать что-то новое, то они просто начнут создавать вещи, выгодные только их бизнес-модели — им просто придётся это делать как акционерной компании.

Так что Mozilla надо придумывать что-то новое, а проблема в том, что они, судя по всему, перестали это делать.

В компании всё ещё есть толковые специалисты, хотя многие, с кем я работал и кого нанимал, ушли. Сейчас у компании есть соглашение с Google, и это их слабое место. Какое-то время они работали с Yahoo, потом с Verizon — это случилось уже после моего ухода и не сработало, да и не могло сработать по целому ряду причин. А потом они ушли обратно к Google. Но я считаю, если не привносить инновации через браузер, то долю рынка компания потеряет и со временем перестанет быть браузером как таковым и станет некоммерческой организацией.

Возможно, такова судьба Mozilla. Она начала свою жизнь в 2003 году как некоммерческая организация. Мы создали Firefox, который оказался невероятно успешным, принёс большой доход от партнёрства с Google, что нам пришлось перейти на коммерческую модель из-за налогового законодательства США. Возможно, скоро этому придёт конец.

Хладнокровный бизнесмен сказал бы: «Продавайте Firefox. Или сделаем его, как Opera, добавим финтех-сегмент». Brave, кстати, добавил финансовых технологий — криптовалюту. Не знаю, может Firefox уже с этим опоздал. Но даже если нет, в компании нет технологического лидера, поэтому я думаю, что Mozilla просто превратится в некоммерческую организацию.

О популярности Javascript

Я не подозревал, что он станет таким популярным. Помню, как мой коллега в Netscape спросил меня: «Ты и через 20 лет будешь этим заниматься?», и я ответил: «Или чем-то совершенно другим, или JavaScript».Так и вышло, я разрабатывал и улучшал его до 2015 года.

Тут работает эволюционный принцип. Если ты первым создаёшь жизнеспособный продукт, необязательно идеальный, но ты улучшаешь его с течением времени, и он приобретает достаточное количество пользователей, конкурировать с тобой становится трудно. Позже появится кто-то и скажет: «Мой язык программирования лучше». Ну, не получится в браузеры второй язык добавить. Быть лучше и вторым нельзя.

JavaScript оказался первым в нужное время, не дал доминировать VBScript от Microsoft — он был раньше в Internet Explorer, но его оттуда удалили, потому что JavaScipt невозможно было противостоять. А когда продукт непобедим и не является лучшей версией себя, надо его улучшать — чем я и занимался.

Я думаю, люди, которые занимаются веб-разработкой, могут на этом научиться — не стоит торопиться и совершать ошибки. Я также упоминал ошибки, которые совершил после тех десяти дней, которые потратил на создание прототипа. Одной из них было послушать ранних пользователей.

Люди говорили такое ещё в 1995 году: «Давайте заменим интернет». Я в такое не верю. Даже дополненная и виртуальная реальность являются как бы надстройкой двумерных веб-страниц. Посмотрим, что будет дальше. Но веб-интернет заменить нельзя, JavaScript тоже. Поэтому мы его улучшали и сделали WebAssembly — второй язык программирования, более эффективный для виртуальных машин, которые есть у каждого в браузере.

Таким образом, у них один администратор памяти, одна программа чистки памяти, одни типы данных и операторов данных. WebAssembly быстрее и умеет делать вещи, которые нецелесообразно писать на JavaScript. По сути, WebAssembly дает возможность другим языкам программирования, особенно компилируемым, таким как Rust, С++, C нацеливаться на браузер.

О том, с чего начать, чтобы стать гуру разработки

У меня нет чёткого мнения на этот счёт, я думаю, добиться успеха можно везде. Возможно, во фронтенде сейчас слишком много людей. Бэкенд, системное программирование, программирование с планированием на основе ограничений в режиме реального или практически реального времени либо с ограничением по объёму памяти или надёжности ценятся высоко. Фронтенд в этом смысле более щадящий, и его можно сделать надёжнее при помощи правильных тулкитов.

Создать систему бэкенда в реальном времени для крипто-биржи или создать нечто надёжное в сфере здравоохранения требует определённых навыков и внимания к деталям. А ещё необходимо это невротичное волнение: «А когда сломается?» — такой практически пессизм, но не такой, который уничтожит в тебе проактивность.

Надо уметь смотреть на ошибки, внимательно изучать их. Возможно, даже применять другой язык програмирования для управления сбоями и отказами. Здесь очень полезен Erlang, разработанный Ericsson и Джо Армстронгом. Даже основатели WhatsApp пользовались Erlang, и думаю, что он им помог. Не знаю, пользуется ли им ещё Facebook, наверное да.

В любом случае, я считаю, что начинать надо на органичном стыке твоих навыков и спроса — здорово, если это системное программирование.

* * *

Этот эфир и выжимку мы сделали вместе с образовательной платформой GeekBrains, где можно в том числе выучить Javascript и стать веб-разработчиком с нуля. Даже если вы новичок, никогда не работавший в IT. А еще есть курсы по другим востребованным отраслям, например, маркетингу, дизайну, аналитике.

Главное, что можно получить во время этих курсов — это практика. Обучение ориентировано именно на то, чтобы после каждого модуля у ученика появлялся проект для портфолио.

Для всех пользователей TJ GeekBrains подготовил скидку до 50%. Промокод tjgb50 действует до 30.04.2021.

  • Зарегистрируйтесь на портале GeekBrains или войдите по логину и паролю;
  • Активируйте промокод по ссылке;
  • Выберите интересующий курс и оставьте заявку.

Если ссылка не сработала:

  • Зарегистрируйтесь на портале GeekBrains или войдите по логину и паролю;
  • Нажмите на аватар профиля в правом верхнем углу, в выпавшем меню выберите строку «Активация промокода» и введите промокод;
  • Перейдите на страницу курса и нажмите «Добавить в корзину» или «Оставьте заявку»;
  • Или назовите менеджеру ваш промокод и по какой акции вы пришли.

#разработка #интервью #мнения #браузеры