Ведущий разработчик Ethereum Виталик Бутерин — канадский программист с русскими корнями. На момент первого релиза этой амбициозной криптовалюты ему было всего 18 лет. Мы побеседовали с Виталиком во время его визита в Сколково и расспросили о том, как он придумал и развивает Ehtereum, о нем самом и о взглядах на жизнь.

Кодить я начал в пять-шесть лет. Но серьезно, конечно, занялся этим лет в десять-двенадцать. Сначала я делал всякие игры. У меня был какой-то старинный компьютер с Windows 95 и книжка о том, как программировать на C++ с Allegro. Сперва я писал всякие Space Invaders, потом играл в них, а потом начал делать более сложные игры. Все пошло оттуда.

От игр я перешел к олимпиадному программированию. В Торонто, в Канаде, дошел до интернациональной олимпиады по информатике. В канадской версии я, по-моему, один раз занял четвертое место. Этот опыт мне сильно помог в понимании алгоритмов. Вообще, спортивное программирование хорошо помогает в специфических видах кодинга.

Мой основной язык сейчас — это Python.

Мой любимый текстовый редактор — Vim. С темным фоном и зелеными буквами.

К Ethereum я пришел через увлечение Биткойном. Про Bitcoin я впервые услышал в 2011 году. Папа мне рассказал, что есть такая интересная валюта, никакое правительство, никакой центральный банк ее не контролируют. Сначала я подумал: «Как такая система может жить, ведь это просто цифры в компьютере? Какая у них может быть стоимость?» Через три недели я наткнулся на Bitcoin в интернете и решил изучить тему поглубже. Я начал ресерчить, начал сильно увлекаться и понял, что это серьезная и очень интересная тема.

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

Я серьезно интересовался политической стороной вопроса, читал книжки про экономику и другие подобные вещи. Сейчас у меня куда менее радикальные взгляды, чем три года назад. И интерес к вопросу стал больше технологический, чем политический. А раньше было примерно поровну.

С блокчейном я разбирался сам — без всяких наставников и литературы. Сидел, читал форумы. Еще помогло то, что в первые два года я делал журнал про Bitcoin. Там, чтобы написать статью хорошо, нужно было много ресерчить. За два года я стал экспертом просто из-за этого.

Первый proof of concept Ethereum я сделал на Python, это заняло несколько месяцев. Работал я не один, networking помогли сделать еще два программиста, потому что в этой теме я совсем ничего не понимаю. От того кода остался разве что кусок-другой, хотя и они сильно зарефакторены.

В публичный проект Ethereum превратился далеко не сразу. Сначала я написал white paper и переслал его пятнадцати друзьям. Были люди, которые ответили: «Да, нам это интересно, мы хотим помочь». То есть почти с самого начала у меня были помощники, которые взяли на себя часть работы. После этого все росло пошагово. В какой-то момент разработка пошла быстро, потом темп снова снизился, когда мы готовились к первому публичному релизу. А потом снова все пошло быстрее.

Сначала я вообще не верил, что никто до меня не придумал ничего подобного. Я полагал, что, когда начну делать, обнаружу причину, по которой эта идея невозможна. Но ничего такого не произошло.

О заработке я сначала не думал. У меня была идея, я попробовал рассказать о ней всем, хотел хотя бы задокументировать. Было несколько команд, которые говорили, что могут быстро реализовать то, что я описал. Они начали что-то делать, но быстрее меня ничего не опубликовали.

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

Сейчас в Ethereum Foundation у нас порядка тридцати программистов. Но в комьюнити есть несколько сотен человек, которые все свое время тратят на Ethereum. На GitHub код контрибутит тоже несколько сот человек, а может и тысяч, если считать тех, кто пишет только изредка.

Пользовательский клиент разрабатывают сотрудники Ethereum Foundation. Например, Джефри Уилкинс сейчас главный девелопер клиента на Go. Есть команда, которая занимается разработкой Mist. Команда, которая делает клиент на C++. У каждого проекта есть основная команда из двух-трех человек и ряд тех, кто помогает по мелочи.

Важно, что у Ethereum нет одной кодовой базы. Есть несколько клиентов Ethereum, есть developer environment и другие куски. Например, браузер может говорить с любым клиентом. В каждом проекте есть два-три главных человека. Но если сложить всё вместе, получается такой децентрализованный проект.

Практически каждый человек, который сейчас работает в нашей команде, когда-то был частью комьюнити. Это люди, которые пришли узнать, что такое Ethereum, помайнить эфир, а потом начали программировать.

Были попытки скомпрометировать Ethereum. В частности, несколько DDoS-атак. Но мы их пережили нормально. Бывает, что люди присылают секьюрити-баги. Хорошо, что они пока что слали их нам, а не стали сами эксплуатировать. Были и попытки эксплуатировать баги в клиенте, но в целом случаев не так много. Кстати, у нас есть программа bug bounty.

Еще несколько лет я хочу развивать код Ethereum, а потом думаю перейти в бизнес. Мне нравится писать код, но сейчас я больше занимаюсь ресерчем, чем кодингом. Скажем, придумываю алгоритмы для новой версии Ethereum.

2 комментария

  1. Аватар

    Sarum

    19.07.2016 в 15:48

    «Сначала я вообще не верил, что никто до меня не придумал ничего подобного. Я полагал, что, когда начну делать, обнаружу причину, по которой эта идея невозможна. Но ничего такого не произошло.»

  2. Аватар

    d13ma

    31.10.2016 в 21:09

    Жаль никто не пишет кто его родители)))

Оставить мнение