Автор революционной технологии учил бейсик с пяти лет.
Некоторые вещи существовали всегда — иногда такое впечатление создается, когда вспоминаешь что-то привычное, вошедшее в обиход давно и прочно. Мобильники, например. В Беларуси на них взращено несколько поколений, и мира без этих «друзей человека» они не знают. Компьютеры, телевизоры, стиральные машины — список длинный. Но есть в нем и неосязаемые проявления технологий.
В материале об основании компании Netflix один из читателей Onliner
подбросил интересную идею: написать о создателях торрентов. «Они помогли сэкономить миллиарды долларов всем пользователям», — отметил Igarrrrr. Почему бы и нет? Речь пойдет о Брэме Коэне, который разработал BitTorrent.
Учил бейсик с пяти лет
Как-то много лет назад появилось понятие peer-to-peer, которое медленно, но верно проникало в массы. Считается, что Тим Бернерс-Ли, придумывая то, что позже стало «всемирной паутиной», видел ее подобной P2P-сети (приринговой или одноранговой) — когда каждый отдельный пользователь является ее участником и элементом. На заре «интернета для масс» примерно так и было.
В определении P2P-сети есть много умных слов, которые мы опустим, оставив лишь важное: в подобной сети каждый компьютер (или устройство, подключенное к «интернету») является полноправной ее частью, узлом. То есть «самого главного» сервера обычно нет, каждый общается со всеми остальными напрямую. Поэтому отсутствие одного узла не скажется на работе такой сети (конечно, при должном количестве узлов).
Изучал бейсик с пяти лет
А теперь совсем не плавно переходим к P2P-протоколу BitTorrent, который так любим многими белорусами, знакомыми с интернетом. И который был придуман почти 20 лет назад американским программистом Брэмом Коэном. О нем и пойдет речь ниже.
Брэм заинтересовался компьютерами не просто так. Он родился в Нью-Йорке в 1975 году, вырос в одном из районов Манхэттена. Его отец был учителем информатики и плотно изучал IT того времени. Правда это или нет, уже не проверить, но, по словам Брэма, бейсик он начал изучать еще в пятилетнем возрасте. По другим данным, будущий инженер ПО был чуть старше, когда начал активно интересоваться программированием.
«Отец научил меня бейсику и рудиментарному C, остальное я изучал сам, в том числе теорию сложности вычислений», — рассказывал Брэм позже.
Одноклассников будущий создатель протокола и клиента BitTorrent грузил своими познаниями, то и дело затевал споры на тему, что лучше: Commodore 64 или компьютеры Timex Sinclair. А к 10 годам Брэм уже мог заткнуть за пояс программистов постарше. Родители поддержали сына, отправив его в специализированную школу с математическим уклоном — Stuyvesant High School.
Учился, но было скучно. Стал программистом
Затем парень продолжил обучение в Университете штата Нью-Йорк в Буффало, но, как обычно бывает с увлеченными людьми, здесь ему быстро стало скучно. Это было в 1995 году. Тогда случился период расцвета интернета, который вскоре трансформируется в экономический пузырь.
Нежелание продолжать учиться и попытки найти работу в софтверных компаниях иногда связывают с диагностированным у Брэма синдромом Аспергера. В этом состоянии у взрослого человека нарушаются механизмы, ответственные за взаимодействие в социуме, со стороны его могут воспринимать как «странного», «неудобного». Но это лишь внешняя оболочка.
В то же время люди в подобном состоянии способны полностью сосредоточиться на деталях, они быстрее замечают закономерности в головоломках, им понятнее различные сложные модели и паттерны.
В одном из интервью в 2005 году Брэм, отвечая на вопрос о том, повлиял ли синдром Аспергера на его профессиональную деятельность, сказал: «Я не знаю. Я склонен погружаться в технические аспекты проблем, очень долго сохраняя внимание на чем-то конкретном. Обычно это считается чертой хорошего программиста, но и особенностью характера человека с синдромом Аспергера». Повлияло ли наличие синдрома позитивно или негативно на навыки программирования, сказать, по его словам, сложно — «Я не могу сравнить себя разного».
В 1997 году Брэм переехал в Сан-Франциско, куда со всей страны стягивались американские программисты. Работу Брэму найти оказалось несложно — с его знаниями и опытом. Тем более здесь как грибы после дождя росли «айтишные» стартапы. Да, как правило, они не выживали, но на какое-то время их хватало. Хотя кое-какие сложности были: Брэм не признавал четкого графика работы («быть на работе с 8 до 5»), а наличие дресс-кода принимал в штыки. С учетом этих черт и других особенностей характера ужиться в коллективе ему было не слишком просто.
Придумал BitTorrent. Продвигал проект с помощью порно и дистрибутива Linux
Последним прибежищем Коэна перед началом «новой эры» стала компания MojoNation. Сюда Брэм пришел наемным сотрудником, и, вероятно, здесь у него оформилась идея создания BitTorrent. Дело в том, что фирма занималась разработкой платформы, алгоритмов и протоколов для передачи файлов в зашифрованном виде. Файлы при этом разбивались на фрагменты и хранились на разных компьютерах, загружаясь одновременно отовсюду.
Да, идея отчасти витала в воздухе, поэтому в тот период в разное время появились Napster, KaZaA и подобные P2P-сервисы. Правда, они были организованы иначе, и потому их эффективность с точки зрения доступности данных и скорости их передачи устраивала не всех. И Коэна в частности. Говорят, особенную «душевную боль» у него вызывали мысли об использовании FTP-клиентов, без которых в то время было ни туда и ни сюда.
Поэтому примерно в 2001 году начинается то, что изменило интернет. И это не преувеличение: спустя несколько лет на долю BitTorrent приходилась половина глобального интернет-трафика. В апреле этого года Брэм уходит из MojoNation, реализует протокол BitTorrent и пишет на Python первый клиент для работы с ним.
Придуманную идею он озвучивает на конференции для хакеров CodeCon — ее задумывали как место для обмена опытом, презентации новых технологий и ПО, но не продуктов. Организаторами и начинателями CodeCon, к слову, стали Брэм Коэн и Сассаман (последний был известен как «киберпанк» и специалист по криптографии, он работал над ПО для PGP).
Коэн, чтобы как следует дать о себе знать и продвинуть проект, использовал «запрещенный» прием — порнографию. Собрав коллекцию бесплатного «взрослого» контента, Брэм приманил таким образом первых бета-тестеров — ранние версии BitTorrent он начал распространять еще летом 2001 года.
Однако драйвером роста популярности нового протокола стало не порно, а Linux (хотя кто-то может сказать, что особенной разницы нет). В 2003 году Red Hat выпустила Linux 9, спрос был так высок, что серверы компании «легли». Считается, что «нулевым пациентом» стал немецкий студент Айке Фрост. У него завалялся свежий дистрибутив, был установлен клиент BitTorrent и имелся доступ в интернет.
Ссылка появилась на сайте Slashdot, куда нахлынули толпы юзеров. За три дня они сгенерировали более 21 терабайта трафика, в пиковые моменты данные раздавали и принимали 4,5 тыс. компьютеров с общей скоростью 1,4 Гбит/с. Как тебе такое, Илон Маск?
Да, сегодня подобными показателями удивить сложнее, но, напомним, это был 2003 год. По словам Фроста, если бы он пользовался домашним интернетом, раздача обошлась бы ему в $20—60 тысяч. А так — $99 — цена за сервер, с которого передавались данные.
Поработал в Valve. Помог со Steam и Half-life 2
Имя Брэма зазвучало громче, о нем узнал Гейб Ньюэлл, который как раз собирался представить миру некий новый продукт — Steam. Зачем? А чтобы удобнее было распространять Half-Life 2. Программиста приняли на работу — предположительно с октября 2003 года. Подробностей нет, но известно, что Коэн работал над эффективной системой дистрибуции ПО (клиент Steam и HL2 соответственно). Ньюэлл тогда во всеуслышание похвалил Брэма за его достижения с BitTorrent.
Однако в Valve он надолго не задержался, покинув компанию в начале 2004-го, чтобы основать собственную фирму — BitTorrent, Inc. Его поддержали брат Росс Коэн и Эшвин Авин. Авин, кстати, в 2006-м выкупил популярный клиент uTorrent, а также начал предпринимать шаги к повышению коммерческой привлекательности BitTorrent. В том же 2006 году Росса, который занимал позицию CTO, выгнали из BitTorrent, Inc. Почему? Что-то пошло не так, наверное.
После основания компании стартап начал активно развиваться и привлекать инвестиции, Брэм одновременно вел переговоры с правообладателями, доказывая, что пиратство не его стихия, а BitTorrent придуман, чтобы сделать интернет комфортнее. Наверное, пользователи оценили, так как в 2005-м половину интернет-трафика генерировали пользователи известного протокола. «Качки» качали, провайдеры интернета жаловались на них и противостояли.
Проблема не была надуманной: высокая нагрузка раскрыла некоторые слабые стороны в операторских инфраструктурах, а также пользовательском оборудовании. Постепенно все «устаканилось», хотя протокол чаще воспринимается как нечто мало связанное с легальным ПО. Поэтому часто можно услышать: «Пойду куплю что-нибудь со скидкой на торрентах». То есть в этом случае можно сказать, что протокол, придуманный Грэмом Коэном, помог белорусам «сэкономить» миллионы… Брэм позже сухо отвечал на вопросы о пиратстве. Не потому, что избегал, а потому, что тема ему просто неинтересна.
Продал BitTorrent, ушел в криптовалюты
Главным достижением Брэма Коэна стало то, что он изменил интернет. Даже если эти изменения понравились не всем. А в 2018 году после продажи BitTorrent, Inc. (Rainberry, Inc. на тот момент) криптостартапу TRON Коэн ушел из компании. По другим данным, разработчик протокола BitTorrent покинул свое детище в 2017-м, став сооснователем криптоплатформы Chia.Network.
Бонус: вспомнили Torrents.by
Сегодня торренты, хоть и испытывают давление со стороны обладателей авторских прав, а также закона, продолжают здравствовать. Впрочем, есть и исключения. Помните «торбу»? В начале апреля 2016 года старейший и на тот момент крупнейший «живой» торрент-трекер в Беларуси Torrents.by прекратил работу. Продержавшись на плаву около десяти лет.
Мы решили немного поворошить прошлое и поговорили с Сергеем, который в свое время был администратором Torrents.by, занимался разработкой, дизайном, внедрением новых «фишек», исправлением ошибок и подобной работой. Он напомнил, почему трекер закрыли и что предшествовало тому. Хотя причины закрытия известны, они банальны и очевидны: в первую очередь это изменение законодательства.
«Особенно доставалось от российских правообладателей. Первое официальное закрытие (2015 или 2016 год, точно уже не помню) провел Денис, основатель ресурса, именно поэтому. Затем все права он передал мне.
Я несколько раз пытался возродить ресурс, но к главной причине добавились и другие. Это и малая востребованность — у многих появились скоростные безлимиты, «гость» ушел в историю, случилось снижение интереса — стало меньше релизеров, так как это отнимает время (да и кому охота оставлять включенным компьютер для раздачи, проще скачать и уйти), и финансовые проблемы.
Вначале проект (по словам Дениса) окупался. Хватало на аренду, еще и на мороженко оставалось. Но после первого закрытия, когда проект перешел ко мне, был только минус. Он всегда был для меня проектом „для души“, я отдавал ему очень много времени и сил, поэтому и продолжал поддерживать его. Хотя это и было для меня накладно», — рассказывает Сергей.
На площадке существовали, хоть и не слишком много, авторские раздачи. «Было достаточно много релизеров, которые раздавали свой уникальный контент. Например, мне очень нравились сборки от TimON, он специально делал их для Torrents.by», — добавил Сергей. Но со временем и они сошли на нет.
После череды открытий-закрытий, претензий от российского и белорусского правообладателей пришлось оставить только форум, посещаемость рухнула. Сергей попробовал трансформировать трекер в онлайн-кинотеатр, но ниша оказалась слишком насыщенной конкурентами.
«Бессмысленная трата средств и времени. Вот и решил закрыть. Пока не придумал, во что его можно еще „переформатировать“», — Сергей ставит точку в эпохе белорусских торрентов. А протокол BitTorrent продолжает развиваться.