Отъявленный программист: лайфхакинг из первых рук

Савчук Игорь

Часть I .  Прямая речь:  компьютерщики  о себе и ИТ

 

 

ГЛАВА 1. Ричард Столлман —  дзен свободного  программирования

Ричард Мэттью Столлман — известный американский программист и общественный деятель. Является создателем программ GNU Emacs, коллекции компиляторов GNU (GCC) и отладчика GNU (GDB). Основатель движения свободного ПО, проекта GNU, Фонда свободных программ (FSF) и Лиги за свободу программирования. Является главным автором лицензии GNU General Public License. В качестве хобби любит сочинять и слушать собственную музыку, путешествовать и читать научную фантастику.

Интервью взято в конце 2013 года.

Предлагаю большое интервью с безусловно ярким и легендарным представителем контртренда по отношению ко всей коммерческой индустрии ПО — Ричардом Мэтью Столлманом (@rms), американским системным программистом, странствующим философом, баламутом и общественным активистом. Человек-борода (альтернативные варианты перевода — человек-стол, человек-киоск) Столлман, бог свободного программного обеспечения во плоти и крови, донесет нам сегодня евангелие о необходимости помощи ближнему во Сети, а также похвальном желании мирянина писать «правильные программы». Мы попробуем понять, почему своими моральными принципами Столлман «вызверил» против себя огромное количество игроков из лагеря «собственнического ПО» и мира Open Source, «куда» он вообще живет и какую такую свободу при этом проповедует.

«Я не имею отношения к Open Source» Послушайте, все, что вы хотите знать, это, конечно, очень важно, но если позволите, я бы хотел начать с освещения двух типичных и уже хронических синтаксических проблем Движения за свободные программы, с которыми мне приходится иметь дело примерно в 90 % интервью и выступлений. Более полное раскрытие данных ошибок поможет вашим читателям лучше понять, какие идеалы я проповедую и чем занимается фонд FSF на самом деле. Итак, я не имею никакого отношения к движению Open Source, к которому вы и остальная пресса меня причисляете. Фонд Free Software Foundation и движение за свободные программы отстаивают несколько иные идеалы. Иначе говоря, наш термин «свободная программа» вовсе не эквивалентен понятию «программа с открытым исходным кодом». Это исходная точка, в которой в большинстве случаев начинается большая путаница, поэтому будет лучше, если мы сразу проведем водораздел между ними. Раз уж подвернулся такой удобный случай, давайте попробуем разобраться, чем же так принципиально отличается свободная программа от программы с открытым исходным кодом? Начнем с последнего определения. В 1998-м впервые официально было сформировано мировое движение FOSS (Free and Open-Source Software), которое, если компактно суммировать его взгляды, ставит акцент на двух фундаментальных положениях: ? Во-первых, они выступают за полностью открытый исходный код распространяемых программ, и это видится просто как технологическое удобство для разработчиков — возможность совершенствовать чужие программы, дорабатывать их или расширять под свои нужды. Естественно, все это требует доступа к исходникам для перекомпиляции. ? Во-вторых, они пропагандируют открытый исходный текст, делая акцент на экономических аргументах; попросту говоря, продвигают сугубо меркантильную точку зрения, согласно которой использование подобных программ экономически выгодно по сравнению с проприетарным софтом, который стоит немалых денег.

И первый, и второй пункт — исключительно практические ценности. Open Source — это просто удобная и экономически выгодная методология разработки. Теперь в качестве контраста: для нашего движения за свободное ПО главное — идеалы и моральные ценности, где прежде всего ценится уважение свобод пользователей. Итак, свободные программы, за которые мы ратуем, — это обществен ное движение, где жестко отстаивается единственный этический императив — безусловное уважение свобод пользователей ПО. Если вы читаете новости и прессу, легко увидеть, что поборников Open Source волнует совсем другая проблематика: успешность или неуспешность отдельных проектов, их популярность и доля на рынке и т. д. Почти никогда при этом дискуссия не касается категорий справедливости и несправедливости использования софта, проблем распространения подобных программ, защиты прав конечных пользователей. Не все программисты такие сообразительные, как вы или я, поэтому, уверен, с пониманием этой тонкой разницы, лежащей в плоскости вашего «принципиального императива», у некоторых могут возникнуть трудности. Не могли бы вы привести какой-то практический пример, чтобы представить это различие более зримо и конкретно? Например, некоторые популярные мобильные устройства на базе открытой и бесплатной ОС Android поставляются с исполняемыми файлами программ, сборка которых полностью соответствует выложенному в Сети их исходному тексту, но сами эти устройства не позволяют пользователю устанавливать собственные или модифицированные версии этих файлов. Как правило, в такой ситуации только одна привилегированная компания обладает властью изменять их. Мы называем такие компании тиранами, а данная конкретная тактика паразитирования на почве Open Source известна под термином «тивоизация». Можно привести множество подобных примеров из самых разных сфер, но их общая суть, думаю, понятна. Таким образом, согласно описанной философии по нашим стандартам эти файлы не являются свободными программами, несмотря на то, что для них доступен их полный исходный текст, как правило, свободно выложенный в Интернете. Более того, сами эти программы (и их исходники) доступны для вас абсолютно бесплатно, удовлетворяя обоим вышеописанным критериям Open Source. Именно поэтому я настоятельно призываю в своих выступлениях по всему миру: несмотря на общее слово1, давайте не будем путать идеалы «свободы слова» с бесплатным пивом, которое вам повезло отхватить на ярмарочной распродаже. Хочу подчеркнуть — мы ничего не имеем против движения Open Source, мы приветствуем открытие исходных текстов программ, но при этом повторяем — это лишь первый важный шаг в правильном направлении, для надежной защиты интересов пользователей ПО этого мало. Думаю, сейчас более ясно, почему наше движение так категорично и показательно отмежевывается от Open Source, — мы ставим более глобальные и далеко идущие задачи. Мы также призываем всех разделяющих нашу точку зрения сознательно применять термин «свободные программы» вместо более узкого определения «программы с открытым исходным кодом» для более точной передачи сути наших общих ценностей. Давайте попробуем емко подытожить все сказанное. Вы бы не могли привести ваши знаменитые «4 свободы для свободных программ», чтобы все любители свободного софта могли лишний раз порадоваться удачному дню, просто пробежав их глазами? С удовольствием, вот они: ? это свобода запускать программы так, как вы пожелаете; ? свобода изучать и изменять исходный код программы в соответствии со своими нуждами; ? свобода делать копии программ, чтобы распространять их среди других; ? свобода распространять и использовать модифицированные программы так, как вам захочется. Это максимально общие пожелания, более четко они выражены в наших лицензиях, например в GNU Public License.

1 Англ. слово free переводится и как «свободный», и как «бесплатный».

Признаюсь, грешен, ибо писал коммерческие программы «с элементами защиты», хотя в душе был всегда непорочен, оставался верен этим, безусловно, святым и боговдохновенным принципам. Что бы вы могли сказать программерам, работающим в коммерческой сфере и пишущим хорошие, но несвободные программы каждый божий день напролет в течение всей своей никчемной жизни? В мире есть программисты, которые, безусловно, заслуживают вознаграждения за создание прогрессивных или инновационных программ, меняющих нашу жизнь к лучшему. Но среди этих программистов также есть и такие, кто заслуживает порицания, если они искусственно ограничивают использование подобных программ другими. Я не против бизнеса, но я за то, чтобы поощрять дух сотрудничества, а не противоборства. Для этого нужно научиться уважать свободу выбора других людей, а не потакать методам, разделяющим и подчиняющим их.

Личный выбор свободы Не хочу «переходить дорогу на красный свет» и как-то злить вас, но позвольте еще раз вернуться к предыдущему вопросу. Раз уж вы сейчас проживаете в США — в самой гуще коммерции и глобализации, поинтересуюсь: насколько эта идеалистическая точка зрения работоспособна в рамках современного капитализма? Иначе говоря, есть ли такие «правильные парни-программисты» в реальном мире вокруг нас? На всякий случай, если вы с другой планеты, — на данный момент большая часть мировых интернет-сайтов работают под управлением GNU/Linux, *BSD, MySQL и Apache. Думаю, вам будет трудно доказать людям, стоящим за этими (и другими подобными) проектами, что свободный софт — это просто пустая демагогия и высоконравственная болтовня. Большинство стоящих за этими проектами разработчиков работают бесплатно и тем не менее проектируют реально стоящий код. Понимаю, идеалы и мотивы этого сообщества часто сложно понять обывателю, всю жизнь просидевшему на «поводке» контракта. Тем более, компании типа «Майкрософт» хотят заставить нас поверить в то, что помогать ближнему — сродни захвату чужих кораблей. Я призываю смотреть на мир шире, в нем очень много бескорыстных и любящих свою работу программистов, которые мечтают сделать что-то по-настоящему стоящее, даже если это что-то находится далеко за пределами узких корпоративных интересов вашего босса. Гуру, деньги — ничто? Знаете, давайте оставим деньги в покое. О деньгах сейчас и так говорят и пишут слишком много, их превратили в фетиш. Так что в этом плане и без моего участия вполне достаточно уже существующего новостного и культурного фона. Мы же как раз занимаемся целенаправленной пропагандой свободы, и я буду благодарен, если именно на этом мы и сосредоточимся в рамках нашего разговора. В идеале я бы хотел, чтобы ценности свободы и взаимного уважения прав продвигались в мире активней, гораздо более активней, чем культ денег. Я твердо убежден, что современная альтернатива деньгам — свобода. Если вы все еще в поисках того, ради чего стоит прожить свою жизнь, — выберите свободу. Может быть, просто всему свое время? Может, смысл эволюции как раз в том, чтобы последовательно подняться к вершинам пирамиды Маслоу, для чего потребуется какое-то время на взросление? Лично я не горю желанием хвататься за стоп-кран каждый раз, когда ктото умный вроде вас указывает мне, что мой поезд-жизнь следует не в том направлении. Я знаю одно, и это подтвердит любой творческий человек: в качестве горючего жгучее чувство внутренней правды с присадкой страсти самореализации всегда эффективней, чем абстрактные деньги. Старомодные компании, где работают исключительно за деньги, обречены проиграть в инновационности и прогрессивности компаниям, где работают за идею (это касается в том числе как людей, так и государств). И если на коротких временных дистанциях с этим тезисом еще можно поспорить, то в долгой перспективе все более чем однозначно: свобода — наиболее предпочтительная мотивационная категория. Подумайте об этом в перерывах между просмотром канала MTV и работой с утра до позднего вечера.

Возвращаясь к вопросу — можно потратить свою жизнь, как вы сказали, на последовательное покорение пирамиды потребностей Маслоу (я бы сказал проще — на «крысиные гонки»), а можно срезать большую часть пути, сразу переходя к реализации своей мечты. Если и нужно до чего-то последовательно дорасти, как вы выразились, то исключительно до своей идеи фикс, до понимания собственной миссии и предназначения в жизни. После этого вы либо теряете время, либо отстаиваете свою личную свободу, третьего в ощущениях не дано. Именно так и поступил я в свое время — шагнул в неизвестность, приступив к реализации совершенно абстрактной для многих концепции свободных программ, которая сейчас превратилась в заметное общественное движение. Только, пожалуйста, не делайте из меня героя. При большом желании, уверен, любой читающий нас программист способен написать лучшую программу (веб-сервис) своей жизни и незамедлительно подарить ее человечеству, не дожидаясь при этом каких-то «особых встречных условий». В этом случае мой совет: сделайте свой пример заразительным, позвольте подхватить ваш проект другому на аналогичных условиях, для чего рекомендую воспользоваться лицензией GPL.

Linux без GNU — ничто

О’кей, давайте врубим задний ход и вернемся к началу, где вы упомянули две популярные ошибки в отношении вашего Фонда. Подробно рассмотрев отношения свободного FSF с Open Source и проприетарным софтом, не могли бы мы вернуться ко второй отмеченной вами хронической проблеме? Второе хроническое недоразумение связано с Linux. Чтобы быть понятым верно, позвольте немного истории для начала. Когда ОС Linux еще не существовало в природе, в своем «Манифесте GNU» мы поставили перед собой амбициозную цель — разработать собственную свободную Unix-совместимую систему, которую в итоге назвали GNU. И уже к тому моменту, когда разработка Linux только начиналась, разработка GNU была практически завершена. Здесь хочу отдельно подчеркнуть: GNU не был и не является проектом по разработке набора утилит или пакетов программ, как думают некоторые, и тем более это не проект по разработке компилятора языка С (хотя мы сделали и это). Поскольку наш проект изначально поставил перед собой комплексную цель «разработать полную свободную ОС, совместимую с Unix», мы с самого начала составили скрупулезный список программ для того, чтобы наша будущая система была самодостаточной. Таким образом, работая поступательно, к началу 90-х мы по частям сложили все воедино, реализовав весь запланированный список программ и компонент. Было готово все, кроме ядра. И с этой исходной точки мы приступили к написанию ядра GNU Hurd. К сожалению, его разработка затянулась на больший срок, нежели мы ожидали. Тут-то и появилось ядро Linux, которое было использовано в нашей системе. Теперь возвращаясь к исходному вопросу уже с необходимым контекстом: именно поэтому все так называемые разновидности Linux на самом деле являются дистрибутивами GNU/Linux. Эти дистрибутивы — лишь модифицированная версия нашей ОС GNU. Для полноты картины следует отметить, что кроме GNU был еще один проект, который независимо произвел свободную операционную систему типа Unix. Эта система известна как BSD и по большому счету слабо зависит от GNU. Таким образом, сегодня родословная любой из свободных операционных систем может быть однозначно отнесена лишь к этим двум предкам — либо это клон системы GNU, либо разновидность BSD. Собственно, именно поэтому я категорически настаиваю, что любой дистрибутив Linux правильно должен именоваться исключительно как GNU/Linux (и именно в таком порядке). Кроме того, добавлю, что сегодня существует много самых разных вариантов GNU/Linux, но подавляющее большинство включает несвободные программы — чаще всего их разработчики следуют собственной специфической философии Linux, но не философии свободных программ GNU, которую мы активно продвигаем. Это два принципиальных уточнения относительно Linux и нашей совместной с ней истории, которые мне приходится часто объяснять

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

Настоящее FSF

Благодаря этим двум «распространенным терминологическим неточностям» мы ретроспективно рассмотрели историю и задачи проекта GNU. Теперь попробуем это славное прошлое замкнуть на грозное настоящее: что насчет ядра GNU Hurd, которое было единственным недостающим элементом ОС GNU? Каково положение дел с ним сегодня? GNU Mach — это GNU-версия микроядра Mach, которую разрабатывает и поддерживает наш проект, это та основа, на базе которой зиждется GNU Hurd. На данный момент Hurd относительно стабильно работает на компьютерах с архитектурой x86, его последний релиз был в конце сентября 2013 года. Кроме того, еще есть Debian GNU/ Hurd, которая является версией этого ядра от популярного проекта Debian. Я весьма доволен, что Debian GNU/Hurd существует и развивается, но я не могу заставить людей оставить свои проекты или предпочтения, чтобы форсировать более быстрое развитие именно этого ядра. Кстати говоря, в рамках проекта Debian есть и другой необычный проект — GNU/kFreeBSD. Несмотря на мои противоположные личные предпочтения, проекты типа GNU/kFreeBSD привносят разнообразие в этот однообразный мир Windows/Linux. Извините, не расслышал ответа, разрешите еще раз задать прямой вопрос: есть ли у GNU Hurd хоть какое-то реальное будущее? На данный момент GNU Hurd не является высокоприоритетным для нашего проекта, потому что у него есть реальная работающая альтернатива — Linux. Как я уже говорил, мы начали разработку GNU Hurd в далеком 1990 году, потому что проект GNU остро нуждался в завершающем элементе — ядре. Вскоре после этого проект Linux все-таки смог стать первым свободным ядром, доступным каждому, поэтому он очень удачно перехватил инициативу и заполнил пустую и очень востребованную на тот момент нишу. Я был бы рад, если бы проект GNU Hurd достиг такого же успеха и признания, и мне приятно, что многие люди упорно продолжают его разработку. Но, вероятно, с учетом реально сложившейся ныне ситуации, для нашей свободы было бы более приоритетно, чтобы из популярного проекта Linux убрали все несвободные фрагменты кода (так называемые «блобы»), которые, как известно, там есть. Поэтому на данный момент мы основные усилия направляем на разработку проекта Linux Libre. Это модифицированная нами версия ядра Linux, главная цель ее создания — удаление любого программного кода, который поставляется в закрытом виде, имеет явно обфусцированный исходный код либо выпущен под проприетарной лицензией1. К сожалению, наша версия ядра запускается с меньшим количеством устройств, чем оригинальное ядро, но мы активно работаем над решением этой проблемы. Пользуясь возможностью, я бы хотел обратиться ко всем разработчикам, разделяющим наши идеалы и читающим этот текст: мы нуждаемся в опытных реверс-инженерах, которые смогли бы помочь нам в решении подобных нетривиальных задач. В заключение первой части интервью расскажите немного про ваш Фонд FSF. Кто эти люди, которые стоят за всеми текущими проектами, каковы общие тенденции развития движения за свободные программы? GNU Project работает в значительной степени за счет привлекаемых нашей философией волонтеров. На данный момент в рамках проекта всего около 400 значимых пакетов — самых различных программ и компонент, поддерживаемых и развиваемых GNU Project. Каждый пакет имеет как минимум одного собственного «мэйнтейнера» — человека, который сопровождает его, решает все возникающие проблемы и вопросы. В первой половине существования нашего Фонда (с 1987 по 1996 год) «мэйнтейнерам», сопровождающим наиболее 1 Чаще всего это касается бинарных прошивок некоторого сетевого оборудования и отдельных прошивок аудио- и видеокарт.

критические пакеты, платились деньги за выполненную работу из собственных средств Free Software Foundation. Но на сегодняшний день все наши «мэйнтейнеры» — это стопроцентные волонтеры, которые не получают ни цента за свою работу. И хотя очень небольшому числу из них (тем, кто занят по-настоящему сложными и важными вещами) все-таки платят деньги некие сторонние организации, повторю еще раз, главное — FSF окружен бескорыстными и убежденными сторонниками, и мы стремимся к тому, чтобы эта общественно значимая работа выполнялась по велению сердца, а не из-за желания подзаработать. Что касается тенденций нашего развития и общей проблематики, которой мы занимаемся, то они в последние годы начинают меняться. В первом десятилетии существования FSF нам нужны были программисты, которые были бы способны создавать полезные свободные программы, внося свой практический вклад в популяризацию наших идей и ценностей. В то время постоянный поиск достаточного количества таких людей был единственным препятствием на пути нашего развития. Но в последние годы ситуация начинает кардинально меняться. Сегодня существует класс программ (и их становится все больше с каждым днем), которые мы даже не можем написать, имея для этого все необходимые человеческие ресурсы. Некоторые программы-прототипы защищаются с помощью DRM (Digital Restrictions Management), некоторые производители железа и программ делают секретными свои спецификации и протоколы, и, наконец, к делу подключаются юристы, патентующие принципиально важные алгоритмы и звенья систем, которые мы бы хотели воспроизвести в качестве свободных для общества. Более того, в последние годы некоторые производители железа создают полностью искусственные системы защиты от инсталляции систем, отличных от их собственных, что фактически означает агрессивное противостояние попыткам использовать легально купленную вещь по собственному усмотрению. Поэтому в последнее время мы все больше смещаемся от чисто технических проектов в сторону проведения публичных кампаний, рассказывающих о подобных фактах и опасностях, продвигаем методы противодействия им. Мы делаем все, чтобы привлечь внимание широкой публики к подобным неблагоприятным трендам, а также поддержать всеми силами тех, кто сопротивляется им. Теперь это куда важнее, чем программировать правильные вещи. Ведь если мы не переломим тренд, тираны проглотят компьютерный рынок, а вслед за ним и наше общество. * * * В апреле 2012 года случился скандал, по итогом которого Столлмана обвинили в отсутствии нормальной человеческой эмпатии и сочувствия. Суть состоявшегося тогда в списке рассылки неприятного разговора была такова: Люк (Luc Teirlinck, профессор Обернского университета, США) внес в ветвь разработки Emacs не совсем удачный патч, который вызвал неожиданные последствия для проекта. Поскольку в этом большом кумулятивном патче было собрано воедино сразу несколько важных исправлений, было нежелательно откатывать его целиком, поэтому Столлман попросил Стефана (Stefan Monnier, Монреальский университет, Канада) провести анализ патча и выкинуть оттуда проблемные вещи. Но именно в этот момент Стефан, один из самых квалифицированных и активных участников проекта, был чрезвычайно занят — у него родилась долгожданная дочка. Он извинился, что не сможет сделать это, сославшись на радостную причину. В публичном списке рассылки посыпались поздравления, но Столлман ответил одной резкой репликой: Мне жаль слышать это. Далее Ник (Nick Roberts, NASA) также поздравил Стефана: Поздравляю тебя, Стефан! Я рекомендую тебе проводить все свободное время со своей дочкой! Ричард еще раз зло огрызнулся в ответ: Не нужно никаких специальных умений, чтобы размножаться — любое животное умеет делать это. С другой стороны, разработка софта типа Emacs требует реальных умений и навыков. Это одна из тех вещей, которыми как раз стоит гордиться. Такие проекты напрямую помогают другим людям.

В этой точке в списке рассылки начался «крутой замес». Казалось, Столлмана съедят живьем, но он молчал в ответ. С современной точки зрения это можно было бы засчитать как исключительно удачный троллинг, но за этим стоят действительно серьезные убеждения сторонника childfree. Взять хотя бы 1993 год, где в рассылке разработчиков проскакивают частые поздравления друг друга с рождением детей, в которые опять вклинивается раздраженный Ричард, говорящий, в частности, следующее (приводится в оригинале, чтобы передать чувство слога): These birth announcements also spread the myth that having a baby is something to be proud of, which fuels natalist pressure, which leads to pollution, extinction of wildlife, poverty, and ultimately mass starvation1. Лично для меня актуальна следующая параллель: церковь эвтаназии учит практически тому же, что и Столлман, обвиняя человечество, ведомое инстинктами (констатируя при этом биологическое равенство между материнским и половым инстинктом), во всех смертных грехах — от грядущего перенаселения до скорой экологической и военной катастрофы. Каждая месса этой церкви подводит емкий итог, заканчиваясь одной логичной выводом-фразой:

Сохрани планету — убей себя Чтобы лучше понять Ричарда как человека и личность, а не только как программиста или общественного деятеля, я решил спросить у него, насколько далеко он зашел. Я знаю, вы убежденный сторонник childfree, можно ли услышать из первых уст, так ли это? Я давно сам для себя решил не иметь детей. Проще всего сослаться на свой личный опыт детства: мои родители были вечно занятыми, от1 «Подобные объявления о рождении ребенка культивируют миф о том, что появление ребенка — это событие, которым стоит гордиться, тем самым активизируя политику поощрения рождаемости, что неизбежно ведет к загрязнению окружающей среды, далее к вымиранию живой природы, бедности и, в конечном счете, к массовому голоду».части из-за этого в моей семье было много напряжения и злости. Я хорошо помню главную установку — мы постоянно мешали и со здавали проблемы друг другу. Я вырос и увидел, что точно также обстоят дела и в других семьях моих повзрослевших друзей. Дети превратились в их объективную проблему, что бы мои друзья при этом ни говорили вслух. Я выделю два основных тренда: аутсорсинг — детей постоянно пытаются куда-то пристроить или спихнуть, будь то садик, бабушка или дедушка, сверхурочный факультатив в школе или какой-нибудь «ужасно интересный» кружок танцев. Часто, если эта часть вытеснения удается, родители временно чувствуют облегчение. Второй момент — это постоянные упреки и недовольство… Я слышу такое количество взаимных замечаний, требований, ожиданий и пустых надежд в адрес детей и их родителей, что просто не могу пройти мимо всего этого. Я никого не обвиняю, я просто констатирую для себя с предельной честностью — у меня было бы так же (или еще хуже). Именно поэтому я сознательно не хочу быть родителем. Можно ли назвать это разумным эгоизмом? Спросите себя — каждый, прямо сейчас: какой след вы собираетесь оставить в истории, какой вклад внести в развитие цивилизации и расы? Задайте себе этот вопрос немедленно, на минуту поднимитесь над рутиной и жизнью на автомате. Я ответил для себя — максимально значимый вклад, который я могу и хочу сделать, это проект GNU и движение за свободные программы. Я хочу изменить ландшафт в правовой и идеологической области разработки и распространения софта. Я хочу, чтобы этот рынок развивался в соответствии с самыми высокими идеалами, которые я в полной мере разделяю. Я хочу сделать людей свободней и защищенней, и я верю, что у меня это получится. Нет, я не говорю, что не способен стирать пеленки, я лишь констатирую, что не хочу этого делать. Возможно, я обманываю себя в том, что я способен на большее, но вся моя жизнь — доказательство моей правоты (proof-of-concept). Я выбрал не иметь детей, но я не призываю вас поступать аналогично. Я не желаю исчезновения человеческой расы и не навязываю свое

решение кому-либо еще, я действительно прошу сделать этот выбор осознанно. На данный момент я вижу, что малочисленная семья — это выбор подавляющего большинства западного населения, как бы мы к этому факту ни относились. Количество всегда переходит в качество, лично меня этот тренд нисколько не пугает. Есть другая важная гуманистическая составляющая моего решения, связанная с экологией, перенаселением и будущей экономической катастрофой. Не буду тратить время, предлагаю посмотреть концептуальный мультфильм1 Нины Пейли (Nina Paley), где эта политическая позиция выражена графически. В контексте культурных ценностей многих стран ваши слова могут оттолкнуть людей, которым будет сложно принять (или даже просто понять) концепцию childfree. Все-таки материнство и отцовство — краеугольный камень семьи, которая есть основа современного государства и общества. Нужно решить для себя самого, является ли человеческая особь биологическим или социальным феноменом. Конечно, в любой ситуации есть соблазн усидеть на двух стульях, но, по моему мнению, это взаимоисключающие роли. Я выбрал идеалистические цели, никак не связанные с моей прямой биологической функцией, и это приведет к тому, что в районе 2050 года мир недосчитается от пяти до десяти потенциальных детей. Взамен общество получит проект GNU и движение за свободные программы — это стало моим главным детищем, на которое я трачу все свое время, силы и жизнь. Звучит как исповедь прожженного либерала… Во-первых, я дистанцирую свои воззрения либерала от классической парадигмы либертарианства. Например, я, как очевидно, не пропагандирую защиту интеллектуальной собственности, хотя GPL и защищает код в интересах конкретных индивидуумов. Во-вторых, я за свободу выбора каждого, касается ли это сферы ПО либо чего угодно другого. Мы живем в мире готовых полуфабрикатов,

1

рецепты которых защищены и охраняются тысячей самых различных способов. Программа жить и умереть «как все» — одна из подобных «предустановленных прошивок», и если вы попробуете модифицировать жизнь на свой собственный манер, вы увидите, под какой агрессивной опекой общественного мнения находятся все эти навязанные социумом способы проявлять себя. Собственный выстраданный смысл жизни привносит реальность и целительную насыщенность в происходящее, и наоборот — то количество психозов, прокрастинаций, депрессий и раздражения, которое мы видим вокруг, — следствия попыток бездумно жить по чужим лекалам, которые мало соотносятся с вашими истинными глубинными чаяниями. * * * Меня всегда интересовало, как из личинки программиста, погруженного в свое увлекательное виртуальное действо, вырастает нечто совершенно чуждое сфере его изначальных интересов, например такой экстравертивный философ-активист, как Столлман. Как минимум, компонент либерализма я проследил у Столлмана по его пищевым пристрастиям — это страсть к кока-коле и фастфуду. Позвольте пояснить этот момент отдельно. Помнится, в прошлой жизни я проходил срочную службу «военным программистом» в отделе особистов забытой богом воинской части. Мой шеф, подполковник-секретчик, постоянно грыз меня на предмет того, что я окончил белорусско-канадский спецкласс английского языка. «Америка, небось, по ночам снится?» — вкрадчиво «запытывал» он похожими вопросами при каждой случайной встрече. «Это ложные ценности», — парировал я, изображая pokerface под его сверлящим взглядом. Наблюдали не только за мной, но и наоборот. Большой странностью для подполковника «пятого отдела» было то, что он запивал обязательную для военных водку исключительно кока-колой. Вообще говоря, закусывать — исконно русская привычка. Помню, еще тогда это насторожило меня (если не брать в расчет других его закидонов, типа,

будучи в подпитии, заставлять подчиненных подтверждать приказы фразой «Так точно, сэр»). Я нисколько не удивился, когда через пять лет после ДМБ, на юбилейной встрече сослуживцев я узнал, что именно этот подполковник-патриот благополучно свалил в США на «лечение», где впоследствии несколько задержался на ПМЖ. А ведь Америка — уникальная страна, где кока-кола стоит дешевле минеральной воды. Поэтому если вы откроете домашний холодильник типичного американца, почти наверняка обнаружите там бачок с колой, десятки сортов которой заставляют многих новоприбывших (даже без проблем со здоровьем, как мой бывший шеф-подполковник) по характерной ноющей боли в боку внезапно вспомнить, «где у тебя печень растет». Столлман — не исключение из этой железной ассоциативной цепочки, он типичный natural born liberal, который получал кока-колу внутривенно еще в утробе матери. Практически в любом видео с его участием вы увидите на столе неизменную кока-колу или пепси. У Столлмана есть собственный райдер для организаторов его выступлений (он называет его info packet), в котором указывает необходимость двух баночек Pepsi на столе для обеспечения качества его, пронизанного елейным славословием всяческих свобод, выступления. Cola/Pepsi настолько плотно ассоциируется с демократией и либерализмом, что лично мне сложно утверждать, что из них является причиной, а что — следствием. Поэтому как только мы заговорили с Ричардом про либерализм и гражданские права, мне страстно захотелось спросить про его странные пищевые привычки: каково это — жить на пицце и кокаколе, исповедуя принципы childfree и открытого исходного кода?

Столлман ест свои ноги

Как вы пришли к подобным либеральным взглядам, ставшим причиной создания движения FSF и борьбы за свободу софта? Программируете ли вы до сих пор? Это слишком длинная история для короткого интервью, поэтому расскажу лишь главное. В молодости я работал системным программистом в Массачусетском технологическом институте в лаборатории искусственного интеллекта (AI Lab). Все проблемы начались с моего желания сделать автоуведомление для всех наших пользователей об окончания печати задания. У нас был один общий принтер на всех, а объемы печати у каждого были большими, что создавало достаточно нервную атмосферу вокруг принтера. Я захотел как-то автоматизировать эту очередь и оптимизировать коллективное использование ресурса. С технической точки зрения задача ясна, но для ее выполнения мне были нужны исходники драйверов принтера Xerox. В итоге в доступе к ним было категорически отказано, потому что этот код был проприетарным. Затем было множество аналогичных инцидентов, которые даже поставили под сомнение возможность продолжения проектов в рамках AI Lab. Все это время я размышлял об этой перманентной проблеме несвободного софта, идея разрешения подобных ситуаций вызревала у меня все эти годы. Но когда главный проект лаборатории оказался под угрозой закрытия из-за конфликта различных правообладателей нашей главной системы, я осознал, что настала пора действовать. Поэтому сразу после инцидента с патентной атакой фирмы Symbolics, который переполнил чашу моего терпения, в январе 1984 года мной был запущен проект по созданию универсального набора свободного ПО. Ну а мне лично пришлось уволиться из AI Lab, чтобы посвятить себя полностью реализации этого проекта. Так появился GNU Project. Далее в 1985 году был основан некоммерческий общественный фонд Free Software Foundation, который нанимал программистов в целях создания полностью свободной ОС и ее окружения. И наконец, следующая важная веха в нашем развитии (это 1989 год) — создание популярной лицензии General Public Licence (GPL), которая стала революционно новым типом лицензий и провозгласила класс ПО, распространяемого на условиях copyleft. Таким образом желая наконец покончить с проблемами юридического характера, мешающим работать мне и другим, я постепенно из системного программиста превратился в общественного деятеля. И хотя все это время я продолжал программировать и активно участвовать во множестве софтверных проектов, основной упор сейчас делается на путешествиях по всему миру для публичных выступлений и пропаганды идей нашего движения.

Насколько универсальны ваши GPL-принципы? На рынке уже существуют напитки с абсолютно открытой и доступной рецептурой, распространяемой по лицензии GPL, например OpenCola и OpenBeer. На принципах GPL выпускают уже много чего — от дизайна электроники до музыкальных сэмплов. Например, буквально вчера вышел Novena — полностью опенсорсный компьютер — от начала до конца, который можно заказать и купить. Движение потихоньку набирает обороты, люди осознают, что это несет революцию, которая в корне улучшает их жизнь, возвращая в нее контроль над истоками. Впрочем, для процветания подобных проектов еще предстоит выстроить новую экономическую инфраструктуру и сформировать дружественный политический фон, все это дело будущего. Я знаю, вы придерживаетесь своих взглядов и за пределами работы, даже по отношению к мобильным телефонам. Что касается мобильных телефонов, то их реализация этически неприемлема, потому что это устройство двойного назначения, одно из которых — отслеживание вашего местоположения. Представьте себе, если бы я предложил вам сервис, который в состоянии в любой момент времени выдать ваше точное местоположение и, кроме того, дать возможность прослушать вас, — что бы вы сказали об этой возможности? Захотели бы вы добровольно носить на себе оборудование, необходимое для работы подобного сервиса? Но ваш мобильный является именно таким устройством, и вы невольно принимаете участие в подобных экспериментах. Однажды увидев, насколько совершенна эта технология трэкинга, я сказал своему мобильному «нет». С современными телефонами все возможно, потому что часто они используют несвободное ПО (либо содержат отдельные компоненты, использующие его), — не удивлюсь, если в нем обнаружится бэкдор. Для меня выбор не пользоваться сотовым телефоном абсолютно ясен и однозначен: я выбрал свободу в ущерб постоянной доступности. Это касается и всех остальных сфер моей жизни, где я также выбираю свободу во всех случаях, если вопрос ставится ребром. К примеру, это касается и моего поведения в Сети. Я никогда не подключаюсь к Интернету там, где требуется моя личная идентификация для этого. Я игнорирую подобные места настолько, насколько это вообще возможно, благо публичный Wi-Fi сейчас достаточно распространенный сервис, чтобы испытывать из-за этого какие-то особые трудности. Кстати, какие полезные сайты вы читаете? За исключением, конечно, сайтов fsf.org и gnu.org. Как правило, я не пользуюсь браузером для просмотра веб-страниц напрямую. Знакомые люди часто сбрасывают мне важные, по их мнению, адреса. Я использую специальный Perl-скрипт, на который отправляю по почте запрос с URL-адреса интересующей меня страницы. В ответ почтовый робот вытягивает мне нормализованный контент этих страниц без всех отвлекающих рисунков, CSS и рекламы. Если такая страница-письмо того стоит, она остается в архиве моей почтовой базы в специальной подпапке и впоследствии доступна мне автономно в любой необходимый момент. Для «браузинга» веба в режиме реального времени я использую специальный выделенный компьютер, впрочем, это случается достаточно редко. Никогда не делаю этого на своем рабочем нетбуке. Иногда мне присылают целые сайты, с которыми нужно ознакомиться. У меня есть штат волонтеров-помощников, которым я переадресую подобные запросы, с просьбой прочитать все и сообщить мне, если что-то конкретное заслуживает моего внимания. Даже если бы у меня и была техническая возможность постоянно сидеть в Интернете, я бы не делал этого из-за недостатка свободного времени. Ведь у меня есть важная работа, цели и идеалы. В заключение личный вопрос: я знаю, вы большой любитель пиццы, колы и биг-маков. В принципе, это наивный вопрос, ведь американские программисты чрезвычайно занятые люди, но все же — почему именно фаст-фуд? Это практично. Правда, я не скажу, что я горячий поклонник именно фастфуда, это заблуждение, но я охотно признаю часть обвинения — я люблю вкусно и изысканно поесть. Я прошу никогда не заказывать мне еду в кафе и ресторане, когда меня туда приглашают, я всегда выбираю меню исключительно сам. Я стараюсь относиться к питанию разумно и сознательно, отталкиваясь от своих принципов и приоритетов.

Сверхмобильный образ жизни и национальный бэкграунд привносят определенную специфику в мои пристрастия: подобно тому, как вино и мясо любимо французами, в Америке при ее темпе жизни полстраны сидит на энергетиках типа колы. С недавних пор по моральным причинам я присоединился к бойкоту и перестал пить Coca-Cola, вместо нее я заказываю у организаторов выступлений оригинальную Pepsi (non-diet Pepsi), которую действительно очень люблю. Я сонный по психотипу человек, и пепси позволяет немного взбодриться для более живого общения. По этой причине все виды содовых диетических напитков не оказывают на меня нужного бодрящего эффекта, хотя я и пытаюсь избегать лишнего потребления сахара, выбирая более здоровую пищу. Что касается всего остального, в быту я веду скромный и нетребовательный образ жизни, и вряд ли про меня можно сказать, что я подвержен каким-то чрезмерным излишествам, в том числе в питании.

Послесловие Желая в меру своих скромных сил спародировать добрую манеру Столлмана отсылать ссылки на «графическую иллюстрацию своих взглядов, чтобы сэкономить слова», для демонстрации общей простоты и нетребовательности Р. Столлмана я также приведу ссылку1 на ролик под говорящим названием: «Free software activist Richard Stallman eats shit» (другой вариант названия ролика: «Столлман ест свои ноги»). На 01:44 минуте этот известный активист, ведя публичное выступление «на босу ногу», быстрым движением руки отдирает нечто налипшее на свою ступню и не глядя отправляет «это» себе в рот. Ролик набрал почти миллион просмотров — убежден, врожденная способность привлекать к себе внимание по любому поводу — неотъемлемая черта любого успешного общественного лидера. Открытость, нетребовательность в быту и прямота Ричарда искренне подкупают и как минимум вызывают добрую улыбку даже у окончательно «испорченных жизнью коммерческих программистов» типа меня.

1

 

ГЛАВА 2. Крис Касперски — Евангелие от Мыщъха

Крис Касперски (Николай Лихачёв) — популярный российский автор компьютерной литературы на русском и английском языках по информационной безопасности и низкоуровневому программированию. Реверсер, хакер и эксперт по информационной безопасности, известный в Рунете под ником «мыщъх». Считает работу смыслом своей жизни. Хобби и увлечения — астрономия, стрельба из оружия, коллекционирование монет.

Интервью взято в 2014 году.

За свою жизнь на три страны я видел вживую множество гуру из мира больших ИТ — les monstres sacres («священных монстров»). Крис Касперски, также известный как Мыщъх, стоит особняком. Известный российский реверсер, кстати, не признающий себя программистом и хакером, — один из самых популярных авторов российской компьютерной литературы (для статистики: он «заточил» около 800 статей и больше 20 книг). Все — с приставкой «бывший». Сказать, что теперь у него сложно взять интервью, — не сказать ничего. Моя первая попытка два года тому назад оборвалась на полуслове. На этот раз получилось более удачно, и когда все «эксепшены» были аккуратно расставлены, Крис закурил свои любимые гаванские сигары, и мы начали этот длинный разговор об ИТ, Америке и его бренной жизни.

Рестон У каждой профессии, как и у человека, — свой рай обетованный. Для актеров это, безусловно, Голливуд. Для компьютерщиков подобным вожделенным пристанищем стала Кремниевая долина. Сразу оговорюсь: предлагаю отойти от более традиционного русского написания «Сили

коновая долина», которая в самих США ассоциируется с «порнографически раем» в Сан-Фернандо. Впрочем, кроме раскрученной в медиа Кремниевой долины, в США есть еще одно место, не менее известное у бывалых айтишников в теме, — это Рестон (штат Виргиния). Об этом небольшом городке не принято рассказывать взахлеб, а толпы программистов, работающие там, не любят бахвалиться своим местом работы. Рестон — небольшой городок, типичное захолустье. Высокая трава по колено, всего одна дорога во внешний мир, несколько провинциальных магазинов натыканы прямо среди поля. За чертой города — бескрайний лес. На фоне типичной деревенско-лесистой местности можно заметить необычные вывески — тут представлены все без исключения американские ИТ-гиганты: Intel, Microsoft, Google, Symantec, PayPal, IBM, Dell, Juniper, Citrix и т. д. Oracle здесь вообще градообразующее предприятие со своей собственной центральной улицей — Oracle way. Чем же так примечательна эта деревня? В 20 минутах езды от нее — Вашингтон, политическая столица США. Там обитают основные заказчики и кураторы многочисленных местных ИТ-проектов, которые, чаще всего, не принято обсуждать в прессе. Здесь каждый стремится урвать свой кусок от бездонного федерального пирога — и именитые ИТ-компании, и, тем более, их многочисленные рабочие лошадки — программисты. Уже более шести лет Крис Касперски — один из колоритных обитателей Рестона. Несмотря на то что знакомые, встречая его на улице, панибратски приветствуют «Привет, Иисус!», от былой публичности не осталось ни следа. После последнего развернутого интервью пять лет назад у него были проблемы с работой, и «плохие парни» грозились депортировать его из США.

Про работу

Что ты сам можешь рассказать о своей работе? Надеюсь, это не ЦРУ? Мы, конечно, не ЦРУ, но уровень секретности у нас ничуть не хуже. Не люблю секретность. Не выдержал и написал на стене маркером в знак протеста:Everything is a secret. Everybody is an enemy. A cold war inside [censored]. Насчет врагов я, конечно, погорячился, но перед отбытием на «Black Hat» (в качестве зрителя) со мной провели инструктаж, потому как там шпион на шпионе. Здесь мы подходим к той грани, где мне приходится взвешивать каждое слово, поскольку оно идет в печать. А потому давайте сойдемся на формулировке: «На данный момент работаю в крупной американской компании на должности рядового инженера, занимаясь выполнением задач, поставленных руководством». Какая у тебя специализация? Поскольку в физическом труде меня заподозрить сложно, то, вероятнее всего, основной доход дают мозги на плодородной ниве информационной безопасности (ИБ). Поковыряем немного в плотной завесе секретности. Пару лет назад было много шума, типа ты там какой-то космический софт написал? Ох уж этот пытливый русский народ, блин. Там все засекречено. Но из того, что можно рассказывать (и что уже засветилось на конференциях), так это проекты для US FAA и US Air-Force. Писал модули детекции (HIPS) для обнаружения вторжений и атак как second in charge, то есть вся ответственность на мне. Эти модули работают в закрытой сети указанных организаций, физически отрубленных от Интернета, и там даже нормальных rfc’шных протоколов нет — все какой-то левый самопал, с которым приходится работать. Это, конечно, не совсем космос, но очень-очень близко к нему. Любые атаки (инсайдеров) тут — это очень критично. Касательно космоса — писал софт для одной организации для распознавания спутниковых фотографий. Но это скучно и к космосу имеет только опосредованное отношение. Применил уже давно разрабатываемую мной идею. Какова история этой идеи распознавания? Вся история развивалась примерно так. Специализируюсь в секьюрити, и вот мне предлагают принять участие в американской государственной программе (то есть практически бес

платно) по охоте на сайты с детской порнографией. Но ловить сайты по косвенным признакам (локациям доменных имен и прочим) уже пробовали — неэффективно. И тут меня осеняет, что «распознавание образов» как общая задача, действительно, требует искусственного интеллекта и многих лет упорной работы. А вот данную частную задачу можно решить на коленке буквально в сотне строк кода, анализируя видеопоток — порно или не порно (даже если видеопоток сильно пережат). Попробовали — получилось! Очень высокая точность! В распознавании «малвари» (а это моя основная узкая специальность) и изображений на первый взгляд мало общего, но существующие антивирусы работают по тому же принципу, который может быть адаптирован и для распознавания изображений, если не спускаться на уровень алгоритмов, а мыслить абстрактными категориями. Именно за счет этого достигается возможность распознавания новой «малвари» моим методом. Другая госпрограмма США работала со спутниками, меня спросили: а нельзя ли адаптировать твою порнотехнологию для наших целей на спутники (автоматическое распознавание заданных объектов на поверхности)? Решили попробовать. Получилось. Главное требование у всех — скорость. Большого ума от распознавалки не требовали, но она должна была работать так быстро, как это только возможно. Вот три этапа эволюции одной идеи. Кстати, сейчас на эту мою технологию начал поглядывать Google. Что такого принципиально нового ты смог предложить, если этим занимаются тысячи человек по всему миру? Цвет кожи (особенно детской) имеет достаточно специфичный оттенок, который предсказуемо «корежится» при пережатии в разные цветовые пространства. Сочетание цветов половых органов также специфично. Но это мы пока говорим про то, что есть на порно. А вот то, чего на нем гарантированно нет, позволяет однозначно отсеять кучу другого контента. Обычно в качестве критерия для поиска с переменным успехом искали лишь первую часть условия. У меня же эффективность значительно увеличивается использованием второй «исключающей» составляющей. Но даже в первой составляющей у меня есть определенные ноу-хау.А вообще, основные алгоритмы были лицензированы у Кэннона и только допилены под мое видение задачи. К примеру, мой вклад — там распознается не только свет, но еще и постановка освещения. В дешевом порно она очень характерна. Например, повсеместное мигание вспышек. Кстати, в момент вспышки мы получаем истинный цвет, решая проблему баланса. Короче, это как бы не распознавание изображения в классическом понимании, а распознавание конкретного вида контента. Скорость получилась офигительная, так как выполняются тривиальные операции, которые еще и легко параллелятся. Число ложно-позитивных и ложно-негативных срабатываний получилось даже лучше, чем изначально требовал заказчик. Да, кстати, вирусы у меня распознаются примерно так же. Тот же самый принцип в точности. Ищем в вирусах нечто такое, что встречается в них, но гарантированно отсутствует в остальных программах. Как я понял, твой успех был отчасти в том, что все пытались найти общее универсальное решение и впоследствии увязали в нарастающей сложности. Ты же решил узкоспециализированную задачу, зато смог это сделать эффективно и быстро. Немного отвлекаясь от основной темы, здесь мы снова возвращаемся к любимому тобой спору вокруг назначения языков C и C++. Каждый конкретный язык определяет мышление, хотим мы того или нет. Так вот, постоянно сталкиваюсь с тем, что «плюсовики» тяготеют к решениям в общем виде, в то время как «сишники» решают задачу в частном виде, что в разы быстрее. Одну текущую задачу сначала показали «плюсовику», спросив, сколько займет ее решение. Он сказал: «Здесь нужно писать могучий движок. Короче говоря, это проект на полгода». Его коллега-«сишник» поинтересовался: «А зачем?» Ведь поставленная задача укладывается в сотню строк кода! Ответ был ошеломляющим:

Ну и что, мы так и будем по сотне строк кода писать для решения частных задач, каждый раз, как они возникают? Нетушки, задачи надо решать раз и навсегда!

По моему глубокому личному убеждению, проблемы нужно решать по мере их возникновения. Писать программы на вырост с избыточным универсализмом нужно, лишь очень хорошо предварительно подумав, ибо это из серии «Почему сегодня не делают корабли, летающие к звездам?» Ответ прост: потому что корабль, построенный завтра, прибудет быстрее, а корабль, построенный послезавтра, еще быстрее. И их обоих обгонит корабль, построенный лет через пятьдесят, но когда он вернется обратно, то обнаружит, что у человечества совсем-совсем другие проблемы. Ты упомянул, что этот твой «принцип распознавания» впоследствии применялся к разным темам, но впервые ты использовал его в анализе «малвари» и даже оформил патент на его основе. Можешь рассказать подробнее? Как-то в бытность свою работал я удаленно. Ну, как работал, скорее анализировал огромное количество сплоитов. Причем делал все медленно, потому что навыка не было. Порядочно устав, я написал программу, которая автоматически сгенерировала другую программу. И вот эта другая программа анализировала сплоиты со скоростью один гигабайт в секунду. Запустил ее и улетел в Берген на встречу со знакомой немкой. И вот пока я гулял по сказочно красивой Норвегии, наслаждаясь золотой осенью и местным колоритом старинных замков и фортификационных сооружений, мой компьютер все это время стоял включенным «под нагрузкой». И когда дней через десять вернулся, программа уже завершала анализ, но у меня хватило ума никому об этом не говорить и до конца года получать «убитых енотов» автоматом. А за пунктуальность и следование намеченным планам мне еще бонусы платили на работе. В конце концов, меня заела совесть, и я выслал результаты машинного анализа одним и очень большим куском. В результате эта фирма надолго встала, и теперь мне же пришлось писать еще одну программу, чтобы автоматизировать труд тех, кто разгребал эти результаты, писал к ним тесты и заносил в базу. Собственно, так я и получил свой первый (и пока единственный) софт верный патент.Не удивлен, что без женщин не обошлось. Как я понимаю, на основе развития этого принципа впоследствии ты написал модуль, благодаря которому был признан лучшим сотрудником года в McAfee. Что он делал? Если помнишь, была такая нашумевшая китайская атака против Google — Operation Aurora1. Вот за нее и наградили. Фокус в том, что я ее чистой эвристикой распознал, модулем, который собрал еще за полгода до самой атаки. Конечно, мне просто повезло, как везет немногим... Но в итоге оказалось, что передо мной в США открылись такие перспективы, о которых я вообще мечтать не мог. Даже в принципе. В самом смелом сне.

Про ФБР и тренды ИБ

Не знаю ничего про твою текущую работу, но вот что интересно. Я лично не знаком с рядовыми айтишниками, которые стали долларовыми миллионерами. Насколько я в теме, ты — один из них. Дает ли это какие-то особые ощущения? Теперь долларовых миллионеров столько, что их никто не считает. Даже миллиардеров и то не считают, ибо слишком много. Долларовых миллионеров только среди моих очень близких друзей я могу перечислить несколько, и никакой элитарности в них не наблюдается. До сих пор ношу майку, купленную больше пяти лет назад. Всю в дырках и заплатах. В тире надо мной смеются. Спрашивают: «Это дырки от пуль?» Так что миллион — это очень мало на самом деле. Это верхне-средний класс. С другой стороны, одни интересные люди предлагали мне два «лимона». Я спросил у них, что можно сегодня купить на эти деньги. Интересные люди неправильно меня поняли и, не торгуясь, предложили сразу двадцать, но были посланы, потому что на текущие расходы я и сам заработаю, а большего мне не надо. 1

Давай еще немного погутарим про интересных людей, так и шарящихся вокруг тебя. Слышал из новостей, что в США у тебя было неприятное приключение — однажды к тебе с обыском нагрянуло ФБР... Очевидно, меня подозревали и что-то искали, а потому изъяли все, что могли. Никаких обвинений не предъявляли. Так что по существу мне рассказать нечего. Чем все закончилось? История имела приятное продолжение и закончилась внесудебным урегулированием с выплатой мне отступных в размере зарплаты сферического программиста из РФ за несколько лет, так что никакие это не потери, а сплошные приобретения. Выводы? Все, что не убивает, делает нас сильнее. Хотя кастрированный кот с этим может быть не согласен. Подобные бодрящие дух инциденты регулярно случаются с известными специалистами по ИБ и «полевыми хакерами». Пройдя через это лично, что посоветуешь своим коллегам? С тех пор, когда внезапно ФБР постучалось в дверь и изъяло все железо, флешки и все-все-все, у меня появился ценный жизненный опыт. Теперь время от времени самые важные для меня данные я сбрасываю на «винт» и кладу в банковскую ячейку. Это — мои личные файлы (не для чужих глаз). А все, что не представляет секрета, я активно раздаю народу. В тот раз мне пришлось собирать себя по кусочкам, качая файлы взад у тех, кому я их давал ранее. Месяца за три я собрал себя процентов на девяносто, кое-что оказалось утеряно безвозвратно, ну и фиг с ним. Переходя к твоей специализации — реверсинг любого кода, анализ вирусов и разной малвари. Расскажи про их эволюцию — вначале были стелз-вирусы, затем пришла эпоха полиморфов, а что было потом? А потом «замысловатые слова» посыпались как из рога изобилия. Advanced persistent threat (или сокращенно APT) обычно включает в себя сокрытие факта своего присутствия в системе (он же Stealth, он же Root-Kit), активное/пассивное противодействие обнаружению и удалению и т. п.Полиморфизм — это частный случай метапрограммирования. В computer science под метапрограммированием обычно подразумевают программу, результатом работы которой является другая программа. Пассивные детекторы сканируют файлы в поисках уникальных последовательностей символов. Активные (их принято называть «проактивные») детекторы работают по принципу поведенческого анализа. Грубо говоря, последовательность вызова API-функций — это метрика. Поведенческий анализ распознает определенные сценарии (например, инъекцию кода в доверенный процесс) безотносительно того, как именно они реализованы, и последние несколько лет идут кровопролитные бои за видоизменение поведенческих сценариев до состояния, когда они становятся практически неотличимы от легитимных сценариев популярных программ. Изменились и угрозы. Если во времена MS-DOS вирусы были «проблемой грязных рук» и не затрагивали тех, кто пользовался лицензионным программным обеспечением, то сейчас основная масса вредоносных программ распространяется через документы, эксплуатируя ошибки проектирования. Дороже всего приходится расплачиваться за ошибки в сетевом стеке — чтобы подхватить заразу, достаточно всего лишь интернет-подключения, даже браузер запускать не обязательно, хотя ошибки в сетевом стеке — большая редкость и гораздо чаще хакеры проникают через святую троицу — pdf, jar, swf. По умолчанию браузер загружает их автоматически, и если не установлены обновления — ждите проблем. Вообще, полиморфическим технологиям сейчас переломили хребет? Отнюдь. Во времена MS-DOS вирусы включали в себя генератор кода, доступный для анализа. Сейчас же код генерируется удаленно на хакерском сервере и отдается по http-запросу. Или... не отдается. Сервер проверяет IP-источник запроса, и в случае каких-либо подозрений последующие ответы возвращают 404 или чистую страницу. К тому же, хакеры обязательно проверяют IP на принадлежность к антивирусным компаниям и разным правительственным лабораториям. Да и сам генератор в любом случае остается недоступен. В самом лучшем случае вы можете его купить на черном рынке за наличные деньги, но чаще всего такая возможность недоступна, а потому в распоряжении аналитиков есть лишь отдельные экземпляры работы

генератора, в которых необходимо выделить неизменную часть, что существенно затрудняет разработку детектора. К тому же централизованный генератор хакеры могут обновлять так часто, как им вздумается. Прошли времена, когда вирусы работали только под MS-DOS и только под Intel x86. Сейчас необходимо распознавать не только машинный код x86, ARM, PowerPC, не только байт-код (Java, Flash), но и бесчисленное множество скриптовых языков (JavaScript, VBScript, Python). Например, на Маках Python идет предустановленным, что открывает для хакеров новые перспективы. Кстати, Python замечательно распространяется не только в виде скриптов, но и байт-кода. На фоне всего сказанного, что можно сказать про перспективы традиционного автоматического лечения вирусов? Автоматическое лечение (удаление троянцев) неуклонно сдает свои позиции, и зачастую лечение сводится к переустановке системы. Кроме того, лечение возможно только на end-points. Типичный IPS в лучшем случае предотвращает атаку, но не в состоянии обезвредить уже атакованные системы, поскольку IPS находится между атакуемым и атакующим. Вообще сейчас перед хакером стоит другой приоритет — любой ценой передать управление на свой код, например, расположенный в файле документа и не рассчитанный на исполнение. Эта новая доминанта содействовала развитию веера новых технологий от NOP Slides до Heap-Spay и Return oriented programming (оно же ROP). Крис, как человек изнутри этой темы, поясни, как антивирусная индустрия вообще справляется с таким огромным потоком новых зловредов? Сколько «дохлых тушек», положенных реверсеру на стол, он способен физически обработать в сутки? Этим занимаются специально обученные люди и машины, причем машины все более активно вытесняют людей. Все, что можно автоматизировать, — давно автоматизировано. Сейчас этих тушек столько, что никаких человеческих ресурсов на них не хватит. В качестве примера устройства этого процесса могу посоветовать интересную презентацию, ищите ее по ключевым словам: Adobe Malware Classifier.Вообще, дизассемблировать каждую тушку зловреда — это все равно, что хватать вражеских солдат по одному и допрашивать. Оно, конечно, полезно. Добыть языка. Одного. А лучше двух. Но что они могут рассказать? Стратегические планы верховного командования им все равно не известны. Сегодня зловреды уже не сами по себе. Они — пушечное мясо на поле кибер-войн, сегодня от них зависит чуть больше, чем ничего. Сейчас важно суметь понять устройство хакерской экосистемы — круговорота машинного кода и наличных денег. Каковы сейчас самые общие тренды ИБ в рамках этого круговорота? Основные тренды уже сидят, причем сидеть им еще долго — лет двадцать, а то и больше. На помощь антивирусам пришли FBI, CIA, US Secret Service и другие страшные слова. Поэтому сейчас маржа везде падает, а посадки растут. Самый последний писк моды — в прицел атаки попали встраиваемые устройства. В первую очередь это, конечно, роутеры. Зловредный код в роутере очень сложно обнаружить. А тем временем хакеры наши способ проникнуть внутрь камер наблюдения, подключенных к Ethernet, например используя процессорные мощности для майнинга биткоинов. На очереди умная бытовая техника (например, холодильники), а также атаки на бортовой компьютер автомобиля — это фантастика новой реальности. Куда растет современный рынок коммерческих решений в области ИБ? Насколько я знаю, это одно из самых быстрорастущих и популярных направлений вообще в ИТ? У меня лет двадцать опыта работы в индустрии безопасности, в том числе и на позиции архитектора. Я хорошо знаю рынок и видел множество примеров успешных начинаний, впрочем, неуспешных примеров было еще больше. Рынок систем безопасности действительно очень быстро растет. И растет он потому, что совсем недавно вирусами занимались школьники, «подонки» и прочие «креативные» личности. Затем ПК подключили к банкам, и тут оказалось, что на троянах можно делать деньги.

Рекорд в этом деле — двадцать лет отсидки за шесть доказанных нулей. Накинем еще один нуль за счет недоказанных, но... когда к Интернету подключили госучреждения, когда спецслужбы полностью компьютеризировались, внезапно выяснилось, что хакеры — это не просто «оболтусы с Дерибасовской», а угроза национальной безопасности. Уже несколько лет, как действия в кибер-пространстве США могут официально расцениваться как объявление войны и быть достаточным основанием для введения реальных войск на территорию противника. Поэтому, как только государство появилось на рынке ИБ, домашние пользователи перестали быть в центре внимания просто потому, что у них нет пары десятков миллионов, с которыми они готовы расстаться (и еще столько же заплатить за поддержку). Причем государства всех стран крайне смутно понимают, что им нужно покупать для своей безопасности, посему покупают они много лишнего. В итоге все крупные игроки, ну то есть абсолютно все, купили огромное количество решений безопасности, и на гребне следующей волны пришли системные интеграторы, пытающиеся собрать эту груду разрозненного говна воедино. Но и этот гребень уже пошел на спад, а на горизонте маячит новый третий. В практическом плане это означает, что скоро предстоят сделки на миллионы и миллиарды долларов, но «повезет» здесь только тем, кто к этому уже готов и у кого уже есть готовые решения. Напомню, что в свое время антивирусы для ПК дали рождение многим нынешним компаниям-миллиардерам, возникшим буквально на пустом месте без каких-либо инвестиций. Но это было относительно давно, в девяностых. Впрочем, суть осталась неизменной — большие деньги зарабатывает тот, кто первым предлагает «спасительную» услугу, когда еще никто толком не осознал своих потребностей и необходимостей. Развивая эту тему, можно ли поговорить о третьем гребне волны? Конечно, тебе это не интересно, но среди наших читателей-айтишников многие неравнодушны к деньгам. Можно ли привести примеры пока не заполненных ниш, чтобы молодые и амбициозные специалисты по ИБ с твоей помощью могли бы разглядеть, где же лежит этот новый и такой вожделенный Клондайк?Чего только не ломают хакеры сегодня! И если на POS-терминале антивирус еще можно представить (хотя с большим трудом), то, например, на surveillance camera антивирус тупо не встанет потому, что это конструктивно не предусмотрено. Хотя де-факто там, скорее всего, ARM и портированная версия Linux. Такая камера вещает потоковое видео, и там хакеры уже нашли дыры, позволяющие заливать шелл-коды со всеми вытекающими отсюда последствиями. Вот мой личный пример из этой оперы. Недавно я прикупил пару Ethernet-камер для дома. С камерами идут аккаунты на сервере их производителя с персональным доменом третьего уровня — заходи себе через браузер, введи пароль и смотри удаленно, что там дома у тебя происходит. Два сервомотора обеспечивают свободу наведения, а ИК-подсветка видит даже в темноте — все было бы хорошо, если бы не было так плохо. Жизнь показала, что эти камеры оказались дырявые, и в них уже поселился ботнет. Сетевым червям даже мозги напрягать не нужно: ваш домен третьего уровня (точка входа в контрольную панель камеры) — это, грубо говоря, число (в данном случае) очень короткое, а потому все камеры сканируются перебором влет и тут же автоматически взламываются. А вот обнаружить такую атаку — затруднительно. Ну, то есть не то, чтобы совсем затруднительно... Например, если в камере не включен протокол https, то шелл-коды ловятся сниффером, а если включен? Мне повезло, что в моем случае производитель сделал фейковый https (ну, практически фейковый — у моей камеры нет ресурсов для шифрования видео, потому по https она только пароль с логином передает, а все остальное — гонит через http). Поэтому мне пришлось после работы самолично поковырять такую камеру из-за ее заражения, и я обнаружил, что ботнет откликается на определенные http-запросы к камере. Детектор зараженности, быстро написанный мною на «питоне», укладывается меньше чем в сотню строк. Если накинуть еще пару сотен, то можно на Squid proxy через icap-фильтры давить попытки таких червей проникнуть в камеру, тупо заворачивая их «на юг». Другой личный пример. Видел в местном магазине микроволновку с Ethernet. По сети она сама выкачивает из Интернета время и режимы приготовления тех или иных блюд, используя сканер штрих-кода

с упаковки товара. От наших электронщиков слышал, что там при старте прошивка грузится в ПЗУ, распаковываясь в память, и что холодный рестарт, возможно, спасет домохозяек. Но что такое холодный рестарт для микроволновки, особенно в США? Если черви будут атаковать потоково, просто устанешь перезагружаться. Подводя итог — через несколько лет на рынке бытовой электроники будут миллиарды (!) подобных «умных» устройств, подключенных к Интернету, многие из которых — на самом деле не умные, а очень даже глупые (потому как дырявые и уязвимые). Особенно, если они подключены к ПК. Тогда тот, кто заразил ПК, может контролировать весь «умный» дом удаленно. Но известные мировые производители бытовой электроники разбираются в безопасности как «тузик в апельсинах» (смотрите два моих личных примера выше). И потому они будут вынуждены выкупать сторонние решения. Все это — огромный, только зарождающийся рынок. И он просто гигантский! Поверьте, что рынок ПК в сравнении с ним «нервно курит в сторонке». Сюда уже устремились первые и пока «совсем зеленые» поставщики решений ИБ. В первую очередь это стартапы, один из которых недавно приобрел очень известный бренд бытовой электроники за деньги, которые лично мне даже не снились. А в том стартапе работает всего несколько человек, и они, между нами говоря, ничего нового и не сделали (слегка пропатченная OpenBSD, чуть переделанная OpenJava, а также расширения для отражения атак типа use after free). Но денег уже заработали на всю жизнь. * * * В возрасте нескольких недель, когда врач по ошибке вколола инъекцию хлористого кальция, Крис перенес инсульт. Частично омертвели ткани мозга, что привело к легкому аутизму. Это не помешало ему стать признанным специалистом в области ИБ и одним из самых популярных компьютерных авторов в РФ, хотя путь к этому был тернист. Родное село в Краснодарском крае, где Касперски провел большую часть жизни, он определяет лаконично: «Интернет-выделенка десять мегабит канал».Многие отмечают, что Крис производит странное первое впечатление. Для примера попробуйте представить состояние консула США в Москве, к которому заявляется для получения рабочей визы простой краснодарский хлопчик, у которого нет ни высшего образования, ни подтвержденного опыта работы, то есть вообще ничего, кроме справки о законченном среднем образовании, но которого приглашала на работу ведущая американская ИТ-компания. «Да это …скам какой-то!» — выпалил офигевший консул, назначив служебную проверку всех представленных документов. Первое собеседование Криса в США также показательно — он отказался выполнять предложенное задание, найдя в нем ошибки и «нечеткую спецификацию». Так его собеседование превратилось в собеседование работодателя, окончившееся оффером на 300 тысяч долларов — первой официальной работой в жизни. Сегодня Мыщъх — обладатель редкой американской визы О1 (для людей с выдающимися способностями). Подобной визой могут похвастаться нобелевские лауреаты, академики, известные всем айтишники типа Линуса Торвальдса. Крис — обладатель титула «лучший сотрудник McAfee», о своей текущей работе говорить категорически отказывается, ссылаясь на потенциальные проблемы. Впрочем, к опасностям ему не привыкать. Мыщъх вспоминает, что когда еще жил в родном селе, местные бандиты предлагали ему подломать компьютерную систему учета завезенной свеклы на сахарном заводе. Отказаться было сложно, но приятель помог все разрулить без последствий — криминал убедили, что и бабок поднять не получится, и спалятся при этом все быстро.

Собеседования В моем случае собеседования проходят обычно так. Когда я прихожу наниматься на работу, то сразу говорю, опережая вопросы: «Давайте я сам расскажу, что умею делать и какие конкретно проекты могу предложить, а вы выбирайте. Если вас ничего не заинтересует, пойду к другому. Если же вас заинтересовал, по крайней мере, один мой проект, то обсуждаем, какие ресурсы вы готовы под него выделить.

Дадите мне людей и сроки или возможность заниматься этим самостоятельно (но тогда и сроки увеличиваются в разы)?» Также интересуюсь, сколько у них «кастомеров», какой «фидбэк» и не придется ли писать в стол? Не могу отказать себе в удовольствии сыграть роль интервьюера. Какие у вас есть еще пожелания, мистер Касперски? Я уже записываю. Если мой новый манагер будет против того, чтобы я держал сексигрушки (ладно, назовем это произведениями искусства) на своем рабочем месте, то мы с ним не сработаемся, и один из нас должен будет покинуть компанию. Также если в коллективе много людей, неравнодушных к неграм и гомосексуалистам, то от них лучше держаться подальше. Тем более, если они еще и трусы. Давай про требование о секс-игрушках поподробнее, все остальное пока подождет. Прямо сейчас у меня на рабочем столе стоит стеклянный анальный плуг. И трава лежит рядом. Четыре мешочка. Кстати, настоящая. Раз положил ее на радиатор сетевого компьютера (с пассивным охлаждением), поскольку весь стол уже был заставлен нужными вещами, и она от сильного нагрева начала пахнуть. Сотрудники учуяли запах и... нет, отсыпать я им сам предложил. Они-то все это время думали, что это просто типа декорация. Ага, щаз. Крис, я тут в большом затруднении, форкнуть ли разговор по теме «стеклянного анального плуга» или по теме «мешочков с травой, лежащих на радиаторе». И это, поверь, чертовски сложный выбор! Давай начнем с первого. Прости мою детскую психику, но что это за хрень такая? Это стеклянный дилдо из чистого пурекса штучной работы. Не будем продолжать эту взрывоопасную тему. Главное, что твой менеджер не против... По второй теме — ты рассказывал, что ФБРовцам тоже предлагал отсыпать хорошей травы по доброте душевной. Я человек старомодный и больше по части крепкого кофе, но даже мнеинтересно, что есть такого натурального «для разгона мозга» на твоем радиаторе? Я вообще-то не специалист по вопросам «разгона мозга» (криво улыбается). Лично мне мозги по жизни не разгонять, а тормозить нужно. Посредством селективных ингибиторов обратного захвата, отпускаемых строго по рецепту. Что же касается вас: зайдите на Ютуб и наберите Making a Killing: The Untold Story of Psychotropic Drugging. А на Амазоне можно заказать Diagnostic and statistical manual of mental disorders. В последнем, пятом издании список психических расстройств сильно расширен, и количество ненормальных среди населения с 75 % возросло до 90 %. И если вы думаете, что вас это не касается, просто дождитесь выхода шестого издания справочника. Короче, был бы человек, а расстройство с прилагающимся препаратом найдется. 100 миллионов людей регулярно употребляют психотропы, отпускаемые по рецепту, то есть приблизительно каждый пятый американец (по другим данным — каждый третий). Как часто тема травы обсуждается на интервью с тобой? Травяная тема затрагивалась лишь в собеседовании с Google, потому что обе стороны относились к интервью как к покраске жухлой травы в зеленый цвет, и откровенно стебались. Потому что я не собирался менять работу, и моему собеседнику это было известно. В общем, это было убойное интервью на полчаса, в течение которого мне не задали ни одного технического вопроса. И лишь под конец гуглер сказал, что «только умный человек может позволить себе выглядеть дураком». Зачем участвовать в интервью, если ты заранее знаешь, что не будешь там работать? Друг, ты когда-нибудь заходил в магазин без конкретной цели, а просто, чтобы посмотреть? Тут то же самое. Я честно сказал товарищам гуглерам, что у меня есть работа и она мне нравится, но... никто ведь не застрахован от того, что меня, скажем, уволят или, образно выражаясь, поставят раком. Да и вообще, Мыщъх потрепаться любит, особенно о компьютерах, чего и другим рекомендует.

Сколько ты прошел интервью? Телефонных интервью у меня было столько, что к концу я уже даже не отрывался от своего хачинья бинарников, сидя возле компа за повседневными делами и прижимая трубку плечом к уху. Уж даже не помню, о чем мы там говорили. А потом как-то резко интервьюировать перестали, а сразу стали предлагать офферы. Вот эту фазу запомнил четко. Видимо, чисто спонтанно на подсознательном уровне у меня выработалась привычка снюхиваться с кадровичками, чтобы им все становилось ясно без всяких тупых вопросов, — просто большая практика и ничего больше. Хорошо, двигаясь дальше, предположим, ты получаешь оффер, что происходит после этого? Задаю вопрос манагеру: «А как насчет того, чтобы самому увидеть место предполагаемой жизни и работы?» Вот как происходило со мной во многих фирмах. Сначала пускают в офис и говорят ничего не делать. Ну, я то к одному сотруднику подсяду рядом, то к другому. Смотрю, что они делают, как программируют. Что-то спрашиваю, что-то предлагаю переписать. Так проходит несколько дней. Затем пиплы пишут свои впечатления манагерам. Последние выносят решение. После чего появляется кадровичка и называет такую цифру, которая очень далека от средней по рынку (в большую сторону). Но иногда меня это не возбуждает, ибо пиплы за ланчем только о политике и треплются, и меня уже тошнит от них, и мне совсем не улыбается дальше с ними работать. А бывает и наоборот — все просто клево, ну вот просто клево и все. Но... опенспейс и никакой приватности. Абыдно. Или хороший офис и коллектив, да и зарплата ничего, но сам город действует угнетающе (как на меня действует Пекин, например, откуда я поспешил быстро убраться). Слушай, для многих интервью — это как экзамен, ты же превращаешь все в балаган. Интервью — это и не экзамен, и не балаган. Вопросы в правильном собеседовании составляются так, чтобы понять, какую предметную область покрывает кандидат и какую не покрывает. Как бы и не предполагается услышать ответ на все. Например, меня раз очень усердно пытали по крипто (скорее всего потому, что зашел в компанию, специализирующуюся на «криптографик ресерч»), на что я честно сказал, что прочел пару популярных книжек, но не осилил. В ответ поступает оффер. «Ну как же так?» — от неожиданности офигел я. Объясняют — знаете, штат по крипто у нас укомплектован и расширять мы его не планируем. Даже если бы вы ответили на все крипто-вопросы, мы бы вас на эту тему все равно не взяли. «А на какую тему вы меня берете?» «А вы вот скрипты для IDA Pro писать умеете?» «Ну, да. Умею. Так это ж фигня». А вот и не фигня — отвечают категорично. Им это очень нужно, а никого так и не нашли. Как успешно пройти собеседование? Есть какой-то максимально общий совет для наших читателей? Для успеха на собеседовании достаточно просто представлять, как работает бюрократическая машина, и следовать тропами ее лабиринта, который на самом деле не лабиринт, а work flow. Начнем с того, что это вообще за идиотизм такой вы у меня спрашиваете — «как пройти собеседование»? Пройти только затем, чтобы оказаться первым кандидатом на увольнение? Давайте уж расширим вопрос до «как пройти собеседование, устроиться на работу и удержаться на ней (и не застрять на первой же ступеньке карьерной лестницы?)». «Устроили тут гестапо» — такой вывод можно сделать из вашей постановки вопроса. Типа собеседование — это смертельная схватка, которую нужно выиграть любой ценой. На самом деле все проще. На нормальном собеседовании смотрят ваши сильные и слабые стороны. И если (допустим) фирме нужен человек в отдел быстрого прототипирования, а вы тугодум, хоть и пишете программы, работающие с первого раза, то, очевидно, было бы безумством стремиться на данную позицию. Равно как и наоборот. А если вы сразу с порога заявляете, что вы очень крутой, то к вам и спрос будет соответствующий. А вот Мыщъх обычно скромно мямлит, что он только хочет попробовать чучелком или тушкой, и никто

не пытается его подловить. Серьезно. Я уже говорил и повторю еще раз из уважения к читателю — на многих работах, куда я собеседовался, все тестовые задания я провалил в том или ином виде. Практически наглухо. Но слив не зачли и сказали эйчару — не обращайте на это внимания, это у парня комплексы, это он считает, что он провалил собеседование, а мы (работодатели) считаем иначе. Тут ведь понимаете, в чем суть. Если в ответ на запрос ТЗ предоставить его образцовую реализацию, то вас могут из принципа и зачморить, придравшись чуть ли не к оформлению комментов. Заставь дурака богу молиться, он же себе и фаберже расшибет. А если вы сразу скажете — у меня ни фига не получилось, но кое-какие мыслишки все-таки возникли и я вот тут их набросал в таком скомканном виде. Так как все равно это провал, я сильно не старался, но вот посмотрите, тут есть пара интересных моментов. И вот уже в этих моментах максимально раскрыть свою самую сильную сторону, зажечь там напалмом так, чтоб аж самого перло. Клянусь своим хвостом, это работает. Утверждаю как матерый грызун, ибо в период с 2008 по 2010 год я собеседовался в дюжине стран и контор как по телефону, так и очно — это всегда срабатывало. Первое впечатление было всегда не в мою пользу (и я смирился с этим), ну уж потом на выходе я и сам не знал, как сделать так, чтоб они все отстали. Ибо их (офферов) много, а я — один. Поэтому рекомендую постоянно тестировать свои способности и навыки, чтобы находить в себе свои личные сильные стороны (то, что вы делаете лучше всего, а в идеале лучше остальных) и развивать их, целенаправленно прокачивая. Не хвататься за первое попавшееся предложение, а мыслить стратегически, не сиюминутным рублем... вот я (ну о ком мне еще говорить, как не о себе?) на протяжении десятков лет, сидя в своей деревне, нес существенные финансовые потери. Ну, пусть не десятков. Но лет пятнадцать — точно. Зато теперь прицениваюсь к самолетам (реактивным) и смотрю, сколько стоит аренда места в ангаре. На дом еще не скопил, но квартиру могу купить в любом штате свободно, только не хочу терять мобильность. До сих пор воспринимаю зарплату как мелкие карманные деньги, работая на далеко не самой оплачиваемой работе, но зато на своем месте, где я всему активно учусь и развиваюсь. Но у меня свой собственный расчет. Он — дальновидный.Подводя итог: основная стратегия, о которой я тут втираю, — это не тянуть свои скилзы под абстрактные требования, а, наоборот, развивать в себе свои лучшие качества. «Не стоит прогибаться под изменчивый мир — пусть лучше он прогнется под нас». Сначала стоит достоверно выяснить, что у вас получается лучше всего (в идеале лучше, чем у большинства), а затем — интенсивно копать в этом направлении. Если говорить предельно кратко, чем отличается типичное американское собеседование от российского? В России на собеседованиях часто пытаются раздавить, любой ценой показать, что ты ничего не понимаешь, — чтобы снизить зарплату. Людей там не ценят так, как деньги. Здесь, в США, чаще всего наоборот: если видят, что ты стоящий специалист, в тебя вцепляются мертвецкой хваткой и больше не отпускают, предлагая лучшие условия на рынке и идя во всем навстречу. Что же касается наболевшего — это общая специфика РФ, — там мало продуктовых компаний и еще меньше компаний, в которых постоянно появляются линейки принципиально новых продуктов (принципиально новых не технологически, а написанных «с нуля» без «легаси»). Поэтому в РФ разгребание «застоялых говен» входит в job description по умолчанию.

Образование и карьера

Невольно выходим на тему образования, которая всегда актуальна для любого айтишника. Для начала — есть ли у тебя высшее образование в области ИТ? Институтов я не кончал. Я сделал свой выбор и бросил вуз сразу после поступления. До сих пор не знаю, что я упустил и как сложилась бы моя жизнь, поступи я иначе. История не знает сослагательного наклонения. Сейчас с этим проще — самообразование становится очевидным трендом. Диплом — ничто, знания — все. Откуда сегодня можно черпать качественную информацию?

К примеру, на YouTube можно найти множество видеозаписей лекций по computer science от различных лекторов из самых различных мировых вузов. По части информатики с большим отрывом лидирует арабский мир, причем, что показательно, лекции почти всегда на английском. За ними следуют США (с большим отрывом от остальных). При этом легко видеть, что не все лекторы одинаковы: одни объясняют вещи глубоко и понятно, другие же — ущербно и загадочно: у таких можно только вызубрить, сдать и забыть, поскольку пользоваться этим все равно не получится. Отмечу, что кроме знаний институт дает еще и связи, а связи решают все. Потому что после вузов народ разбегается кто куда, а разбежавшись, тянет к себе своих. Впрочем, это сильно зависит от конкретного вуза и страны. В наше время также доступно огромное количество книг... Хороших книг и раньше было немного, и даже сегодня их чуть меньше, чем совсем ничего, а классика так и остается классикой. Например, в семидесятых была одна «Книга Дракона», а сейчас доступны десятки качественных вариаций на тему, но в них от 70 % до 90 % — это пересечения и повторения, а потому первую книгу читаем вдумчиво, остальные бегло пролистываем в поисках различий. Опять же, давай поможем новому поколению сделать первый шаг в эту самую классику. Взять, например, известную книгу Кнута — не все способны понимать изложение алгоритмов, описанных в ней, хотя, знаю, многие усердно штурмовали их. Конкретный пример: Heap sort — несложный, в общем-то, алгоритм, который можно в пять минут объяснить на пальцах, но я столкнулся с тем, что некоторые коллеги не понимают его в наукообразном изложении Кнута. Как правильно грызть гранит науки? — вопрос на миллион для профессионального грызуна Мыщъха. Нужно заказывать похожие или аналогичные книги с Амазона, где их очень много. К примеру, сейчас я углубился в теорию CS и постоянно покупаю кучу разных книг. Большинство из них давно не переиздавались, но можно купить б/у. Среди них попадаются очень и очень хорошие. Вас какие алгоритмы вообще интересуют? Алгоритмов много и все из разных предметных областей, но книг, их описывающих, — еще больше. Взять, например, упомянутого Кнута. Да, у него изложение своеобразное. Но статьи, на которые он ссылается в своей книге, зачастую описывают эти же алгоритмы намного понятнее и доступнее. Многие из этих статей опубликованы в журналах, которых сейчас уже не достать, но сборники таких статей часто доступны в виде отдельных книг. Например, вот: Computer Algorithms: String Pattern Matching Strategies (ISBN-10: 0818654627). В этой книге один и тот же алгоритм последовательно описывается разными авторами и по-разному, что существенно облегчает понимание новичку. Насколько я могу судить, молодое поколение не очень-то много читает, судя по всему, потерявшись в этом информационном изобилии. Согласен. Но сейчас, по крайней мере, есть документация. Есть SDK и куча примеров. А вот в свое время, чтобы заставить CD-ROM проигрывать диски, мне пришлось дизассемблировать пару программплееров, реконструируя протокол, причем так приходилось делать не только мне одному. Информацию собирали буквально по крупицам. Ассемблер x86 я изучал в досовском debug.com путем анализа воздействия команды из реальной программы на флаги, память и регистры процессора. Но у моих предшественников и этого не было. Пионеры информатики не могли почерпнуть знания в книгах, поскольку эти книги им еще предстояло написать. По сути, с тех пор ничего не изменилось, просто линия фронта сместилась. Да, сейчас можно набрать в Гугл вопрос: как развернуть список на Java/.NET/C и получить готовый код для «копи-пасты». Зачастую, даже несильно кривой и рабочий. Но если спросить Гугл, «как написать Гугл», то ничего полезного он все равно не скажет, так как непрерывно совершенствуется, а над проблемой поиска бьются лучшие умы человечества. Лет через надцать об этом можно будет прочитать так же свободно, как сейчас мы читаем принципы построения компиляторов в «Книге Дракона», в результате чего создается огромное множество новых языков и технологий, которые не только создаются, но и выживают в конкурентной борьбе.

Кстати, давайте побухтим о молодежи. В чем отличие молодежи от «олдскул», как ты видишь? Если бы во многих вопросах молодежь не клала меня на лопатки, я бы бухтел. А так у нас просто разделение труда и совершенно разные подходы к решению задач. Я по старой привычке сначала включаю мозги, затем внезапно вспоминаю, что Гугл рулит. И минут через полчаса рожаю ответ. В это время молодые коллеги через свои фейсбуки и твиттеры быстро-быстро находят того, кто знает ответ, и уже через три минуты уходят пить кофе. Да, у них другой стиль. Они более социальные. Они не привыкли по умолчанию полагаться лишь на самих себя, потому что у них онлайн 24/7 и куча друзей в контактах. Почему сразу НЕТ, если ДА? Вот тут фильм вышел на экраны (к моменту публикации интервью уже зашел) Edge of tomorrow. Фильм — фигня, но там инопланетяне только на первый взгляд индивидуальные особи, а на самом деле это единый организм со своим мозгом и нервной системой. Вот таким организмом и стало современное поколение. Это же МЕГА-МОЗГ планетарных масштабов, круче, чем Солярис. Возвращаясь к началу: нас читает множество молодых и начинающих айтишников, которые делают свои первые шаги в ИТ в направлении к упомянутому тобой мега-мозгу. Какие бы общие советы ты им дал? Что необходимо для взлета карьеры в ИТ? А давайте вы пойдете по грибы, а я буду давать советы, куда конкретно вам ходить, основываясь на собственном опыте? Ничего, что мы разнесены в пространстве и времени и что моей тропой ходить бессмысленно — именно потому, что я ею уже ходил и собрал все грибы? Это, конечно, абстрактный пример, но его легко превратить в конкретный. Когда компьютеры были большими, а вирусы простыми, я только-только начинал интересоваться этой темой. Вирусы росли, хакерские технологии усложнялись, но ведь и я не стоял на месте. К тому же хакеры двигались поступательно, из пункта А в пункт Б. Шаг за шагом. Сейчас же зловреды усложнились настолько, что человеку с улицы очень трудно войти в эту область, и со своими 15–20 годами практического опыта я получаю огромное преимущество перед молодым поколением. Поэтому если изначально выбрать одно из молодых направлений ИТ-индустрии, то лет через пять можно начинать получать конкурентное преимущество. Конечно, при условии, что это направление окажется востребованным. Что же касается успеха в карьере — для взлета необходимо оказаться в нужном месте в нужное время. Ни знания, ни способности сами по себе этого не обеспечивают. Выражение: если ты такой умный, то почему не богатый — слышали? Оно хоть и едкое, но меткое. Умный не означает успешный, хотя успешный — это скорее умный, чем нет. У меня встречный вопрос насчет последнего сильного утверждения. Большинство из нас выросло в рамках западной культуры «сделай себя сам» или «талант всегда пробьет себе дорогу». Не все могут смириться с тем, что от нашего таланта, усидчивости и вложенных усилий зависит далеко не все, если не сказать, что, согласно тебе, — почти ничего… Скажите, а вы колодцы никогда не рыли? Вы не в курсе, что в одном месте можно копнуть — и вот она, вода. А ваш сосед день роет, два роет, три... а воды нет и не будет. Грунтовые воды они такие... Знакомый с Ростовской области как раз попал на такую подлянку. Весь отпуск убил на рытье колодца, а воды так и не оказалось. Но не пропадать же тяжкому труду? Решил сделать туалет типа сортир. Говорит, что и ему теперь хватит, и детям его, и внукам. Что касается успеха… Никакой значимости или успешности в жизни просто не существует. Есть субъективное ощущение (собственной) значимости. При этом всегда будет толпа людей, которые намного успешнее тебя, равно как толпа неудачников, которые все кругом пропили и теперь им даже не опохмелиться. А еще существует до фига людей, типа меня, которых ни своя, ни чужая значимость совсем не колышет, потому что им вообще на все пофиг. Поэтому конкретная метрика самореализации сильно зависит от вашей среды окружения и круга общения. В моем окружении очень много ярких, неординарных и успешных людей, на фоне которых мой «успех» практически незаметен.

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

* * * Крис, по его собственным словам, последовательно прошел три стадии. На всех трех — отдавая себя полностью, фанатично и без остатка. Сначала он тратил свое время, деньги и силы на ковыряние компьютеров, программ и писательство, ведя по большей части замкнутый деревенский образ жизни. Затем последовал взрывной каскад неуемных путешествий по всему миру — антитеза к умиротворенному бытию сельского чудака. В этот период огромное количество стран, в том числе экзотических, остались позади. Пик этого рандеву — громкое выступление на тему удаленного взлома процессора Intel в Малайзии в 2008 году. Запомнился комментарий какого-то изумленного «повесткой дня» англоязычного пользователя под страничкой-анонсом мероприятия, обращенный к организаторам: Удаленный взлом процессора Intel через Javascript? Эй, чуваки, что за траву вы там курите?

Несмотря на преследующую образ Криса тему грибов и травы (не без взаимности), эта гиперактивность дала серию важных профессиональных знакомств и контрактов по всему миру. Эмиграция в США была заключительной попыткой как следует встряхнуть скользящую по накатанным рельсам жизнь. Например, чего только стоит его скандальное участие в американском «Реалити ТВ» с собственной концепцией полигамной семьи, которая взорвала рейтинг программы, а одна из девушек-участниц из команды («шведской семьи») Криса смогла даже заработать на дом. Третий фазовый переход — недавно проснувшаяся безумная по силе страсть к оружию и армии. Я не буду перечислять оружие, накопленное Мыщъхом в своей рестонской норе (мирно соседствующее с ящиком патронов недалеко от камина), скажу лишь, что оно с лихвой перевешивает количество его компьютеров. Крис признает, что по натуре он скорее авантюрист, чем прилежный технарь, и постоянный поиск все новых острых ощущений и драйва выталкивает его все дальше за пределы поднадоевшей зоны комфорта «офисного ИТ». Я не мог обойти стороной эту важную «адреналиновую составляющую» окончательно американизировавшегося Мыщъха, поэтому в заключение интервью мы поговорили об оружии и будущем нашего героя.

Оружие и армия

Ну и как тебе Америка? Америка — это великолепная страна, в которой я чувствую себя как дома, и это первая страна, пробудившая во мне чувство патриотизма и чувство острой ностальгии. Ненадолго вернувшись в Россию, я заспешил обратно, потому что колбасило по всему мясокомбинату, колбасило в прямом смысле слова. Ощущал себя фаршем на физическом уровне. Ничего подобного до этого я никогда не испытывал. В Америке меня воспринимают своим. В Москве я был чужим. В Америке я могу рассчитывать на помощь чиновников всех уровней до сенатора штата включительно (и, кстати, сенатор мне помог, когда возникли проблемы с миграционным статусом). В Москве же сотрудники милиции настойчиво вымогали с меня взятки, требуя регистрацию, и их не убеждали даже штампы в паспорте, что в Москве я транзитом и только что пересек границу нескольких государств.

Как ты докатился до коллекционирования оружия? Во-первых, уже в США у меня была затяжная депрессия, вызванная тем, что я достиг всего, о чем раньше мог только мечтать. При этом исчезли все ориентиры и цели. Отчасти большие деньги меня испортили, в какой-то момент мир перевернулся, стало не к чему стремиться. Но все изменилось с приходом нового сильного увлечения — стрельба из стрелкового оружия. Меня сильно потянуло на «подвиги». Захотелось острых ощущений. Появилось желание переосмыслить жизнь. Тем более что она давно превратилась в вялотекущую реку, и даже миграция ничего радикально не изменила. Во-вторых, стрельба — это целая наука (вот вы можете сказать, какой вес пули выбрать для ствола 14 дюймов с твистом 1/7? А на сколько отклонится пуля, если вы выставили «zero» на дистанцию 100 ярдов для pnc 55, а решили стрелять hornady polymer tips v-max?). В-третьих, стрельба мало чем отличается от карате. Без шуток. Если взять книжки по стрельбе и по карате, то они взаимозаменяемы. И там, и там главное — это повторять одну и ту же операцию 100 500 раз, и там, и там главное — это держать баланс тела. И там, и там значительная часть посвящена тому, как очистить разум от мусора. Потому что если во время стрельбы думать о проблемах, то бобра убить можно, но только и всего. А слабо хотя бы с 50 ярдов выстрелить десять раз, получив одну дыру размером с пулю или лишь чуть-чуть больше? Просто офигенный восторг испытываешь, когда стреляешь второй раз, третий... а дыра всего одна. Может, эта депрессия — классический кризис среднего возраста? Мой средний возраст пришелся на глобальную перестройку с полным разрушением старого мира и воздвижением нового. Возможно, миграция и явилась следствием личного кризиса, потому что никаких объективных предпосылок к этому не было. Лежал на топчане в удрученном состоянии духа, слушал «Дорогу Паука» Агаты Кристи, потом вдруг вскочил, купил билет и через пару часов уже мчался навстречу судьбе в полной темноте. Никакой подготовки и предварительного обдумывания не было. А твоя еженедельная стрельба в тире — это такой американский способ отдыха или снятия стресса?После посещения тира болят все мышцы, а потому падаешь пластом как мешок с драпом и спишь беспробудным сном. Если это называется отдыхом, то я не знаю, что такое работа. Оружие у таких авантюристов, как ты, лежать без дела не будет. Расскажи пару историй из своей американской жизни, которых, знаю, у тебя вагон и маленькая тележка. Вот сегодня шел по нашему полуночному хутору (Рестону). На улице — ни души, только какой-то бездомный (с виду) чувак идет навстречу и громко говорит, что have done this shit before. Короче, фиг поймешь, что он хочет сказать. Чувак видит, что до меня не доходит, и потому деловито достает перочинный ножик размером с зубочистку и предлагает субсидировать метаболизм этилового спирта в его организме. Я человек не жадный и даже не принципиальный, но вместо кошелька в кармане неожиданно обнаруживается граната. Граната настоящая — не муляж и не стрейкбол. Причем купленная легально. В нашем штате для этого даже документы показывать не надо. Вообще-то, не совсем граната, но это реальный боеприпас, предназначенный для поражения живой силы противника. Это 20 квадратных сантиметров взрывчатки в металлическом корпусе с взрывателем ударного типа весом больше чем полкило. При взрыве создается давление в четыре тысячи атмосфер, что обеспечивает достаточный радиус поражения. Но поскольку это не совсем граната, то задержки нет. Достаю девайс из кармана и говорю, что сегодня, по всей видимости, мой день умирать, но одному умирать скучно, а тут бог мне в помощь чувака послал. Так что умрем оба — обнадеживаю его. Вижу ситуацию так: даже если чувак успеет меня пырнуть, то далеко ему не убежать. Дальше мой ход — и кишки по деревьям! Крысота! Ну, на счет кишок я, конечно, загнул, но осколки из него потом еще долго будут выколупывать, если в живых останется. Чувак говорит мне: «Мужик, не дури! Мир, дружба, негры!», а сам делает выпад, пытаясь отобрать гранату. Да пусть берет. Я достаю вторую. Все равно у меня с собой еще две, а дома так еще больше. Они же меньше десяти баксов стоят. И в нашем штате они вполне легальны. Если какие и есть ограничения, то мне они неведомы.

Короче, конфисковал у чувака его зубочистку, и он спешно ретировался, нервно оглядываясь через плечо. Так что граната — это сила. А взрыватель на будущее я решил переделать на свой манер. В нашем штате, опять же, это законно. * * * «Вы будете смеяться» (c), но я сейчас пытаюсь попасть в армию. Армия, правда, не российская, а штатовская, но неграждане в ней служить все-таки могут, и я могу быть полезным. Я даже в горячих точках готов служить, но меня пока не берут, хотя тестовое задание прошел со знаком отличия (одним из пунктов было: вот вам «ноут» противника, а точнее, все, что от него осталось после взрыва, — восстановите хоть что-то и как можно скорее). Только я пробивной и упрямый. И своего все равно добьюсь. Во! Может, тебе нужна сильная доза драйва и адреналина, что-то посильнее травы и грибов? На самом деле, в армии США может быть очень даже скучно, но здесь нет дедовщины и довольно комфортно. Техникам там даже в Ираках предоставляют отдельную комнату. Армия США — она не для всех, тем более гражданство сразу дают только тем, кто едет в горячую точку. А там иногда убивают. Мне-то лично пофиг, если меня убьют. Я просто проснусь и все. А вот вам, вероятно, не пофиг. Хотя некоторые считают, что я больной. Тут в тире давеча пожар был. Реально огонь полыхал во весь рост, а я говорю: «Дайте магазин дострелять, люди!» Пожар — не повод к отступлению. Ну, даже если там патроны где-то валяются живые, так они же без ствола не стреляют, а только пукают. Мне сказали, что я идиот, перекинули меня через плечо и вынесли из тира силой. А пока выносили, Мыщъх кричал им: «Пустите меня в армию! Я буду солдат в атаку поднимать под пулями и огнем противника!» Зачем с твоими успехами в ИТ вообще нужна армия? Какой главный мотив-то? Я стремлюсь в армию США, потому что испытываю сильный дискомфорт от того, что приехал в Америку на все готовое, а тем временем граждане США выиграли одну войну за свободу, затем покончили с рабством и сейчас воюют с внешними врагами. Простые американские парни отдают свои жизни, чтобы я мог спокойно спать и просыпаться. Так что США я должен, как земля колхозу, но в армию попасть не так-то легко. Ну, а что я забыл в армии, этого даже местный военный психиатр не понял на собеседовании. Где именно ты хочешь служить? На данный момент я эксперт по компьютерной безопасности, серьезно увлекшийся спортивной стрельбой. Поэтому я стремлюсь попасть в navy, но не в seal, в подразделение информационной разведки. С учетом возрастных ограничений в армию США я могу попасть лишь в исключительном случае, продемонстрировав исключительные способности, официально подтвержденные визой EB1. Так что кроме как специалиста по ИБ в армию США меня не пустят ни тушкой, ни чучелком.

Послесловие Крис Касперски, прямая речь: Знаю, что такими, как я, психиатры занимаются, а у психиатров клевые препараты. Психоделические. У меня рецепт на три месяца вперед. Но и без препаратов я за мир, дружбу и негров. Мыщъх вообще пацифист по природе. Откуда взялся образ бойца — загадка. В метафизическом смысле любой текст — это зеркало, отражающее сознание читателя, и воспринимать его можно и так, и эдак. Если в зеркале отражается боец, зеркало тут не виновато. С моей натурой, склонной к приключениям и авантюризму, своей смертью я не умру точно. Рано или поздно меня пристрелят. Тем более, что я напрашиваюсь в горячую точку, но чтобы меня туда взяли, необходимо хотя бы 15 раз отжаться в течение двух минут в полной экипировке. Не потому, что это minimum minimore, а потому, что передо мной поставили цель и хотят убедиться в серьезности моих намерений. Вот и весь смысл происходящего.

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

 

ГЛАВА 3. Андрей Чернов — сущности контроля

Андрей Чернов, системный программист и Unix-администратор, один из исторических патриархов Рунета, автор русской кодировки KOI8-R, активный участник многочисленных OpenSource-проектов, среди которых можно выделить FreeBSD, PGP, Apache. Также является переводчиком художественной и мистической прозы.

Интервью взято в начале 2014 года.

В преддверии окончательной победы ура-патриотов над национальным сегментом Интернета, накануне запрета на территории РФ сервисов-гигантов Facebook, Gmail, Skype, Github и других (в конкретные причины этого сейчас вдаваться нет смысла, за неизбежностью этого стоит так называемая концепция цифрового суверенитета), мы решили поговорить о происходящем с патриархом Рунета, с человекомлегендой, стоявшим у истоков создания русскоязычного сегмента сети Интернет, который в далеком 1991 году, работая в легендарной компании «ДЕМОС», непосредственно участвовал в запуске и наладке первого интернет-канала с внешним для нас западным миром. Андрей Чернов (@ache) — автор русской кодировки KOI8-R (RFC1489), которая стала первой русской стандартизированной кодировкой в Интернете, знаменитый участник проекта FreeBSD (кстати, первый русский участник FreeBSD Core Team), соразработчик многих известных программных пакетов, например SSH, PGP, Taylor UUCP, ZIP/UNZIP, Tin и т. д. Но все же Андрей — не просто один из исторических патриархов русской части Интернета или просто известный технический специалист по устройству интернет-сетей, в свободное от работы время ловящий

криминальных хакеров (например, известный эпизод с поимкой российского хакера из СПбГУ). Такие представления о нашем герое были бы слишком однобоки. Сегодня это также писатель, мистик, переводчик литературы А. Кроули, философ, человек с активной гражданской позицией. В свое время его демонстративная публикация в Интернете скандального романа Владимира Сорокина «Голубое сало», эксклюзивные права на который принадлежали издательству Ad Marginum, закончилась самым настоящим судом для нашего героя. Но суд отказал издательству в удовлетворении иска. По мнению некоторых экспертов, именно в результате этого важного прецедента Рунет на несколько лет выпал из сферы действия законодательства об авторском праве. Именно с общечеловеческих и философских позиций мы и поговорили с ним о сегодняшнем Интернете, его тенденциях развития, ну и нашей с вами человеческой жизни вообще. В первой половине нашей интеллектуальной беседы мы попробовали нащупать истоки и природу тотального контроля не только над Интернетом, но и над всей нашей современной цивилизацией, чтобы проинтерпретировать двуликость и опасность нынешней повальной социализации. Во второй — коснемся роли Open Source и современных ИТ в жизни общества. Это полная правда, абсолютная и чистая, что называется, все идет через серверы, которые находятся в Штатах, все там контролируется. Вы должны просто из этого исходить, такая жизнь, так она выстроена американцами, они сделали это. Вы же знаете, все это возникло на первом этапе, на заре Интернета как спецпроект ЦРУ США. Так и развивается до сих пор. <...> Все равно изначально — это военная программа, специальная программа, поэтому так и сидит в центре вот эта часть спецслужб. Президент России Владимир Путин,  пресс-конференция от 24.04.2014.

Предлагаю сразу перейти к наиболее злободневной теме. Как вы относитесь к ужесточению законодательства в отношении Интернета?Важно не то, как я к этому отношусь, — я перестал удивляться чемулибо с момента принятия ФЗ «О внесении изменений в ФЗ «О защите детей от информации...» — а то, чего желает наше общество в целом. Куда оно стремится? Как именно уточняется общественный договор? Существует способ продемонстрировать радикальное общественное несогласие — это масштабные гражданские волнения. Инициативы РОИ, РАЭК и Пиратской партии на этом фоне — никого и ни к чему не обязывающая маниловщина. Если ничего подобного — даже одиночных самосожжений на городских площадях — не произошло, значит, общество согласно. Пусть оно отчасти недовольно, не сумев пока избавиться от старых привычек, но в целом согласно. Именно это позволяет двигаться вперед в обозначенном направлении. Вперед к патриотическому традиционному евразийскому обществу, представленному такими образцами для подражания, как Северная Корея, Китай и некоторые исламские государства (например, Иран). Люди устали от навязанных «свобод» для абстрактного индивидуума, люди хотят делегировать эти свободы компетентным органам, а сами — просто жить. Жить нормально, жить в стабильности под мудрой отеческой опекой государства или общины, а не в изматывающей неопределенности бесчеловечной конкурентной борьбы либерального рынка. Вы сказали, что общество по инерции недовольно происходящим в Интернете лишь потому, что до сих пор не избавилось от старых привычек. То есть свобода мнений и информационное разнообразие — это всего лишь поверхностная привычка? Задумайтесь на минуту, ведь есть страны, где за многое из того, к чему вы так привыкли в Интернете, можно легко угодить за решетку. Ошибка в том, что вы безответственно воспринимаете свою привычку или болезненное пристрастие как должное, не пытаясь сопоставить ее с ограничениями нравственного императива, проявляющимися в законодательстве таких стран. Но кто должен диктовать этот высший императив во благо общества? Например, недавно мы слышали о желании запрета публичных Wi-Fi в России — это мотивировали в том числе потенциальной

опасностью взрыва террористами российских АЭС посредством данного вида мобильной связи. Можно ли доверять компетенции отдельных людей при их единоличном формировании такого эталонного для государства (и всех его граждан) «набора привычек»? Сбывается мечта Маяковского о том, чтобы каждая кухарка могла управлять государством: теперь шахтер, оленевод, спортсмен, секретарша — все, как видим, избранники народа, и они как один поднимаются в Госдуме на борьбу за новый лучший мир без зла. Как проектная разминочная площадка для этого вполне подходит изначально натовская сеть Интернет. И пусть так называемый креативный класс причитает, что наши депутаты и чиновники не знают, как работает то, чем они хотят управлять, — им и не нужно знать. Каждый должен заниматься своим делом: знать за них будут ИТспециалисты и выполнять любые распоряжения беспрекословно. Нытье о невозможности технической реализации не поможет: не знаете, как ради блага всей страны сделать, что вам приказано, — вон из отрасли! Будем строить российский Интернет на своих, отечественных технологиях с чистого листа и выдавать разрешения пользоваться им только доверенным организациям, как в дружественной Северной Корее. Наверное, должны быть и какие-то положительные моменты столь жесткого модерирования естественного информационного обмена, в частности сети Интернет? Они есть, и их довольно много. Например, обычно замалчивают вклад ограничительных законодательных инициатив в развитие этой самой отрасли. А ведь введя процедуру блокирования по IP, мы способствуем скорейшему исчерпанию оставшегося адресного пространства уже устаревшего IPv4 и переходу на более современный и емкий IPv6. Когда-нибудь с божьей помощью и на деньги налогоплательщиков Россия построит свой DPI, ведь DPI значительно повышает производительность сети, отбрасывая все лишнее. Так она станет страной не хуже Китая с его общенациональными центрами фильтрации трафика размерами с небольшие города. Вокруг — развитие и прогресс, тот же Китай уже свои аппараты на Луну запускает, поэтому не нужно устраивать панику и искусственно нагнетать страсти, потакая отдельным индивидуумам, запутавшимся в сетях либеральной идеологии. Я считаю, это замечательно, что наши спецслужбы наконец взялись за освоение Интернета. Ехидные либералы предлагают им ловить экстремистов на улицах, а не в Интернетах, но почему, скажите на милость, не в Интернетах? Давайте наладим поимку экстремистов сначала в Интернетах, а потом и за улицы возьмемся, когда наберется опыт. По историческим меркам экстремизм — явление, можно сказать, новорожденное, никаких таких экстремистов раньше не было. Поэтому так важно с чего-то поскорее начать, а не раскачивать лодку воплями о некомпетентности спецслужб. Можно ли констатировать, что этот «вид прогресса» приведет к тому, что Сеть потеряет остатки анонимности и станет таким же общественным местом, как окружающая реальность? А никакой анонимности быть и не должно. Ведь что такое анонимность? Это либо скрываемые злые намерения, либо скрываемая беззащитность. Ни тому ни другому не место в справедливо устроенном обществе, и если мы начинаем создавать его с обустройства Интернета, то и в Интернете тоже. Игры в анонимность — это просто опасно. К примеру, если у вас есть анонимный Биткоин, то вы уже наркоман, педофил, террорист или их пособник, возможно, даже этого не подозревая. Поэтому квалифицированные специалисты из ЦБ РФ и Генпрокуратуры оперативно разобрались с этим вопросом для вашего же блага. Не будьте такими эгоистами — отказ от призрачной приватности поможет предотвратить какой-нибудь теракт, спасти сотни, а то и тысячи невинных жизней. Давайте начнем с Интернета, а потом и на людях будет стыдно появиться без беджика с паспортными данными и штрихкодом. Кстати, и без этого от компьютеров столько вреда, что без государственного регулирования уже трудно дышать, и в первую очередь страдают дети. Как мы знаем из новостей, однажды один мальчик играл в компьютерные игры два дня подряд и умер. А другой играл в детстве в компьютерные игры, а потом вырос и сел в тюрьму. А еще

один даже не подрастал — сразу пришел в московскую школу и убил учителя. Логично запретить игры-стрелялки, разве нет? А приятель того мальчика майнил Биткоин, у него сгорела видеокарта, за ней — компьютер и вся квартира, он спился и пошел по дорогам. Конечно, криптовалюту после такого сразу запретили. А одна девочка скачала торрент, посмотрела какое-то аниме, не выдержала, спрыгнула с крыши и тоже умерла. Разумеется, Роскомнадзор вместе с видными экспертами-востоковедами сразу установил, что хентай-аниме — это педофилия. А разгадка всем перечисленным случаям одна — безблагодатность. Один из основателей отечественной психологии Алексей Леонтьев говорил: «Избыток информации ведет к оскудению души». Поскорее бы все это ограничить и запретить, дабы не оскудела душа русская. Предвижу неизбежное сопротивление отдельных несознательных личностей попыткам «причесать общество» таким образом. Наверняка появится чисто техническое противостояние ограничениям свободы мнений, привнесению в Сеть тотальной идентификации всех и каждого. Жалкие попытки ренегатов использовать Tor, I2P или VPN будут пресекаться эвристической и статистической фильтрацией соединений, никакой дешифровки не потребуется. Готовность держать ответ перед обществом за каждое свое соединение — вот залог успеха. Так, постепенно, хорошее поведение в сети войдет в привычку на уровне рефлекса. Только представьте себе: вы идете на работу, а вокруг ни одного хмурого, раздраженного или злого лица — все приветливы и улыбаются. Это не фантастика, это улица традиционного общества, к которому мы скоро придем. Сперва нужно сделать такую «улицу» в Интернете, законодательно запретив любые негативные или агрессивные проявления, грубость и хамство. Хватит уже всей этой чернухи, льющейся с экранов мониторов под лозунгом «Это Интернет, детка». Да, четыре слова с их производными мы уже запретили, но это только начало, в русском языке еще полно обсценной лексики, предстоит сложная и долгая работа.Если подняться над этими российскими частностями-запретами и обобщить происходящее — идея жесткого контроля над обществом (информацией) становится доминантой XXI века? Век свободы и просвещения остался позади? Наши власти здесь далеко не единственный инструмент контроля (а также подавления и принуждения), контроль с течением прогресса по природе своей стремится стать всесторонним. К примеру, уже практически любой предоставляющий ресурс сервис в Интернете не жалует анонимов и принимает против них меры вроде блокирования анонимных прокси или Tor’a. В основе подобного подхода лежит презумпция виновности: обычному человеку незачем скрывать данные о себе, и если человек их скрывает, значит, задумал нечто гнусное. Его оправданием служит некая статистика, которая есть не что иное, как роспись в неумении на системном уровне эффективно бороться с вредоносными явлениями (такими, скажем, как спам). Так что в качестве единственной панацеи обществом дисциплинарного диспозитива настойчиво навязывается абсолютная прозрачность — человек «за стеклом», или Паноптикум, — подробнее смотрите в курсе лекций «Психиатрическая власть» Фуко, и Интернет здесь не исключение. В будущем эти тенденции будут только усугубляться. Итак, мрачный Паноптикум, с одной стороны, как конечный итог развития Интернета и цифрового общества, а с другой — формально-декларативная цель демократической идеологии: незыблемая святость частной жизни и прайвеси, о которых еще недавно вещали из всех доступных СМИ... Человек — существо социальное, также социальна его собственность или его жизнь. Даже если он ни с кем не общается, этот жест отчаянно социален. Так откуда же возникают якобы частная жизнь, прайвеси и собственность? Говоря о создаваемом Паноптикуме и его контроле, следует отметить преимущества мягкого контроля (тратящего силы на внушение, на утверждение в пространстве «за стеклом» иллюзии существования частной собственности/жизни как островков безопасности) над жестким, традиционным. Одно из них в том, что мягкий контроль

практически бесконфликтен и на этом фоне позволяет эффективнее осуществлять микроизъятия ресурсов. Если вернуться к Интернету, некто, например, может иметь твердую уверенность, что купил домен torrents.ru в собственность, но вдруг он в мановение ока его лишается (и даже не суть важно, есть ли тому законные основания или, как в приведенном примере, их нет). Вопреки популярному заблуждению, и Tor не обеспечивает прайвеси, если некто отслеживает оба конца канала коммуникации. На входном релее он увидит ваш IP-адрес, а на целевом сайте — расшифрованный трафик. Путем статистического анализа тайминга и количества запросов он сможет обнаружить соответствие между первым и вторым. С учетом рандомизации релеев для этого, конечно, нужны большие вычислительные мощности, но вряд ли это проблема для АНБ. Так на время рассеивается иллюзия. Вообще, фантом частной собственности и жизни, воспринятой как частная, способствует отчуждению даже собственного тела. Как писал Фромм, ...Кибеpнетический человек достигает такой степени отчуждения, что ощущает свое тело только как инструмент успеха. Его тело должно казаться молодым и здоровым, и он относится к нему с глубоким наpциссизмом, как к ценнейшей собственности на рынке личностей.

Какую роль исполняет в этом скрытом закабалении человека Интернет? Почему люди, особенно молодые, превращаются в настоящих зомби, буквально застревая там? На последовательных этапах развития Интернета разные его роли становились превалирующими, оттесняя остальные. Сперва он был средством коммуникации, потом на первый план выдвинулся обмен информацией, и завершающая фаза — дисциплинарно-воспитательное средство (в ряду школа-армия-тюрьма-психушка) — самое востребованное в современном цивилизованном обществе, что и объясняет его популярность. Что касается молодых людей, они несамостоятельны, зависимы, и особенно обожают, когда их воспитывают (социализируют), но только не их родители, или не взрослые люди вообще. Нечто похожее упоминает Эриксон в отношении одного индейского племени — малышей там насмешкой приучают не гадить под себя не родители, а их чуть более старшие товарищи. Есть ресурсы, объединяющие молодых людей, которые в точности соответствуют данной схеме, например lurkmore.ru — авангард в воспитании следующего поколения офисных креветок нового типа, теперь уже не нелепых и беззащитных, а вооруженных острыми зубами цинизма. Мне кажется, что настало время конкретизировать источник этого контроля и его предназначение... Правильно ли я понимаю, что глобальный контроль (Интернет с телевидением как его главные современные проводники) и «обязательная социализация» — это тесным образом взаимосвязанные звенья одной общей цепи. В связи с этим современный человек — это уже робот или еще не робот? Конкретизировать некий источник (подразумевая — единичный, как было бы в диспозитиве господства) в дисциплинарном диспозитиве уже невозможно. Контроль буквально равномерно разлит в воздухе, имея множество микроисточников вместо одного. Его носителями могут оказаться, например, люди, системы, вещи и некоторые другие фигуранты. Говорить о глобальной телеологии самого контроля было бы неверно, он узконаправленно ограничен своей целью контролировать. Правильней упомянуть причины инсталляции этого механизма — необходимость осуществлять изъятия в относительно новых условиях непомерно возросшего числа людей. Главное тут не контроль (любой механизм чему-то служит), главное — это власть как неотъемлемая и интегральная компонента любого человеческого социума. Социализация же способствует прозрачности, необходимой контролю. Все-таки это обширная тема, и несколькими фразами от нее не отделаешься. Я уже отсылал желающих к томику Фуко. Ежели кто совсем не в силах читать Фуко, может попробовать почитать беллетристику Берроуза, начало «Здесь был Ах Пуч», там есть немного про то же.

Сменив обычную оптику рассмотрения, мы можем обнаружить, что зависимость — это обслуживание. Так же как человек, зависимый от героина, занимается его обслуживанием, регулярно предоставляя ему себя в качестве ресурса для биологических и других процессов, так и человек, например, зависимый от MMORPG-игр, занимается обслуживанием этого виртуального мира, контролируется им. Зависимость здесь взята для наглядности как крайний, наиболее выраженный случай. Даже обычный средний человек регулярно понемножку использует (как он полагает) целый ряд техники, что оборачивается тем, что техника, пока понемножку, использует и контролирует его. Взяв срез такого контроля в некий момент времени, можно посчитать его несущественным, но если проследить весь тренд на протяжении столетий и продолжить его в будущее, картина предстает радикально иная. Я так понимаю, что природа этого всепоглощающего контроля не всегда материальна и осознана обычным человеком, в общем случае не связана с конкретной политической системой или устройством конкретного государства — он (контроль) по-настоящему тотален что при демократах, что при социалистах, что при феодализме? Да, за исключением небольшого уточнения: при феодализме был другой тип контроля, — политические системы по сравнению с контролем вторичны, особенно все современные. Есть некие неравномерности, зависящие от ступени так называемого развития общества, но они не принципиальны. Но все-таки объективно нарастающие вычислительные мощности и емкость накопленных знаний помогают ли современному человеку бороться с Судьбой? Скорее ровно наоборот — они помогают судьбе еще лучше, еще эффективнее бороться с человеком. Человек похож на могильщика, все быстрее копающего могилу самому себе. Вычислительная мощь — не мощь рационализирующая. Всякая рационализирующая мощь закончилась вместе с проектом модерна. Постмодерн отлично справился с разоблачением разума, показав, насколько тот неразумен, то есть контаминирован содержанием бессознательного — того, что пытался искоренить. Для иллюстрации можно упомянуть хотя бы трех, как их называют, «философов подозрения» — Маркса, Фрейда и Ницше. Незадолго до них, в общем-то, считалось, что главные процессы идут в области рассудка, «человек разумный» марширует от победы (скажем, над природой) к очередной победе, но «философы подозрения» заявили — мы недооценили иррефлексивной стороны человека, она не просто атавизм, а мощная сила, подчиняющая рассудок (по Марксу, это производственные отношения, по Ницше — воля к власти, по Фрейду — бессознательное). Если исходить из предложенной сильной неосознанности и «животности» человека, то человек подлинно свободен в своем выборе или его судьба предопределена внешними силами? Если рассматривать выбор человека, скажем, двинуть или нет пальцем, он представляется произвольным. Но если перенести рассмотрение вопроса выбора в уходящий в прошлое причинноследственный контекст, он будет гораздо более жестко детерминированным. Так что в основном это вопрос срезов рассмотрения, коих, кроме перечисленных (и тривиальных для наглядности), довольно много. Или же, переформулируя в системных терминах, вопрос разделения на общую и частную системы управления (почти по Бейтсону). Между разумом и предопределением нет противоречия. Оба они — всего лишь частные способы самоорганизации хаоса, одни из огромного множества его возможностей. Внутри этого узкого промежутка, где хаос покровительственно относится к присутствию порядка в себе, существует доступный человеку мир (а значит, и разум, и предопределение). Отсутствие свободы, а значит и возможности самореализации, делает жизнь большинства невыносимой. Защита от фрустрации в этой безвыходной ситуации — значительная бессознательность повседневного «овощного» существования. Я лично думаю, что боль

шинство нынешних людей описали бы свою жизнь скорее как яростную борьбу, нежели чем беззаботное приключение. Фантаст Артур Кларк предсказывал, что «сложность жизни» будет драматически нарастать с течением веков. Например, по его предсказанию «миллионы людей решат с помощью криогеники “эмигрировать” в будущее, надеясь, что там их ожидает беззаботная жизнь, полная материальных благ и социальной справедливости... С этой целью в Антарктике и под полярными районами на Луне в конце XXI века будут созданы обширные хранилища замороженных до лучшей поры тел — так называемые “гибернакулы”». А как видит будущее через 100 лет в самых общих чертах Андрей Чернов? По-моему, в той или иной форме бегство от жестокой реальности в идеальную виртуальность у человечества уже началось, что будет дальше? Современная жизнь упрощена до чрезвычайности. В этом вопросе не следует путать современный переизбыток информации со сложностью. Преподобный Максим в своей «Мистагогии» подчеркивал, что миссией человека, наряду с преодолением двойственностей, было привести предметы и весь космос к предлежащим им логосам. И если, как мы видим, люди не справились со своим заданием, эту функцию возьмут на себя уже сами предметы, предметы будут вести, заставлять идти людей. Как писал Арто, «Все то, что позволяет нам существовать, и видит, как плохо наше существование и как плохо мы храним человеческое начало в себе, покидает нас, но чтобы обрушиться на нас. <...> Это Естественный Бунт вещей, которыми мы плохо распорядились. И Революцию, которую мы не сумели совершить, Мир направит против нас». Маркс отмечал: «В прямом соответствии с ростом стоимости мира вещей растет обесценение человеческого мира».Вещам свойственно возрастать, а людям — умаляться. В конечном итоге вещи будут править миром, а человек если и превратится в робота, то лишь для того, чтобы своим остаточным ресурсом еще лучше их обслуживать. Принадлежат ли желания человеку или же человек им? Не напоминают ли они программы, активизирующиеся в подходящий момент? Что если человечество — всего лишь плодородная почва для взращивания неорганического мира вещей? Или скорее мира процессов кругооборота вещей (учитывая, что срок использования предметов постоянно снижается и они из магазина отправляются чуть ли не сразу на помойку)? Не могу дать ответа на ваши вопросы, но как минимум для меня очевидно, что разросшийся Интернет и бесконечный мир вещей захватывают сознание людей... Как результат вокруг наблюдается острый дефицит самоконтроля и человечности... все эти твиттеры и новостные агрегаторы, быстрые перекусы и СМС, бесконечные путешествия и развлечения, бешеный темп жизни в мегаполисах... Одним словом, это силой вывернутая наружу интроспекция, которая выжигает нашу низкочастотную, слишком медленную человеческую идентичность. Времени на внутреннюю жизнь, на переваривание завалов знаний и впечатлений остается все меньше, а «сырой и рафинированной» информации извне — все больше. На Западе этот исход самосознания вовне окрестили снэк-культурой. В чем корни такого глобального ускорения? Объем информации в Интернете удваивается сейчас каждые полтора года, число компонентов в микросхеме — каждые 18 месяцев (закон Мура). Существует также понятие narrow attention span (короткий отрезок внимания), когда современные люди не в силах не то что читать старую неспешную литературу или смотреть старые фильмы, но даже дослушать сложное предложение с придаточными до конца, им становится скучно («люди экрана», по Мартину).

Бодрийяр перефразировал постулат Маклюэна media is the message, сказав, что мессэдж превращается в массаж. Жизнь сводится к набору микростимулов-похлопываний, микрореакций на них и ожиданию следующих, более новых и приятных микростимулов. Такая плотность связана с необходимостью как можно быстрее распространять влияние контроля, который сегодня во всех областях переходит с макро- на микроуровень. Широко известен третий закон Артура Кларка: «Любая достаточно развитая технология неотличима от магии». XXI век станет веком высшей магии? Какую роль играют технологическая магия, все эти бесконечные гаджеты, плазменные экраны и стоядерные процессоры вокруг нас, в эволюции человечества? Кларк смотрел на мир сквозь розовые очки и слабо разбирался в магии, поэтому недоговаривает самого существенного: «Любая достаточно развитая технология неотличима от черной магии». Приносимый технологией долговременный вред обычно пропорционален ее начальным обещаниям, выступающим приманкой. Тут достаточно вспомнить пример из Гюго — «это убьет то», сказанное в отношении отпечатанной книги и собора (а затем и Фулканелли убедительно демонстрирует ущербность книги по сравнению с выразительными средствами скульптуры и архитектуры), критику телескопа и микроскопа у Блэйка, лекцию Дугина «Постпространство и черные чудеса» и т. д., и т. п. Я все-таки пытаюсь понять: сделают ли технологии людей лучше, хотя бы в чем-то, или наоборот — техногенный путь эволюции ведет в конечном счете к деградации? Вообще, современный человек чрезвычайно техноцентричен, это какая-то новая подмена религии (вера во всемогущество знаний и технологий)? Ответ зависит от позиции. С точки зрения антропоцентрического натурализма существует и полезно лишь непосредственно воспринимаемое органами чувств, без посредников в виде технологий. Все остальное относится к инфернальным областям. Под познанием подразумевается не аналитический, деструктивный по отношению к целостности процесс, а скорее некое единение с объектом, в чем-то похожее на эротический смысл слова «познать».Любая технология или техническое средство уменьшает человеческое в человеке (и саму жизнь), увеличивая влияние ничто. Уильям Блейк — характерный выразитель такого подхода в поэме «Мильтон» — описывал полюса и небеса, движущиеся вослед положению человека (то есть определяемые только им), добавляя: «Микроскоп не знает и не знает телескоп. Они изменяют рацио наблюдателя, но не проникают в сущность объектов». С точки зрения индивидуализма, который после отмены «гуманистического проекта» Просвещения ставит во главу угла индивидуальную потребность и личное могущество, технология есть не только средство господства (контроля, подавления, принуждения) в уже освоенных человеком областях, но и средство агрессивного завоевания новых. Про это слишком много написано, но нам тут интересно оправдание введения технологий выражением «мне так удобней». При пристальном взгляде «мне» превращается в «тому, как я устроен». Тут важно, что не субъект провоцирует технологичность, а закономерное разворачивание во времени особенностей устройства человека. В такой оптике человек обречен трудиться на строительстве некого альтернативного космоса, продолжая наивно полагать, что делает это без принуждения и все вертится вокруг его личности. Что-то безусловно становится в чем-то лучше таким образом, но не кто-то. Волюнтаристский отказ от технологий сегодня уже ничего не изменит — общество стало принципиально другим. Хотя те незначительные плюсы, которые мы получаем от технологий сейчас, всего лишь мизерная компенсация за то, что мы потеряли, нет смысла отказываться и от нее. Вера во всемогущество знаний и технологий — удел прошедшей эпохи модерна. Если раньше ученым удавалось представить свое мнение как эталонное, подавив остальные, то нынешняя либерализация наделила каждого своим мнением, и в результате отношение к знаниям и технологиям не избежало усиливающегося скепсиса, не доверяющего, к примеру, заявлениям о безопасности (генно-модифицированных культур, АЭС или мини-черных дыр в коллайдере). Однако не стоит

думать, что отсутствие такой веры помешает прогрессу, — технологии смогут бесконечно просачиваться из тех областей, о которых обыватель не догадывается или считает безопасными. Признавая этот тотальный контроль и идя от обратного, получается, что мечта человека, мера его человечности и его конечное предназначение — свобода? Мне видится, что это своего рода путь отшельника — уход от всех политических, идеологических, экономических, информационных и социальных рычагов давления куда-то в глухой сибирский лес, своего рода дауншифтинг или идейное монашество. Не совсем так. Свобода — это фикция, причем в самом прямом смысле. Если мы рассмотрим популярное разделение на «свобода от» и «свобода для», то заметим нечто общее для обоих вариантов, подразумевающее отрицание неких преград. А отрицание, в отличие от утверждения, фиктивно (кстати, человеческое бессознательное не может представить отрицание, поэтому при гипнозе стараются не использовать частицу «не»). Теперь обратим внимание на разницу между вариантами и заметим, что во втором из них («свобода для») есть некий конструктивный посыл, однако точнее он передается не фиктивной «свободой», а конкретными «деланием», «задачей», «заданием», «предназначением». Так в чем же суть проблемы? В том, что устройство человека (а мы помним, что человек это не данность, а задание) плохо совпадает с устройством мира, в котором он оказывается, и человек не может осуществить это свое задание. Не столь важно, подлинное ли это несовпадение или кажущееся, — раз оно воспринимается как существующее, этого достаточно для проблематизации. Разумеется, есть разного рода компромиссы с так называемой реальностью, прекрасно работает механизм вытеснения (то есть многие люди вообще этого не ощущают), некоторые спешат объявить проблему решенной и т. п., но все это имеет отношение уже не к онтологии, не к гносеологии, а к банальной психологии. Психология же есть своего рода ИТ-индустрия в отношении человека, а точнее — предельно механистического человека-робота, призванная набором технических трюков погасить неудобный напор бессознательного. Путь отшельника не есть решение, это лишь стремление создать среду, в которой остаются интерес, время и силы всматриваться в способы решения из древности. По сути, это вопрос дистанций и границ, поэтому совсем не обязательно уходить в сибирский лес, если удастся выстроить нужные дистанции и границы прямо на месте. Насколько я знаю, вы не работаете. Это ваш сознательный выбор или слепая воля судьбы? Понятие «работа» обладает неоднозначностью следующего рода: или это нечто, что умеешь делать, но, в общем-то, тебе не интересно или не очень нравится; или это область, куда можно инвестировать свой интерес, чтобы он, в результате, вернулся опять интересом. Работой в первом смысле занимаются рабы, поэтому весь дальнейший разговор пойдет только о работе во втором смысле. Так вот, работать или не работать — так вопрос для меня не стоит. Пока одна работа сменяла другую, я работал. Когда все они исчезли (по не зависящим от меня причинам), я работать перестал. Если будут интересные для меня предложения, снова стану работать (все предложения, которые пока были, недостаточно интересны). Я не считаю, что человек непременно должен работать (вся эта современная ориентированность на успех граничит с безумием), поэтому сам работу, в общем-то, не ищу, предпочитая, чтобы она меня искала, ведь мне и так хватает, чем себя занять. С первым вариантом все понятно, но что значит второе — «инвестировать в интерес»? Что двигает программистом, что заставляет его безвозмездно впрягаться в достаточно сложные проекты вроде разработки ядра FreeBSD? Самоутверждение, какие-то общечеловеческие мотивы или некая чисто программистская страсть «программировать ради программирования»? Тут нельзя ответить за всех, у каждого свои мотивы, поэтому могу сказать только за себя. Избалованный Юниксом на машинах СМ, я хотел такое же и на PC, тогда начинающих набирать популяр

ность. Поставив BSDI на PC, я обнаружил баг, исправил и послал разработчикам, на что получил от них ответ примерно такого содержания: «Откуда у вас в России наша система, ведь мы ее туда не поставляем?» Я на них плюнул и поставил себе 386BSD (предшественника FreeBSD). Послав bug-report уже в команду 386BSD, я встретил благосклонную поддержку и участие, и постепенно в это дело втянулся. Конечно, значительную роль сыграла молодость с ее избытком энергии. Продолжать заниматься проектом и дальше — не только привычка, но и способ потратить свободное время на реализацию перфекционизма. Программирование — это ремесло, профессия для ума и рук или искусство, исходящее из сердца? Иначе говоря, присутствует ли в программировании некая неуловимая иррациональность красоты или это просто повседневное холостое умствование, подобно другим формам человеческой деятельности, и в программисте нет ничего, скажем, от демиурга, которым он подчас себя мнит? «Программирование — наука, искусство или ремесло?» — вопрос этот постоянно поднимается, скорей всего, потому что такая постановка вопроса тупиковая и непродуктивная. Программирование — это прежде всего образ мышления. Как он преломляется далее — в науку, искусство, иррациональность или ремесло, — зависит от ситуации конкретного программиста. Что же касается демиурга, поскольку воплощенный мир обречен лишь комично подражать высшим существам, можно определенно сказать, что в каждом человеке, в том числе и в программисте, есть нечто от демиурга (например, образ и подобие). Меня интересует, с одной стороны, свобода, о которой мы много говорили, а с другой — некоммерческие программистские проекты, движимые глубинными человеческими идеалами. Вот, скажем, Open Source — это борьба с контролем? Современные социальные сети и шифрование — все это закабаляет или, наоборот, освобождает людей? Все, что воодушевляет людей, начинается как борьба с контролем. Технология Open Source так и начиналась, но теперь большой кусок, связанный с GPLv3, работает уже на контроль. Технология PGP так и начиналась (я, кстати, один из авторов, занимался локализацией), потом это разбудило повсеместную сильную криптографию, потом пошли сертификаты, что в конечном итоге тендирует к цифровому паспорту/счету личности. Социальные сети — почти идеальное воплощение Паноптикума, когда за каждым движением пользователя приставлены следить множество знакомых глаз. Даже обычная сеть WWW в этом смысле отслеживается гораздо меньше, всего лишь некими молчаливыми неизвестными посетителями. Кстати, в недавнем моем интервью Столлман высказывался о том, что Open Source сегодня чаще всего такой же бизнес, как и любой другой, со всеми вытекающими отсюда последствиями и ограничениями. Я согласен со Столлманом в этом моменте. Я наблюдал достаточно общественно-полезных проектов, работающих многие годы на чистом энтузиазме. В конечном счете выхода у них всего два. Со временем (или с возрастом) приходит ощущение ничем не компенсированной затратности усилий, и проект либо закрывается навсегда, либо тем или иным способом себя монетизирует, что также сказывается на нем не лучшим образом. Если не брать в расчет отдельные исключения, живой Open Source сегодня — это либо еще стартап, либо уже бизнес. Что же это за такая меркантильная личина сокрыта в современных людях, что даже в таком рафинированно-образцовом альтруизме, как Open Source, в конечном итоге скрывается лишь отсроченная по времени функция «деньгопотребления». Этот холодный прагматизм приходит с возрастом или это заложено в нас изначально? «За всем стоят деньги» — одна из популярных современных конспирологических теорий. Но деньги лишь репрезентируют системы символического обмена в обществе, обмена в том смысле, в котором его рассматривали Марсель Мосс и затем Бодрийяр. Любой символический обмен, включая дар, устроен экономически. В этой парадигме и альтруист получает нечто ощутимое взамен своей деятельности, не важно, в каком виде.

В свете сказанного символический обмен в ИТ-области сейчас тендирует к неравноценности, что приводит к фрустрации, а та приводит или к закрытию проектов, или к попытке силой навязать обмен, то есть к монетизации. Чтобы не дожидаться такой развилки, часто проект строится изначально на бизнес-основе лишь с дополнительной «фичей» Open Source, например для бесплатных багфиксов или повышения доверия. Если рассматривать исключения, то довольно часто они выживают лишь за счет перехвата умирающих проектов «нерастраченной» молодежной сменой. Кстати говоря, Столлман и сам пал жертвой такой деградации: его GPLv3 — это профессиональное выгорание, попытка юридически принудить других к обмену (кодом в данном случае). Как это всегда бывает с идеологиями истощенных ресурсов, проект GPLv3 пытается забрать даже больше, чем отдает сам, так что теперь как грибы растут альтернативы GNU-программам, автоматически перешедшим под GPLv3, взять хотя бы Clang. Хорошо, продолжая тему Open Source, давайте поговорим о важной вехе в вашей жизни — проекте FreeBSD. Для начала — почему именно FreeBSD? Почему, например, не более популярный сегодня проект Linux? Исторически я принимал участие в разработке систем МНОС РЛ и DEMOS, основанных на BSD-коде, так что переход к FreeBSD явился логичным продолжением. Тема Linux vs. BSD давно стала эпической holy war, и в таком контексте отстаивать ту или иную позицию мне представляется неуместным. Формально могу отметить пару вещей. Например, с эстетической точки зрения код FreeBSD для меня выглядит более изящным и менее тяжеловесным, чем код, инспирированный System V, как в Linux. Однако с учетом огромного количества разработчиков, так или иначе вовлеченных сейчас в Linux-проекты, это утверждение может оказаться неверным в отдельных частях. Далее код Linux, в отличие от кода FreeBSD, не является по-настоящему свободным. Он вынуждает соблюдать ряд ограничений, лишь усиливающихся со временем в свете постепенного ужесточения лицензий семейства GPL, которые, изначально исходя из идеи свободы кода, стали органичным дополнением в инструментарии ее подавления. В Linux сейчас проблемой становится огромный объем кода ядра, идущий рука об руку с падением производительности и качества кода, что признает и Торвальдс. Такова плата за расширение возможностей в рамках выбранной в Linux модели управления проектом. Проектная модель FreeBSD в этом смысле более оптимальна. Как я понял, за вами до сих пор сохранен commit bit? Участвуете ли вы в последнее время в разработке или судьбе FreeBSD? Какую ОС сейчас использует бывший член FreeBSD Core Team? Да, сохранен. Во FreeBSD Project было интереснее всего после старта проекта, когда это был своего рода междусобойчик. Тем не менее в FreeBSD Project участвую до сих пор, но эпизодически, обычно если лично у меня что-то работает не так. С тех пор как я начинал, пришло новое поколение людей, в силу популярности проект пошел разрастаться вширь, что радует многих молодых участников и одновременно несколько огорчает тех, кто стоял у истоков. Потому что одновременно с этим трендом в системе стало больше и хронически заброшенных мест. Про текущую ОС меня очень часто спрашивают... На некоем условном «80-м уровне мастерства» выбор ОС — это не дело принципа и даже не баланс компромиссов, ведь при помощи лома и животворящей фразы со «словом на букву ё» совершенно в любой современной ОС можно нормально устроиться, жить и работать. Поэтому в итоге так сложилось, что на моих домашних машинах сейчас стоят одновременно FreeBSD-current и Windows 7. Каким вы видите будущее открытых проектов типа Linux или FreeBSD? За Linux я никогда не следил. С программистской точки зрения, с таким неизящным кодом и bloat’ингом он «проигравший победитель», такой же, каким была система Windows.

Победителями оказались обе по причине низкой цены их символического обмена, которая есть прямое следствие системных недочетов. Рассказывать же про FreeBSD в духе «ожидаются фичи № 1, № 2 и № 3» — мне не интересно. На фоне наступающей «балканизации» Интернета разговоры о будущем сетевых по сути проектов не очень уместны. Давайте обобщим все сказанное. Информатизация общества — что это такое? Некоторые чувствуют, что знание сейчас для многих стало как будто жвачкой, оно не делает большинство людей умнее и мудрее, сводясь к некоему полуфабрикату из пошагового howto (обратная индукция от чего — примитивные тесты ЕГЭ). Если не вдаваться в детали, фраза «информатизация общества» означает, что появится еще больше ламеров с планшетами, сидящих в браузерной ОС или тыкающих пальцем в какой-нибудь Android. Причем это даже не означает, что автоматически появится больше рабочих мест в ИТ, скорей наоборот. В будущем в SMB секторе будут сплошные облака и DevOps, так что нужда в классических сисадминах значительно сократится. Получается, ИТ-отрасль в процессе своего развития пожирает своих служителей. Или количество начинает переходить в качество? Каким будет ИТ в ближайшем будущем? Первичен все-таки программист, а не сисадмин, и с ним в обозримом будущем не будет покончено (хотя он уже сильно испорчен ООП, которое реально мало когда нужно). То, что программистами скоро окажутся одни китайцы да индусы, это другой вопрос — о конкуренции внутри профессии. А вот с администрированием происходит та же оптимизация, как и с любыми масштабными, но рутинными вещами. Причем со всех сторон сразу — по железу, внедрению, поддержке и по самим бизнес-процессам. Рад слышать, что хотя бы у программиста есть будущее в этой непрестанно оптимизирующейся Вселенной. Я считаю, что в роли программистов в цифровую эпоху есть нечто трансцендентное. Все они, как малые боги, непрестанно порождают новый живой мир, «движимый беззвучным законом-алгоритмом в самом себе». А что вы об этом думаете?Программист — это промежуточное биологическое звено. Его задача — унавозить собой почву для начинающей прорастать кибернетической, неорганической жизни. Интересной вехой на этом пути станет возможность полного моделирования процессов головного мозга, а затем и переноса сознания в компьютер. Согласно Нику Бострому, чем ближе мы к этому моменту, тем больше оказывается и вероятность того, что мы и так уже живем в компьютерной симуляции. Подводя итог: вы коснулись темы деградации и одновременно эволюции ИТ-отрасли, но как это сочетается все вместе? Я так понимаю, что это общий для нашей цивилизации тренд, но зачем природе такое вырождение через развитие? Внутренний двигатель для развития самих ИТ это скорее лень. А для конечного пользователя идеалом является универсальная абстрактная кнопка «Сделать все хорошо». В целом, как я уже говорил раньше, люди не хотят меняться или развиваться, они хотят спокойно жить. Помимо малого процента любопытствующих для большинства развитие — вынужденная мера приспособления. Был бы человек физиологически приспособлен к среде обитания на уровне вершины биологической эволюции — верблюда, и мозга такого не возникло бы. Развитый мозг тут лишь как компенсация ущербности. Аналогична и ситуация с социальностью. Для отдельного приспособленного существа она не нужна, а вот социализированная общность обделенных природой повышает свои шансы. В исторической перспективе вектор смещается от развитого индивидуального мозга в сторону менее развитых, но гораздо сильнее социализированных мозгов, как бы образуя мощный коллективный разум из отдельных нейронов-идиотов. Это уже не совсем разум в привычном смысле, но свою задачу вести вид к его предназначению он выполняет, кроме того, даже вышел на уровень планетарного масштаба. Ведь единственным благом является благо вида, а индивидуальная деградация ему не мешает. Возможно, даже помогает, укрепляя связи и увеличивая их число. В заключение интервью какие советы вы можете дать современному айтишнику? Как ему выжить в ускоряющейся гонке технологий и технического прогресса?

Если в жизненных планах айтишника есть пункт «дожить до старости», то для выживания важное и, пожалуй, самое для него сложное — регулярно и полноценно питаться, чтобы не иметь к среднему возрасту проблем с ЖКТ. А если есть пункт «сохранить тело в приличном виде», то и меньше налегать на пиво, что при малоподвижном образе жизни приводит к ожирению. Чтобы сохранить зрение, надо периодически давать отдых глазам и не пожалеть денег на качественный монитор. Кресло с опорой для спины, регулярная разминка и упражнения для шеи помогут против остеохондроза. Также следует уделить особое внимание кистям рук. Чтобы избежать карпального синдрома, есть специальные упражнения, можно использовать коврик для мыши с подушечкой под запястье и клавиатуру с площадкой для опоры. Все остальное вроде информационной перегрузки исправлять бессмысленно, так что на этом, пожалуй, и все.

 

ГЛАВА 4. Сеть через прицел DPI — анатомия китайского Интернета

Герой интервью пожелал остаться анонимным. Это бывший россиянин, который уже 6 лет проживает в континентальном Китае, работая в местной телекоммуникационной компании старшим инженеромадминистратором.

Интервью взято в конце 2013 года.

Предлагаем вашему вниманию интервью с человеком, не понаслышке знакомым с устройством и спецификой работы Великого китайского фаервола. В сегодняшнем разговоре с ним мы обсудим вопросы, актуальные в последнее время и для русскоязычного сегмента Интернета: активная информационная роль государства и его сетевая цензура, также коснемся примеров скрытого управления Интернетом и обществом на примере Китая.

* * * Расскажите про Великий китайский фаервол, который китайцы сами называют «Золотой щит». Что он из себя представляет в техническом плане? Каково его главное предназначение? На данный момент это три составляющие, три дракона, на которых он базируется, — технологии Deep Packet Inspection (DPI), Connection probe и Support vector machines (SVM). Все вместе они представляют собой очень продвинутый фильтр, который блокирует доступ к запрещенным коммунистической партией ресурсам из внешнего Интернета. Официальными идеологами при этом заявляется, что он якобы должен оградить психику китайцев от тлетворного влияния Запада,

по мнению других, это откровенная государственная цензура международной части сети Интернет. Давайте подробно рассмотрим каждую из названных составляющих. Итак, что такое Deep Packet Inspection? Говоря кратко, это технология низкоуровневой проверки и фильтрации сетевых пакетов по их содержимому. Тут сразу нужно провести красную черту: коренное отличие от уже всем привычных брандмауеров в том, что DPI анализирует не столько заголовки пакетов (что, конечно, тоже может), сколько зарывается в содержимое транзитного трафика на уровнях модели OSI со второго и выше. Подчеркну, все это делается в режиме реального времени, и с точки зрения внешнего наблюдателя никаких задержек или манипуляций с трафиком практически не заметно. В России в последнее время очень много пишут о внедрении DPI, многие федеральные операторы (особенно это касается мобильных операторов) даже якобы уже имеют его в рабочем виде. Можно ли сказать, что нами перенимается китайский опыт? Российские и китайские DPI кроме общего названия и принципов работы практически ничего не объединяет. Дело тут прежде всего в масштабе и серьезности их реализации. Как очевидно из описанного ранее способа работы, DPI потребляет прорву ресурсов, ведь все многочисленные операции, производимые им (например, дефрагментация пакетов, их распаковка, распознавание типов данных и протоколов, сканирование содержимого, многочисленные эвристики и многоемногое другое), должны происходить в режиме реального времени. Поэтому главный критерий степени серьезности DPI — глубина анализа транзитного трафика, который может позволить себе эта система, чтобы при этом сохранять приемлемый уровень латентности. Если провести аналогии с антивирусными технологиями — насколько глубоко может позволить погрузиться в код эмулятор процессора для проверяемого файла? Даже если технические возможности и ресурсы позволяют трассировать код до бесконечности, погружаясь во все новые ветвления и процедуры, общие требования к латентности системы всегда имеют волне конкретные ограничения, поэтому глубина погружения всегда ограниченна. Часто в этой ситуации применяются технологические или оптимизирующие ноу-хау, а можно пойти иначе — просто радикально увеличить вычислительную мощность. Так вот, когда мы говорим о китайском проекте DPI, нужно понимать, что это именно последний путь — реально это датацентр размером с самый настоящий районный город, который применяет роевой интеллект (Swarm Intellegence) для управления балансировкой и обработкой данных между его бесчисленными частями-узлами. Возвращаясь к вопросу — если отечественные реализации DPI стоят, насколько я себе представляю, до 50 миллионов долларов, то китайская национальная система приближается примерно к миллиарду. Российский вариант DPI чисто технически не в состоянии осуществлять действительно глубокий анализ проходящих пакетов, а значит, его заградительные барьеры потенциально будут обходиться квалифицированными пользователями множеством различных способов. Поэтому российский вариант DPI китайскому рознь... Переходим ко второму китайскому дракону — что такое connection probe? Это дальнейшая эволюция DPI — сращивание прокси-сервера и низкоуровневого фильтрующего механизма. В этом случае при попытке подключения к любому сервису за пределами национального сетевого шлюза происходят заморозка такого запроса и последующее опережающее подключение по целевому адресу уже от имени DPI. Это, так сказать, проактивная система тестирования и идентификации типа запрашиваемых во внешнем Интернете сервисов. Если, например, вы используете запрещенный в Китае сервис, то его клиентский протокол должен быть серьезно обфусцирован, чтобы суметь преодолеть сигнатурный механизм поиска DPI. При использовании против вас connection probe потребуется обфускация ответа уже и со стороны сервера, то есть в общем случае вы не сможете пользоваться стандартными публичными сервисами в случае их запрета. На данный момент connection probe позволяет достаточно точно и малыми ресурсами определить тип внешнего сервиса, которым желает воспользоваться пользователь из Китая. Если приводить более жизненный пример, то именно эта технология была с успехом

применена против оверлейной сети i2p, после чего оная в Китае была заблокирована. Кстати говоря, что можно сказать о системах типа Tor, i2p? Насколько они реально эффективны в условиях подобной агрессивной сетевой цензуры? Не хочу никого огорчать, но они малоэффективны и вовсе не так живучи, как об этом шумит народная молва, — все упомянутые системы в Китае давно заблокированы. Более того, заблокировать Tor или i2p можно десятком разных способов, самый простой из которых — блокировка bootstrap-процедуры в момент инициализации их клиентов. Заблокировать подобным образом входные ноды этих сетей (например, Tor directory nodes) — тривиальная задача даже для администратора средней руки. Если же говорить с учетом тех возможностей, которые есть у правительства Китая, в первую очередь я имею в виду высокотехнологическую дубинку DPI, — это и вовсе тривиальная задача. Вы можете заглянуть в i2p netDB — там нет нод с китайскими IPадресами, если же посмотреть на открытую статистику пользователей сервиса Tor, то они фиксируют максимум 1000 уникальных китайских IP-адресов в месяц, и это на такую многомиллиардную страну, как Китай, у которой самое большое количество интернет-пользователей в мире. Кстати, в этом случае «прорыва» китайцами применяется сервер obfsproxy, хотя и его блокировка, насколько я могу судить, на данном этапе развития Великого китайского фаервола не представляет технических сложностей, просто это лишено смысла в силу малочисленности пользователей этой экзотической технологии, а также постоянных сбоев в ее работе. Как обстоят дела с VPN и SSH? Ситуация с VPN довольно противоречивая — отдельные провайдеры его агрессивно подавляют, некоторые — почти нет. Своими блокировками широко известен China Unicom — один из крупнейших магистральных провайдеров континентального Китая. На данный момент им определяется и блокируется более пяти разновидностей VPN. Если быть более конкретным, это: OpenVPN, PPTP, L2TP, SSTP и Cisco. К тому же когда проходит очередной съезд Коммунистической партии Китая, Интернет фильтруют так, что даже то, что работало в спокойные времена, может перестать работать в эти дни. Говоря более общо, насколько мне известно, правительство Китая собирается лицензировать сферу использования VPN, то есть после соответствующей государственной регистрации разрешить применение VPN в целях легального бизнеса, и это будет своя собственная версия протокола на базе OpenVPN. После вступления этого закона в силу все отличные от государственного варианта VPN-протоколы будут тотально «резаться» на трансграничном шлюзе. Что же касается сервиса SSH, попытки его блокировок также имеют место быть. По ряду косвенных признаков подобные испытания проводятся и в публичных сетях, в таких случаях в логах можно найти множество сброшенных или неудачных соединений с типичной ошибкой Bad protocol version identification. При этом при попытке подключения к серверам вне Китая на них впоследствии можно увидеть несколько ложных попыток подключения с китайских IP-адресов, предшествующих самому сброшенному подключению. Предположительно, это скрининг принимающего сервера по типу connection probe, который мы уже обсудили выше. Часто подобные тестовые подключения принимают за brute force, хотя в данном случае это скорее попытка пассивной идентификации удаленной системы/протокола по характерным паттернам отклика (fingerprint scanning). После идентификации подобного сервиса его адрес вносится (как правило, на 1–3 месяца) в соответствующие фильтры и стоп-списки, чтобы впредь в целях экономии ресурсов избегать рекурсивных запросов по уже однажды обнаруженному и идентифицированному хосту. Подобные фильтры постепенно пополняются запрещенными в Китае сервисами. Так, в том числе благодаря connection probe, полностью в автоматическом режиме растет и расширяется база Великого китайского фаервола. Чтобы сделать наше описание полным, давайте рассмотрим и последнего зловещего дракона — Support vector machines (SVM).

Я бы хотел подчеркнуть, что и connection probe, и тем более SVM следует рассматривать как расширение, еще большую интеллектуализацию DPI. Метод опорных векторов (SVM) — еще один шаг в этом направлении. Это алгоритм машинного обучения, применяемый для автоматической классификации больших массивов разнородных данных. Мы уже обсуждали, что DPI — это фильтрующая машина, вычленяющая некие данные в потоке согласно статическим правилам, или сигнатурам. В противоположность этому SVM дает возможность сканировать интернет-поток на основе статистического анализа без жесткого набора правил. Например, проводить анализ частоты определенных символов, длин пакетов, анализ подозрительной активности с заданных адресов, замечать различные диспропорции и сетевые аномалии, этим выявляя скрытые закономерности. SVM — это интеллектуальная насадка на DPI, которая, продолжая нашу антивирусную аналогию, привносит эвристические возможности («shrinking» heuristic) к процессу фильтрации интернет-трафика. Приведу пример: в Китае нельзя упоминать о годовщине протестов на площади Тяньаньмэнь в Пекине 4 июня 1989 года, когда на волне крупных беспорядков множество студентов были буквально раздавлены танками. DPI, динамически сканируя национальный трафик, блокирует любые URL-адреса с упоминаниями указанной даты. После того как китайцы стали обозначать эту дату как 35 мая (и множеством других остроумных способов), обычный сигнатурный анализ значительно затруднился. Но эвристика SVM пришла на помощь, она способна, распознавая контекст, обнаруживать такие «подозрительные даты» с минимальным вмешательством человека. Подводя черту, учитывая все сказанное, можно ли сказать, что планируемое внедрение «всероссийского» проекта DPI со стороны «Ростелекома» — это некое зловещее предзнаменование, черная метка для всего Рунета? Нужно понимать, что DPI сам по себе — это мощнейший современный инструмент, и как он будет использован — уже дело моральных и профессиональных принципов тех людей, в чьих руках он окажется. DPI позволяет выполнять огромное количество полезной для сети работы — многие мировые провайдеры применяют его для контроля и балансировки своего трафика, мобильные операторы с его помощью собирают подробную статистику для каждого отдельного пользователя, также эта технология дает возможность адаптивно управлять скоростью передачи отдельных пакетов (QoS) и многое другое. В целом DPI обеспечивает огромное количество уникальных возможностей в широком спектре — от высококачественного шейпинга до создания продвинутых шпионских систем типа PRISM. Абстрагируясь от китайских городов-датацентров и их ультрасовременной технической начинки, что из себя представляет китайский Интернет с точки зрения внешнего наблюдателя? Какие у него особенности развития, какова его специфика адаптации к подобной цензурирующей среде? Дело в том, что Интернет сам по себе — не только в Китае — достаточно реактивная среда. Методы обычной цензуры, основанные на технических средствах и грубых запретах, слабо применимы к ней. К примеру, если популярный блогер оставляет собственное критическое мнение о правительстве КНР в своем блоге, прежде чем цензура заметит и заблокирует его, как правило, успеет появиться несколько кросспостов исходного сообщения. И далее, если цензоры начинают охотиться за всеми ними, часто самопроизвольно срабатывает эффект Стрейзанд — попытка закрыть какую-то информацию, наоборот, привлекает к ней еще большее внимание сообщества. Этот феномен — следствие большой реактивности и саморефлексии сетевой среды. Поэтому, несмотря на огромное количество реальной цензуры в Китае и блокирование подчас целых порталов масштаба крупного новостного агентства, в последнее время в стране набирает обороты альтернативный тренд по использованию именно нетехнических методов воздействия на общественное мнение. Их главная суть — если заткнуть рот оппоненту в Сети не всегда возможно, то почему бы тогда не возглавить подобные дискуссии в нужном для государства русле?

Я читал, что недавно было официально заявлено, что Китай создал подразделение государственных аналитиков мнений в Интернете, в которое набрал два миллиона сотрудников. Предполагается, что эти аналитики будут патрулировать виртуальное пространство в качестве своей основной работы. У них нет никаких прав по удалению какой-либо информации, их задача — контролировать интернет-тренды, изучать общественные настроения граждан КНР, а также манипулировать ими согласно специальной методике. Да, это та самая невидимая сетевая армия, оружие которой — специальные методы скрытого воздействия на Сеть. Чтобы пояснить эту стратегию более выпукло, приведу реальный случай. Примерно два года тому назад китайский Интернет взорвался от довольно странного случая смерти. Молодой парень, который был арестован за незаконную вырубку леса рядом с домом, попал в китайскую тюрьму. Там он скончался через пару дней при довольно странных обстоятельствах. Власти официально объяснили причину его смерти якобы тем, что «в тюрьме он играл в прятки с сокамерниками и, споткнувшись, упал, ударившись при этом головой о стенку». Китайский Интернет очень живо подхватил эту историю, назову лишь одну цифру: на QQ.com в течение суток появилось более 50 000 комментариев по этому делу, все остальные интернет-платформы также были буквально переполнены возмущением от нелепости этого инцидента. Сказать, что цензоры просто физически не справлялись с удалением следов «народного гнева» в эти дни, — не сказать ничего. По забавному стечению обстоятельств иероглиф «играть в прятки» в китайском языке имеет и второе значение — «убегать от кошки», чем и воспользовались китайские блогеры. Даже по прошествии нескольких лет в Интернете можно нагуглить огромное количество упоминаний этой истории про погибшего в китайской тюрьме заключенного, «который разбился о стенку, пытаясь спастись бегством от кошки». Блогеры своей версией про роковую кошку пытались довести абсурд официального объяснения до предела, что породило то, что сейчас бы назвали интернет-мемом. Тогда китайский сегмент Интернета просто бурлил, цензоры не могли повлиять на ситуацию, своими действиями замалчивания и удаления сообщений лишь подливая масла в огонь, раскручивая маховик недоверия и острой критики в адрес правительства КНР. И тут на пике недовольства что-то произошло: в игру включилась совсем другая правительственная команда, которая вместо прежних попыток массированного закрытия ресурсов неожиданно предложила конкурс среди самых известных блогеров Китая. Самим интернетчикам путем сетевого голосования было предложено отобрать пять самых авторитетных для них блогеров, которым впоследствии дали полный доступ к месту происшествия. Власть дала им все данные, все факты, свободный доступ ко всем свидетелям. Эти блогеры завалили сеть своими фотографиями и комментариями с места событий, впрочем, так и не сумев что-то добавить нового по существу этой странной смерти. Но зато с общественным мнением что-то произошло: как только информация с места происшествия стала поступать из независимых источников и в огромных дозах, как только все данные стали максимально открытыми, люди почти сразу потеряли интерес к этому делу, а градус негодования быстро сошел на нет. Таким образом, после этого вмешательства получилось очень быстро подавить тайфун антиправительственной эпидемии. По понятным причинам нет возможности рассказать множество похожих инцидентов в китайнете, но важно нечто общее для всех подобных историй — методы контроля эволюционируют, становятся более тонкими, скрытыми и многоходовыми. Помимо жесткой и безапелляционной цензуры путем чисто технических блокировок, в случае сетевых эпидемий применяются совершенно иные технологии воздействия на общественное мнение. Поэтому не стоит акцентировать внимание лишь на технических средствах, которые в Китае также бурно развиваются, ведь прямо на наших глазах создаются и оттачиваются принципиально новые технологии управления, где зачастую все плюсы Интернета как открытой среды власти пытаются использовать с обратным знаком — уже для скрытого контроля и ограничения свободы мнений.

Можно ли как-то сравнить Интернет Китая с привычным Рунетом по степени свободы их граждан? На самом низшем уровне в Китае действительно практически нет цензуры; если вы посмотрите их социальные сети, то они переполнены слухами и обвинениями власти, где на общий клубок эмоций туго намотаны правда и откровенная чушь. Практически никто не читает это, равно как личную стену, я думаю, 80 % безвестных участников нашей соцсети ВКонтакте, которые вольны писать там все, что им только вздумается. Следующий уровень — это систематическая критика, аргументация, яркие и активные блогеры со своей аудиторией, вот здесь уже наблюдается определенное напряжение, есть активная цензура и удаление провокационных сообщений. За квартал, по данным китаиста Г. Кинга из Гарварда, органами сетевой цензуры КНР удаляются до миллиона сообщений и комментариев к ним. И наконец, третий уровень — топ-блогеры с огромной аудиторией. Либо же это ситуации, когда какая-то тема выстреливает и получает общественный и сетевой резонанс. Тут возможны самые разные варианты активного противодействия и наказания: если блогера-инициатора можно в чем-то обвинить, его могут арестовать, вырвав «больной зуб с корнем». Если сетевая эпидемия слишком сильна и делокализована, то к делу подключают «сетевой спецназ», который пытается спустить пар с помощью различных хитроумных технологий контроля общества через soft power (например, описанная ранее история с неудачной попыткой бегства заключенного от кошки). Все эти три одновременно существующих уровня создают противоречивое мнение и определенную путаницу, часто пуская первое впечатление стороннего человека по ложному следу. Так, случайные и внешние по отношению к стране люди («туристы») видят множество антиправительственной критики в безымянных аккаунтах, что создает ложное ощущение относительной свободы. С другой стороны, в прошлом году власти арестовали сразу шесть известных блогеров и бросили в тюрьму, обвинив их в «распространении слухов о готовящемся военном перевороте».

В последнем случае не стоит пытаться слишком серьезно осмысливать официальные формулировки, ведь когда здесь закрывали Википедию, это обосновали борьбой «с пропагандой агрессии и насилия», которую якобы и осуществляет по всему миру эта свободная онлайн-энциклопедия. Насчет трех китайских уровней цензуры все ясно. Что можно сказать насчет анонимности? В Китае нет анонимности. В КНР действуют законы, обязывающие блогеров регистрироваться с указанием своих реальных паспортных данных. Это делается под предлогом «улучшения доверия в сети друг к другу и защиты интересов сторонних пользователей». Также действует закон, обязывающий документально удостоверять свою личность при заключении любых соглашений на получение услуг доступа в Интернет. Все сайты, физически расположенные в самом Китае, проходят в Министерстве промышленности и информационных технологий обязательную регистрацию, в которой достаточно педантично расписано, что это за сайт и кто за что на нем отвечает. Таким образом, при любом исходе событий всегда есть конкретный ответственный за любые потенциальные нарушения. Добавьте к этому постоянный фоновый контроль (я говорю не только про Интернет, вспомните хотя бы недавний запрет в США продаж оборудования от Huawei, которое оказалось нашпигованным жучками, или питерскую историю про китайские утюги, которые самовольно подключаются к публичным сетям Wi-Fi), где весь ваш трафик и активность в сети тщательно контролируют и логируют. Здесь любой, даже самый технически отсталый, пользователь сети прекрасно понимает, что его активность фиксируется. Например, вы можете попробовать использовать VPN или переписываться с кем-то за рубежом посредством PGP, и при должной сноровке и квалификации это может даже сработать. Но при этом каждому очевидно, что сам факт использования подобных технологий будет зафиксирован, что в будущем при диспозиции с другими отягчающими обстоятельствами может привести к вашему преследованию. Эвристические технологии фильтрации типа SVM, кстати,

способны автоматически засекать использование вами практически любой криптографии, что дополнительно привлекает внимание сначала к трафику, а затем уже к вашей персоне. Сформулирую главное наблюдение. После шести лет местной жизни у меня сложилось впечатление, что Китай со своей системой тотального фонового контроля и периодических жестко-демонстративных наказаний пытается настойчиво выработать модель поведения граждан, в рамках которой человек добровольно и подсознательно подвергал бы себя акту самоцензуры, постоянно отдавая себе отчет, что каждый его шаг или высказывание в рамках Сети тщательно фиксируются. Желание сдерживать себя, движимое прежде всего подспудным страхом, со временем становится второй натурой. Так мы приходим к странной дихотомии для более либерального европейца: формально можно писать, что думаешь, но большинство китайцев предпочитают этого не делать. Затем дети учатся этому у своих отцов, так выращиваются целые поколения перманентно лояльных к стране граждан без собственной точки зрения. В этом, кстати, дурные корни их хваленой коллективности и патриархальности... Глядя со стороны, каков ваш прогноз в отношении Рунета? Во главе нашей большой страны, физически обслуживающей главный кластер русскоязычного Интернета, стоит бессменный президент, полковник КГБ и член КПСС с 1975 года. Какие тенденции в развитии Сети вы ожидаете в связи с этим? Безусловно, все будет ужесточаться. Но позвольте выразить скепсис — лично я не думаю, что этот будет именно «китайский вариант», потому что этот подход, поверьте, чрезвычайно высокотехнологичен. Напомню, в России до сих пор не умеют даже фильтровать отдельные запрещенные судом веб-странички, варварски баня сразу пачку ресурсов по их общему IP-адресу. Поэтому повторю еще раз, не надо пугать местную сеть «китайским вариантом». Скорее всего, отсутствие реальных технических возможностей будет компенсироваться бурным законотворчеством и чисто административной грубой силой. Единственное общее с Китаем — со временем такой прессинг сформирует у населения синдром самоцензуры по китайскому типу. То есть манеру думать одно, а говорить (комментировать) другое с постоянной оглядкой «как бы чего не вышло», что, мягко говоря, далеко от нормального человеческого общения и самовыражения. Впрочем, в российских широтах, ИМХО, это приведет скорее не к покорности, а к непредсказуемости уже хватанувшего «глотка свободы» населения. Завершим наше описание азиатского Интернета последним вопросом, поставленным ребром: назовите самые экстремальные для своей безопасности вещи, которые можно сделать в китайском Интернете прямо сейчас. Я бы выделил два серьезных момента: это любые высказывания против самих цензоров и цензуры, а также любые призывы к коллективным народным действиям в офлайне. В первом случае Китай прикладывает титанические усилия, чтобы сам факт цензуры, контроля и слежки никак внешне не ощущался большинством обычных граждан страны, то есть чтобы это явление не обсуждалось и никак не фиксировалось. Любые ваши попытки открыто обсуждать именно эту проблематику, указывать на факты контроля, скорее всего, будут иметь очень серьезные последствия (прямо пропорционально степени убедительности и серьезности представленных фактов). Парадокс в том, что сегодня безопаснее критиковать само руководство коммунистической партии, чем его методы контроля Сети или общества. Что касается второго, если вы хотите собрать людей с какой-либо целью — это будет жестко пресечено. Еще раз напомню про основную часть стратегии: личные критические высказывания или фрагментированная критика со стороны граждан чаще всего приемлемы, а вот любые попытки коллективных обсуждений, самоорганизации или объединений на почве общих взглядов и тем более выход с ними в офлайн категорически недопустимы. По этой причине в сети блокируют даже группы любителей велосипедной езды, если они пытаются массово собраться в офлайне. Китайская власть панически боится любой консолидации граждан, впрочем, именно эту функцию, как я считаю, и будет обеспечивать более «взрослый» Интернет будущего. Социальные сети типа Твиттера — это только начало...

Послесловие В самом начале 2015 года Китай объявил настоящую сетевую вой ну против тех сервисов VPN, которые смогли адаптироваться к Великому Китайскому фаерволу. Проблемы возникли со многим известными платными сервисами, например «отвалились клиенты» у StrongVPN, TunnelBear, Astrill и Golden Frog. Представители этих сервисов официально подтвердили перебои в обслуживании их пользователей в Китае. Также в компании Astrill дополнительно сообщили, что Китай начал блокировку в режиме реального времени работы VPN и на мобильных устройствах Apple, чего раньше не наблюдалось. Представитель Golden Frog сказал в интервью изданию TechCrunch, что новый тип атаки на их VPN-сервисы стал «более изощренным по сравнению со всем тем, что мы видели в прошлом». На данный момент специалисты крупных VPN-провайдеров разбираются в деталях примененной Китаем фильтрации, пытаясь нащупать ее слабые места. Кроме того, Государственная канцелярия по делам интернет-информации Китая сообщила, что с 1 марта 2015 года в стране вводятся новые правила регулирования Интернета. Согласно обнародованному ведомством документу, все китайские пользователи сети Интернет должны будут удалить свои старые аккаунты на форумах, в блогах и мессенджерах и завести новые с указанием своих настоящих имени и фамилии. Отныне в Китае любой анонимный аккаунт сам по себе является преступлением безотносительно к тому, что там написано. Отслеживаться и караться будут не только те, кто создает и ведет такие аккаунты, но также и те, кто их посещает и читает. Тем временем Google инвестирует 1 миллиард долларов в компанию Space Exploration Technologies Corp., которая займется созданием глобального космического интернет-провайдера с помощью нескольких сотен спутников. О начале работы над этим амбициозным проектом официально заявил его автор Элон Маск, генеральный директор компаний SpaceX и Tesla Motors. Google занимается разработкой системы глобального спутникового Интернета с 2014 года. В конце 2013 года компания наняла ветерана спутниковой индустрии Грега Уайлера для руководства этим проектом. Но летом Уайлер покинул компанию и в настоящее время занимается разработкой собственной спутниковой интернет-системы, инвестировать в которую намерены Qualcomm и Virgin Group. У двух научных групп фундаментально отличаются подходы в способах передачи сигнала на Землю: пока Китай верит в неизбежность пришествия коммунизма, Уайлер делает ставку на радиочастоты, а Маск — на оптико-лазерную технологию. Чье видение окажется в итоге более реальным, покажет время, которого до каких-то первых результатов по оценке обоих предпринимателей осталось около 5–7 лет (то есть нужно подождать примерно до 2020 года). Оба проекта убеждены, что запуск системы глобального спутникового Интернета даст возможность навсегда решить проблемы не только доступа к сети в самых труднодоступных и экономически отсталых регионах планеты, но и положит конец попыткам цензуры и контроля Интернета на уровне его национальных сегментов, сделав информацию свободной для всех.

 

ГЛАВА 5. Джастин Франкель —  альфа-гик из Аризоны

Джастин Франкель — известный американский программист и музыкант. В молодости пытался получить высшее образование в области программирования в университете штата Юта, но был отчислен из-за проблем с учебой. Автор первой программной реализации пиринговой сети. Самые известные его программы — WinAmp, gnutella, SHOUTcast, REAPER. Интервью взято в 2012 году.

WinAmp — наиболее известная и коммерчески успешная программа нашего сегодняшнего героя. В 1999 году компания America Online купила у него эту программу, а вместе с ней и его фирму Nullsoft, которая развивала и поддерживала ее. За эту сделку Джастин Франкель (Justin Frankel) получил тогда около 100 миллионов долларов плюс руководящую должность с приличным окладом в штате AOL (первую и последнюю наемную работу в своей жизни). На тот момент Джастину было всего 20 лет — неплохое начало для карьеры обычного программиста. И хотя он уже давно не участвует в создании WinAmp, Джастин попрежнему очень активно продолжает коммерческую разработку софта (его новая компания Cockos! хоть и не приносит ему былых миллионов, зато полностью самоокупается и позволяет платить зарплату нескольким разработчикам). По замечанию самого Джастина, продажа Nullsoft разделила его жизнь на два периода — до и после. Сегодня, в годовщину продажи Nullsoft, мы решили взять большое интервью у основателя таких культовых программ, как WinAmp, SHOUTcast и пиринговой сети Gnutella, чтобы узнать из первых уст историю этих известных продуктов, а также понять, чего сейчас у Джастина больше в жизни — программирования или все-таки музыки, которой он занимается не менее серьезно, чем программированием.Продажная шкура

Прежде чем мы поговорим о вашей богатой истории, можете сейчас вспомнить, с чего все начиналось? Как вы пришли в программирование? Какие были мотивы? Я начинал программировать на компьютере Atari 800XL, который достался мне от моего старшего брата. Сколько я себя помню, мне всегда было очень интересно программировать. Для меня программирование — это источник хорошего настроения, в более общем смысле — возможность развиваться и работать над собой, возможность проявить себя и свои вкусы. Бизнес-составляющая для меня была всегда в стороне от этого чувства; возможность заработать своим любимым занятием — просто дополнительный приятный бонус. Джастин, очень логичный вопрос: что чувствует человек, когда его выгоняют из собственного бизнеса? Не то чтобы это уникальная история, но все же какие чувства вы тогда испытывали, когда вас поставили перед фактом: с сегодняшнего дня WinAmp не имеет к вам никакого отношения? Ну, во-первых, мне очень хорошо финансово компенсировали эту потерю, во-вторых, это не было какое-то мое сознательное решение, так как первоначально мы договаривались, что, несмотря на продажу, я буду продолжать работу над проектом. Поэтому я не чувствую никакой вины, что я «предал» свой проект, — так сложились обстоятельства. Тем более я успел вложить в WinAmp практически все, что собирался там сделать, поэтому уходя не чувствовал себя слишком подавленным. В связи с этим вы писали в своем блоге: «Для меня программирование — это форма чистого самовыражения. Компания же (имеется в виду AOL) подавляет наиболее эффективные средства самовыражения из тех, что у меня есть. Это неприемлемо для меня как для личности, поэтому я должен уйти». Итак, программирование — это для вас искусство или все-таки обычная работа? Я думаю, что это смесь всего сразу. Представляю себе технологию любой разработки из трех разноуровневых плоскостей: на высшей — мы рождаем концепцию программы, формируем ее индивидуальность,

это чистой воды креативность и искусство. На следующем уровне — разработка программы, ее написание, проработка алгоритмов и деталей ее работы, здесь уже задействована смесь из рабочих навыков и креативности. Низший уровень — отладка и шлифовка программы, и для меня это рутина, монотонная техническая работа, лишенная творческой искры. Поэтому, как и в обычной жизни, при разработке мы последовательно проходим все эти уровни, но секрет успеха всего цикла, по моему мнению, сокрыт именно в первом уровне — концепции. Суммируя, можно сказать, что без креативности ты посредственный программист? В каком-то смысле да. Ты обречен постоянно работать лишь на низшей плоскости в этой модели. И это всегда наемная позиция, обратите внимание. Поэтому в нашем сложном мире программист программисту рознь. Джастин, извините, я и в самом деле не понимаю, вас очень многие знают в индустрии, и вы сами говорили о больших возможностях и предложениях, то есть вы могли устроиться во многие крупные корпорации и работать там наемным программистом и ни о чем не париться — так к чему все эти нервы и риски с собственными проектами? Потому что это дает совсем другие ощущения. Я работал однажды в America Online (смеется), и вы сами знаете, чем это закончилось. Я понял для себя, что мне очень важно оставаться самим собой и делать в этой жизни то, что я считаю правильным. Работая на корпорацию весь день напролет, ты осуществляешь чьи-то чужие планы, не живешь своей мечтой, неизбежно подавляешь свою креативную составляющую. Очень сожалею, что мне не дано выразить словами, насколько это большая разница. (Пауза.) Ну, примерно как если бы вы работали в садике няней и ухаживали за чужими детьми. Или, например, если бы вы выступали в качестве родителя и у вас был бы свой собственный и долгожданный ребенок. В принципе, в обоих случаях будет очень много общего чисто внешне, но все же… черт побери, но это же совершенные разные вещи, не так ли? Давайте коснемся и другой актуальной проблемы, через которую вы прошли лично: могут ли одиночки вроде вас противостоять корпорациям с большим коллективом разработчиков? Иначе говоря, возможно ли в наше время одиночкам-программистам написать что-то по-настоящему известное вроде вашего WinAmp? Я понимаю, что вы имеете в виду, но я думаю, что не так все просто. Я работал в очень большом коллективе разработчиков в свое время и думаю, что часто «больше» — не значит «лучше». Конечно, я могу сейчас рассуждать об этом лишь теоретически, но думаю, что у одиночек шансы все еще есть. Если вы посмотрите на Facebook, Microsoft, Google, Apple и т. д., вы увидите, что, несмотря на их гигантский штат, за ними стоят по-прежнему одиночки, которых вы знаете поименно. Кстати, я уже говорил раньше о своей трехуровневой модели разработки — по-прежнему, я повторюсь, но все решает удачная концепция. А для этого хватит и одного по-настоящему талантливого человека. Вот поэтому я уже давно не работаю в корпорациях! (Смеется.) Интересно, с учетом вашего перфекционизма в отношении программирования как вы лично считаете, нужно ли специализированное высшее математическое образование (или по компьютерным наукам), для того чтобы создавать высококлассные современные программы? Скажу вам прямо, я не считаю, что сегодня обязательно нужно иметь высшее образование по математике или в CS для разработки успешной программы. Я считаю, что любой может добиться очень многого, самостоятельно учась и пробуя. Тем более сейчас, когда есть такие большие возможности для получения любой информации, а также возможности для удаленной работы в команде с профессионалами очень высокого уровня (например, в многочисленных сетевых проектах Open Source). Поэтому для какого-то профессионального базиса достаточно упорства и аккуратности, я считаю. И наоборот, вижу, что у многих дипло

мированных выпускников часто не хватает элементарного упорства, чтобы добиться чего-то более-менее заметного. Поэтому не это главное сегодня. Вы уверены? К примеру, я могу нанять очень хороших и дорогих программистов в качестве послушных исполнителей прямо завтра, которые закончили самые престижные вузы и полностью готовы к осуществлению сложных проектов. И что, факт этого сам по себе хотя бы что-то гарантирует? Эти времена уже прошли. Сегодня важно… (после паузы шепотом) давайте закругляться с этим вопросом, потому что я снова начну повторяться про первый уровень своей модели. Ладно, о’кей, как вполне состоявшийся в сфере программирования человек поделитесь секретом своего успеха. Это некая индивидуальная удача или результат стахановского труда и личных, очень ярких и нестандартных способностей? Ответ зависит только от того, что вы подразумеваете под понятием «успех». Например, для меня, и я хорошо знаю это, важным условием для будущего успеха программы является возможность самому ежедневно очень плотно пользоваться этой программой. Если ты пишешь софт для других пользователей, а сам им не пользуешься, то, естественно, не знаешь его со всевозможных сторон в реальной жизни — тогда успех будет сложной задачей, в этом случае сложно добиться понастоящему глубокого уровня резонанса с потребностями твоего потенциального покупателя. Поэтому это очень важно, в конечном счете все стоящие программы мы пишем прежде всего для самих себя. Разве нет? Интересно, сегодня вы как-то принимаете участие в разработке WinAmp? Общаетесь ли вы с текущим лидером проекта WinAmp Беном «Benski» Эллисоном? Нет, вообще не в курсе, чем они там занимаются. С Беном как-то пару раз пересекались, кроме обмена обычным «привет», никак не общались. Уже пару лет как я полностью с головой ушел в свой новый проект REAPER. О’кей, перевернули страницу истории, WinAmp остался позади. Что можете сказать о вашей сегодняшней ведущей разработке REAPER? Чем она особенна среди подобных? И вообще, почему люди пишут новые программы, когда изначально существуют уже подобные аналоги? Проект REAPER начинался с того, что мне нужно было что-то, что позволяло бы достаточно эффективно и удобно записывать живое аудио, а затем иметь возможность сразу же подредактировать его хотя бы на каком-то базовом уровне возможностей. На тот момент у меня не было никакого подобного и по-настоящему удобного лично мне инструмента под рукой, и, как это часто случается (произносит по слогам): мне было проще написать это самому. Знакомая для любого программиста фраза, не правда ли? Именно так все и начинается. Но конечно, с тех пор программа очень сильно выросла и разрослась, возможно, это во многом субъективно, но я вижу ее основные отличия от многочисленных конкурентов в следующем: ? очень продвинутый уровень пользовательской кастомизации программы (возможность создания своих тем, меню, шаблонов, значений по умолчанию и т. д.); ? отсутствие защиты от копирования и взлома, полностью функциональная демоверсия, что для меня очень важно; ? очень гибкая и продуманная открытая архитектура для сторонних плагинов — любой желающий может расширить любую подсистему программы, добавив в нее новую функциональность, новый формат или сферу приложения; ? я также стараюсь очень часто обновлять программу, непрерывно работая над ней. По всему тому обилию программ, которые мне приходилось видеть и писать за свою жизнь, я берусь судить, что REAPER — понастоящему качественно спроектированная и реализованная программа.

Насколько она коммерчески успешна? Конечно, у нее пока нет той миллионной армии пользователей, которая была у других моих разработок, но даже тех нескольких тысяч клиентов, что у меня есть сейчас, вполне хватает, чтобы этот проект был окупаем. Вместе со мной над программой работает еще пару человек, и мы пока вполне хорошо держимся на плаву. * * * Джастин Франкель вспоминает, как, будучи 16-летним подростком, как-то участвовал в летней олимпиаде по программированию в родном университете Северной Аризоны. Было так скучно, что просто для веселья Джастин решил прямо там, не теряя времени, написать программу типа Fork bomb, которая, будучи запущенной, сразу создавала свой клон, который также мгновенно запускался, повторяя все это снова в цикле: конечно, уже через минуту ее работы компьютер намертво зависал, никак не реагируя на клавиатуру. Тогда он пересаживался вверх по аудитории, запуская эту программу на новых компьютерах, пока группа администраторов пыталась понять, постепенно следуя за ним, что же происходит с компьютерами в лаборатории… На следующий год, когда Джастин участвовал в точно такой же компьютерной университетской олимпиаде, главный администратор университета сразу подошел к Джастину и, сурово глядя прямо в глаза, зло процедил: «Джастин, можешь заниматься сегодня за компьютером чем угодно, только не заваливай систему». Джастин вспоминает с улыбкой, что эту просьбу, словно далекое эхо, он слышит до сих пор сквозь все эти годы…

Заваливание системы

Журнал Rolling Stones назвал вас самым опасным гиком в мире, журнал Times выдал интервью с вами под заголовком «Человек, который обворовал весь мир», и т. д. Итак, переходим ко второй известной вашей разработке — первой в мире децентрализованной пиринговой сети Gnutella. Судя по заголовкам мировых изданий того времени, музыкальный бизнес был единогласно уверен, что вы в очередной раз «завалили систему».Что вы сами думаете об этом? Рассказать о пиринге и Gnutella? Только факты? Ну, во-первых, Nu tella — это моя любимая ореховая паста, во-вторых, я люблю открытое ПО, как это делает фонд GNU, в-третьих, я люблю и достаточно серьезно занимаюсь музыкой, в-четвертых, я программирую в среднем по восемь часов в день. И вас удивляет, что в результате пересечения всего этого в рамках одного человека случаются вещи типа Gnutella? Но несмотря на всю мою страсть к ореховой пасте, система на этот раз устояла. (Смеется.) А если серьезно, то все эти заголовки, мягко говоря, преувеличение, и с позиции прошедшего времени это видно особенно ясно. Я просто программист, который решал очень интересную для него техническую задачу, и не нужно даже пытаться вкладывать в это нечто большее, пожалуйста. Еще вопрос про Gnutella. Очень часто спрашивают, почему вы сами вышли из этой большой игры, в связи с чем вас сравнивают с Шоном Паркером, который недавно стал широко известен благодаря фильму «Социальная сеть» режиссера Дэвида Финчера. В самом деле Шон создал Napster, заработав на этом большие деньги. После закрытия его популярной пиринговой сети по решению суда вы тут же создали подобную, но, что принципиально важно, уже децентрализованную сеть Gnutella. По данным 2007 года, Gnutella являлась самой по пулярной пиринговой сетью в мире, она использовалась тогда на 40,5 % компьютеров, подключенных к p2p-сетям. И в момент самого пика успеха вы добровольно выходите из игры, полностью отказавшись от дальнейшей разработки и координации проекта. Почему? Ну, знаете ли, Шон на Napster не заработал ничего, кроме головной боли, миллионы к нему реально пришли, лишь когда он стал президентом Facebook. Да, проект Napster сделал его известным человеком, но не богатым. Что касается меня и Gnutella… Технология уже была на том уровне развития, когда она прекрасно развивалась и без моего участия. Меня интересовала лишь сама концепция децентрализованного пиринга и ничего более. Можете сравнить меня с основателем Биткоин, если хотите (смеется). Поймите меня правильно: меня интересовала техническая сторона проекта — и она вне всяких сомнений состоялась, и я ничего нико

му не собирался доказывать ни в юридической, ни в политической плоскости этого вопроса, как я уже говорил в ответе на предыдущий вопрос. Я не задумывал p2p императивно как средство нарушения копирайта, для меня это был просто технический концепт, и, получив свою дозу веселья и впечатлений от программирования этой необычной задачи, я ушел, просто чтобы заняться чем-то следующим в своей жизни, не менее интересным и важным для меня. Раз уж вы заговорили о копирайте… Я видел старые плакаты с рекламой еще, по-моему, WinAmp версии 2.0, где вы битой, на которой выгравировано слово WinAmp, крушите буквально в щепки груды компакт-дисков вокруг вас. Я думаю, в нашем интервью настал хороший момент, чтобы немного поговорить о копирайте: что это такое, как вы его видите в современном цифровом мире? Созда ют ли новые технологии и взгляды, например, в вашем случае mp3 и WinAmp проблемы для существования старых технологий и правовых норм? Проблема не в бите в руках молодых людей. Конечно, первоначальная проблема в том, что все старое всегда отчаянно сопротивляется приходу нового, просто потому, что это вопрос его выживания, но не потому, что оно лучше. Это касается не только программирования и технологий, посмотрите телевизор — это противостояние поколений буквально повсюду. Я думаю, что копирайт в США сейчас — это больше некая вербальная концепция, которая хорошо приспособлена и отработана касательно патентов и торговых марок. Новое направление DMCA, пытающееся регулировать что-то там в цифровом мире, очень далеко от идеала. Реально же усиление копирайта перед наступающим пиратством в области цифровых продуктов очень проблематично. Скорее всего, это будет приводить к каким-то компромиссам, что в итоге будет размывать этот самый копирайт еще больше. Самая главная ошибка, которую я сейчас вижу в этой области, — попытка контролировать защищенный контент настолько жестко, что это уже создает ощутимые трудности законным владельцам и покупателям цифровой продукции, тогда как, с другой стороны, ни капли не сдерживает пиратов (например, технология DRM, от которой нет почти никакого толка в этом плане, а лишь проблемы для легальных пользователей).* * * Не каждый разработчик программ может позволить себе купить дом на 800 квадратных метров, построенный в 1900 году и выполненный в викторианском стиле, в котором четыре отдельные спальни, бассейн внутри, два гаража, мастерская, общей стоимостью около 3 миллионов долларов. Не у каждого американского миллионера задний двор заставлен старыми, собственноручно восстановленными машинами, а в домашней мастерской полным-полно самых чудаковатых электронных (и не только) музыкальных инструментов. Сегодня наш разговор с одним из подобных редких, очень редких гиков.

Альфа-гик

Джастин, у всех есть свои увлечения и какие-то слабости. Я же смотрю, что вы серьезно увлекаетесь ремонтом и восстановлением автомобилей, также восстанавливаете старые музыкальные инструменты и даже создаете свои. Кроме того, вы серьезно занимаетесь музыкой и программированием, но из всех ваших многочисленных увлечений лично меня удивляет ваша давняя страсть к изготовлению глиняных горшков. Зачем они нужны вам? Не у каждого миллионера столь странные увлечения… Я не согласен с вами, что ручная керамика и изготовление посуды из глины — это странное хобби. Я начал заниматься этим еще тинейджером, когда учился в старших классах школы, с тех пор я многому научился в этой профессии. С одной стороны, на выходе я получаю экологически чистую посуду для собственных нужд, с другой — это, поверьте, очень хороший способ расслабления и активного отдыха, который требует сфокусированности на процессе и самоконтроля, при этом, будучи почти спортивным по своей увлекательности, он не изматывает физически так, как это делают более традиционные виды спорта. И да, мне очень нравится также разбираться в сломанных машинах, я люблю самостоятельно постигать устройство механизмов, у меня

за спиной несколько восстановленных почти с нуля машин. Обычно я на этом не останавливаюсь, я стараюсь что-то усовершенствовать в процессе восстановления механизма, найти возможность сделать его еще лучше, чем было изначально. Если я и трачу время на очередной ремонт, то это должно быть актом творчества. К тому же этот вид обратной разработки механики куда более нагляден, чем в программировании, он доставляет мне множество положительных впечатлений и успокаивает. В связи с этим: ваша любовь к игре на волынке долгими вечерами, в перерывах между изготовлением горшков и восстановлением старых машин, тоже, небось, неплохо успокаивает? Без сомнения, так и есть. Как догадались? (Смеется.) Извините, вопрос немного не по теме. Имел возможность немного пожить в Америке, в штате Иллинойс, общее наблюдение — с одной стороны, люди в основной массе много работают и ужасно устают, с другой стороны — тотальная страсть расслабляться... И ваши способы еще не самые деструктивные из всех. Нельзя говорить сразу обо всех, но я думаю, что в приближении картина близка к правдивой для всей Америки. Мой рецепт от перегрузок и стрессов очень прост и естественен — это творчество. Проблема не в том, что мы работаем много, проблема в том, что наша работа подчас кажется нам бессмысленной и ненужной, именно это убивает быстрее всего. Я просто хочу сказать, что у вас очень насыщенная жизнь, Джастин, вам это не грозит. Ладно, а что за деревянные коробки с мониторами вы собираете в своем гараже? Это Jesusonic — инструмент для создания эффект-процессинга в режиме реального времени, например очень интересно звучащий для гитары. Я постоянно экспериментирую со звуком, это отличная платформа для таких экспериментов. У обычных людей есть четкая грань между хобби и работой. У вас я не чувствую этой границы. Не так ли? Я уже говорил ранее, что я работал на босса единственный раз в жизни, когда меня пригласили в AOL, и вы прекрасно знаете, с каким треском в итоге меня оттуда выгнали. Поэтому да, все мои хобби являются моей работой — я счастливый человек. Кстати, об AOL и вашей работе там. Ваша разработка сети Gnutella была также творческим экспериментом, как вы рассказывали раньше. Одно мне непонятно: когда вы выкладывали на серверах AOL фактически собственный личный продукт потенциально пиратского назначения, я думаю, вы прекрасно понимали возможную реакцию вашего руководства. Какие мотивы вами двигали тогда? Вы специально хотели конфликта? Поверьте, в те годы я не думал ни о каких потенциальных проблемах. В этом нет ни смелости, ни наглости, ни какого-то геройства, кроме молодости. Я просто хотел реализовать тогда что-то технологически новое, опробовать на деле принципиально новые алгоритмы по распространению файлов, и был полностью увлечен лишь одним этим желанием. Большой бизнес живет совсем другими категориями, я думаю, вы понимаете, о чем я. Да мы вообще много чего там1 успели сделать, пока нас не выставили вон. (Смеется.) НЕОБХОДИМОЕ ПОЯСНЕНИЕ ОТ АВТОРА ИНТЕРВЬЮ Несмотря на утверждение русской страницы Википедии о том, что «Создание сети Gnutella инициировала компания America Online, использовав для этой цели программистов из подразделения Nullsoft» (цитата по состоянию на 2012 год), это неправда. На самом деле Джастин Франкель и Том Пеппер самовольно развивали и выкладывали код Gnutella, а также тестировали его на серверах компании AOL и без ведома самой корпорации. Последующее объединение AOL с Time Warner привело к тому, что с Gnutella стали уже активно бороться новые хозяева, выжигая ее каленым железом с серверов AOL и запрещая работу над ней в рамках новой компании (официально AOL назвала проект Gnutella «unauthorized freelance project» и открестилась от него), после чего оттуда и уволились разработчики Gnutella во главе с Джастином Франкелем.

Вы говорите, что вы более музыкант, нежели программист. Как вы видите будущее музыки? Выживут ли традиционные инструменты в будущем? Какие тренды в развитии музыки отмечаете лично вы? 1 В AOL.

Традиционные музыкальные инструменты прекрасны, и я думаю, что они никуда не исчезнут в будущем. Я уверен в этом! Удивительно это слышать от прожженного электронщика, мастерская которого буквально завалена электронными инструментами… Не совсем так. Позвольте привести пример из своей жизни. Как-то я купил на электронной распродаже на Craigslist пианино очень известной марки, которое было изготовлено в 1947 году. После его полной реконструкции своими силами, когда я буквально перебрал в нем практически все заново, восстановив все почти с нуля, я пригласил своего друга, профессионального пианиста, чтобы он опробовал инструмент в деле. В тот вечер я услышал божественный звук, бог мой, по моим щекам катились слезы восхищения, потому что это настоящая музыка, которая будет трогать душу и восхищать вечно. Поймите меня правильно, я не против поиска нового в нашей жизни, равно как и в искусстве тоже, но есть вещи, заменить которые ничем другим просто невозможно. Потому что они уникальны. Напоследок хочу задать вопрос на тему общечеловеческих ценностей. У каждого человека, наверное, есть что-то главное в жизни — некая доминирующая идея, ради чего он живет и преодолевает все эти многочисленные неприятности и сложности в своей жизни, ради чего находит в себе силы двигаться вперед каждый божий день. А что вы можете сказать о своей ведущей цели в жизни? Мне очень нравится Курт Воннегут, позвольте я просто процитирую его: «Быть по-настоящему человечным, это значит вести себя в любом случае достойно, при этом не ожидая за это никаких благодарностей и не боясь наказаний на том свете». Я не совсем уверен, что в точности во всем человечен как гуманист, по крайней мере, для меня эти взгляды в моей жизни значат много. И знаю, это так банально звучит, но я считаю, что самый большой вызов в нашем мире — оставаться самим собой в любой ситуации, следуя своим идеалам и принципам до конца.Горькое послесловие Интересно проследить, как сложилась судьба культового аудиоплеера WinAmp после того, как он перешел из рук влюбленного в него создателя в руки эффективных менеджеров крупной частной корпорации AOL. Если рассказывать эту историю кратко, все закончилось печально. После 15 лет существования проекта компания AOL закрыла его и распустила всю команду, которая занималась разработкой проигрывателя WinAmp. Участь самого Франкеля постигла и всех его последователей. Впрочем, в последний момент AOL смогла спасти хоть что-то — в итоге культовый медиаплеер WinAmp был продан небольшой компании Radionomy Group, владеющей международным агрегатором интернет-радиостанций. Radionomy — это свободная платформа, которая может быть использована для создания и прослушивания радиостанций через Интернет. Так завершилась славная история программы WinAmp, в итоге ставшей клиентом небольшого бельгийского интернет-проекта, который использует былую популярность программы как дешевый способ продвижения и популяризации своего встроенного сервиса. В собственность Radionomy помимо Winamp перешел не менее популярный каталог радиостанций SHOUTcast.

 

ГЛАВА 6. Сергей Кищенко — программист-кочевник

Сергей Кищенко — украинский программист. Бывший Software Architect в Quickoffice (Харьков), ныне работает в центральном американском офисе Google в MTV (в должности Google SWE). Активно путешествует, фотографирует и познает мир — относит свой образ жизни к движению digital nomad. Не женат. Первая часть интервью взята в 2013 году, вторая — в 2014 году.

Многие айтишники уже привыкли к дорогим и хорошо оборудованным офисам, где они вросли корнями в свои рабочие места с несколькими мониторами, с халявной кухней и всегда стабильным Интернетом... Но даже среди программистов, любящих и ценящих эти простые радости любого гедониста, есть отдельные отщепенцы, которые живут кочевой жизнью бэкпэкера, не привязывая себя не только к офисному креслу, но и к стране своего местопребывания. Я предлагаю вашему вниманию интервью с молодым украинским программистом Сергеем Кищенко, который ведет сверхмобильный образ жизни и постоянно путешествует по миру. Программирование — основная его работа, она полностью превратилась в удаленный тип заработка. Он кодит в самолетах, рейсовых автобусах или в горах — вообще везде, где есть Интернет и возможность хотя бы немного сосредоточиться, чтобы работой отвлечься от своего бесконечного трипа длиною в жизнь. * * * В каких странах ты был, что запомнилось наиболее ярко? Только за последние три года я посетил (в алфавитном порядке): Азербайджан, Великобританию (3 раза), Грузию (2 раза), Данию, Казахстан, Камбоджу, Кению, Непал (3 раза), ОАЭ, Пакистан, Россию (неведомое количество раз), США, Таиланд, Танзанию, Турцию, Финляндию, Хорватию, Черногорию и Швецию. Как итог — в паспорте остался свободным лишь последний разворот. Самая интересная и восхитительная страна из моего списка — Непал. Прекрасные горы, дружелюбные непальцы, Beatles и Pink Floyd в местном исполнении в барах Катманду, грандиозные храмы и тихие монастыри. Что ты вынес из своих путешествий? Поделись своим практическим опытом. Вынес несколько основных вещей. Во-первых, стоит полагаться на себя. Человек способен на большее, чем может представить. Вовторых, подавляющее число людей в мире — добрые и неконфликтные. Не стоит верить новостям и не стоит бояться нехоженых троп. В-третьих, на путешествие ты потратишь столько времени и денег, сколько у тебя есть. Давай немного отвлечемся — почему ты стал именно программистом? Это случайность, расчет, желание родителей? Что для тебя программирование сейчас — средство заработка, самовыражения или...? В детстве увлекался математикой, точными науками, технологиями. Соответственно, и компьютерами. Первые программы писал еще для ZX Spectrum, спасибо старшему брату, который его собрал. На PC писал простенькие текстовые игры на Pascal и Basic. Помню первое приложение с GUI, это была игра Duck Hunt, написанная на Visual Basic, который можно было раскопать в поставке Microsoft Office. Сейчас программирование для меня — это хорошо оплачиваемое хобби. И почему же в итоге Сергей-программист стал таким ярым путешественником? Откуда взялась страсть к путешествиям на фоне довольно обыденной офисной профессии? Уверен, что дело в книгах, которые читал в детстве. Жюль Верн и Дюма, Сабатини и Стивенсон, Льюис и Конан Дойл — все они

писали о приключениях и путешествиях, чем и определили мою непоседливость. Все-таки программирование требует сосредоточенности и внимания, разве нет? Как ты реально работаешь в дороге, может, есть какие-то находки, приемы или хитрости? Стоит ли за таким специфическим образом жизни некая философия? О находках: чтобы успешно работать и путешествовать, нужно держать темп. Например, приехав в какой-то приятный город, можно две недели ходить по горам, сплавляться по рекам, исследовать достопримечательности, даже и не подходя к ноутбуку. А следующие две недели посвятить работе, по вечерам отдыхая и общаясь с местными жителями. Так, в режиме две недели через две недели, я обычно нарабатываю больше 80 часов в месяц, и этого вполне достаточно для оплаты счетов. Еще один совет: не пользоваться 3G-интернетом. Лучше выбрать хорошую кафешку с Wi-Fi и работать там. Приход в эту кафешку будет означать начало рабочего дня, это помогает сконцентрироваться. При должной сноровке можно даже следовать примеру Фейнмана и работать в барах под громкую музыку и разговоры. Это вполне реально, если задача действительно интересная. Философия же проста: пока молод, стоит набираться опыта и знаний, это как прочный фундамент всего остального. Широта взглядов и более глубокое понимание людей окупится в дальнейшем. Ну и carpe diem — не стоит терять возможности повеселиться. Несмотря на всю лаконичность твоего ответа, если позволишь, давай еще немного подебажим эту центральную тему интервью. Как я понимаю, есть две противоположные стратегии применительно к работе. Первая — это уход от мира, путь затворника или монаха, интроспекция бытия. Создание неких идеальных условий для стяжательства духа святого, отгородившись от всех соблазнов и грехов мира толстой офисной стеной. Применительно к ИТ это прежде всего Google-стиль — полностью самодостаточный навороченный офис со встроенной кухней (и желательно бассейном, массажной и тренажерной). Люди, работающие в таких условиях, обычно проводят свое рабочее время в наушниках («чтобы не отвлекали»), обставленные тремя или четырьмя мониторами по периметру («так удобней»). Ну прямо Царство Функциональности и Комфорта, дарованное работодателем для исполнения его Задач, тщательно отгороженное от всего бренного и социально ориентированного за пределами сего сияющего офиса. Противоположный стиль — это прыжок в гущу событий, абстрагирование от внешнего, какой-то спартанско-мобильный стиль работы на любой встречной кочке, где вроде бы и нет никаких условий для работы вообще, и все тебя во всем отвлекает... Но зато если ты адаптируешься к этому, открываются новые перспективы. В силу судьбы мне пришлось поработать именно в таких условиях в свое время, когда кругом стоял шум и гам, играла вовсю музыка, и мне приходилось решать довольно-таки сложные задачи, скрипя от натуги тогда еще молодыми мозгами. Я достиг уровня, когда степень погружения в задачу была такова, что люди, стоявшие рядом, не могли окликнуть меня, потому как я попросту не слышал голосов из внешнего мира. Коллеги, потерявшие надежду на традиционный коннект со мной, прибегали к болезненному тычку острым предметом в мое каталепсическое тело, чтобы я актуализировался в нашем временном континууме. Тогда я подумал, что такое программирование — это в прямом смысле медитация на коде, причем противоречивые внешние условия только углубляли уровень погружения (по принципу «что не убивает нас, делает нас еще сильней»). Что из этих двух полярностей предпочитаешь ты? Мне ближе второй вариант. Умение входить в поток посреди бушующего моря, запираться в башне из слоновой кости, быть одновременно и программой, и компьютером, исполняющим эту программу, — это одно из умений, которым программист должен владеть в совершенстве. Оно сродни первым этапам медитации, вот только конечной целью является не отрешение от мира, а как раз погружение и концентрация на одной-единственной вещи. И все-таки я хотел продолжить тему — если за окном прекрасное море, если за дверью новая и неизведанная страна, что ты говоришь себе, чтобы сесть за ноутбук и начать писать код? Наверное, недостаточно сказать себе что-то вроде «специально приперся за тысячу километров именно сюда, чтобы сейчас сесть и снова немного покодить»... Я хочу понять — в чем твой секрет такой настройки и самоконтроля?

Не стоит переезжать на новое место прямо перед двухнедельным спринтом. Если же новое место было вдоль и поперек исследовано за две недели до спринта, то не так уж и сложно заставить себя сесть за компьютер и писать код. Это ведь такое же хобби, как и путешествия, оно приносит порой ничуть не меньшее удовольствие. Эй, я уже слышу, что многие скептики бубнят себе под нос недовольно — на подобные путешествия в стиле нон-стоп у них нет ни времени, ни тем более денег. Что ты сказал бы в этом случае? Насколько подобный стиль жизни доступен рядовому программисту? Повторю, что на путешествия будет потрачено столько денег, сколько у вас есть, — это ключевая идея. Есть 200 долларов? Ну что же, это вполне может быть бюджетом на месячную поездку в Грузию, Армению и Азербайджан, включая авиаперелеты. Есть 800 долларов? Добро пожаловать на два месяца в Индию или Непал, включая авиаперелеты. Нет денег вообще? Вам повезло, страны СНГ займут вас на полгода, и первый встречный будет готов вас подвезти, накормить и вписать у себя дома. Кроме того, вот вам мое эмпирическое наблюдение: путешествовать дешевле, чем жить оседло. Например, на месячную жизнь в Сан-Франциско в нормальных условиях (включая съем квартиры) у меня уходит в среднем 4000–5000 долларов. На том же Бали за 1000 долларов можно снимать собственную виллу с бассейном плюс питаться исключительно натуральными и свежими овощами и фруктами. Конечно, Бали — это ощутимо дороже, чем Таиланд, поэтому даже за 400–500 долларов дохода можно найти места, где вы будете чувствовать себя королем. Мои друзья в Сан-Франциско часто спрашивают меня: «Как ты можешь себе позволить так много путешествовать?» Мой ответ звучит для них диковато — я не могу позволить себе не путешествовать. Попытки осесть в Сан-Франциско или в Москве постепенно делали меня банкротом. Касательно времени — давно прошли те времена, когда человеку приходилось работать в поле от рассвета до заката, чтобы только прокормить себя. В современном мире полная занятость — это всего лишь способ спасти общество от реалий «Заводного апельсина», ведь свободное время далеко не всем идет на пользу. И здесь у меня для вас парадоксальный эмпирический вывод: путешествия делают меня продуктивнее. Я больше отдыхаю и меньше, но лучше работаю. Отсюда совет — не нужно работать так много. Не берите кредитов, не покупайте модный автомобиль, не подписывайтесь на ипотеку, особенно пока вы молоды. Забудьте о покупке нового телефона каждый год. И вы поймете, что вы зарабатываете слишком много денег, значит, можно работать и меньше, освобождая в своей жизни место для открытий. Конечно, чисто лишь для порядка тут нужно чуток побухтеть о будущем: как ты себя видишь лет в пятьдесят? Квартира, машина, счет в пенсионном фонде, все дела... Или одинокий седовласый программист, кодящий очередную свою программу где-то на дымчатых вершинах Непала? Говоря иначе, многие выбирают стратегию «пока молодой, предусмотрительно работаю на свою старость», но не реализацию биржевой стратегии «хватай и беги», спуская все свои деньги в том числе на свое беспорядочное перемещение в пространстве. Современные украинские реалии таковы, что пенсионный возраст у мужчин выше, чем средняя продолжительность жизни. Понимание этого факта мешает «работать на старость», так как существует большая вероятность просто не дожить. Ну и как говорил Марк Твен: «Через двадцать лет вы будете более сожалеть о том, чего не сделали, чем о том, что вы сделали». Я предпочитаю делать то, что мне позволяют молодость и определенный уровень свободы. Это не отменяет карьерных устремлений. Как оказалось, это не так трудно совмещать. Давай вернемся к кодингу — какова сфера твоих профессиональных интересов в плане программирования, какие платформы и языки ты юзаешь? Основные используемые языки — C++ и Python. Основные платформы на текущий момент — *nix-like, iOS. Больше всего опыта — в Mobile Development и Web Services Development. В первом нравится ограниченность доступных средств, это заставляет искать качественные решения. Во втором ресурсов больше, но и требования выше, так что качество программ и алгоритмов должно быть никак не ниже.

Профессиональные интересы в плане программирования — дизайн систем, высокопроизводительное (низкоуровневое) программирование, функциональное программирование. Испытываю определенную нелюбовь к программированию GUI, но имею интерес к нестандартным средствам HCI, например Computer Vision. Какие у тебя личные впечатления от платформы Windows Mobile? Знаю, в свое время ты вложил в нее много сил и энергии. К Windows Mobile отношусь ностальгически. Уже довольно длительное время ничего не писал под эту платформу, хотя она была очень неплоха в свое время. Радовала свобода, которую предоставляла платформа по написанию самого разнообразного софта. Так, было 2–3 способа перехватывать звонки и 2–3 способа перехватывать отправку сообщений. Все эти способы мы использовали для перенаправления звонков и сообщений на более дешевые каналы. Но здесь же крылся и один из недостатков платформы — приходилось использовать все способы, потому что не было одного, который бы работал на всех телефонах всех вендоров. Порой удавалось найти что-то, что работало везде и всегда, но оно оказывалось недокументированным и опасным. Расскажи про свое мобильное рабочее место. Какое железо, какой софт, как все используешь — наши читатели жаждут технических подробностей. Macbook Pro 8.2 c dual boot: Mac OS X плюс Gentoo Linux. На последнем Gnome плюс XMonad, Firefox плюс Vimperator в качестве браузера, Sublime Text 3 плюс SublimeClang в качестве редактора и IDE для С++/Python. Sublime Text 3 используется в качестве редактора и на Mac OS X. Для всего остального — командная строка, urxvt под Linux и iTerm2 под Mac OS X в качестве терминалов. Для связи с внешним миром — Skype и Gajim. Для обработки многочисленных фотографий — darktable. Ты везде утверждаешь, что путешествие для тебя — хобби, программирование — тоже... А что же тогда работой-то является? Хобби — это все-таки подчеркивание любительского характера занятий, чтоподразумевает, что есть что-то более главное, на что тратится основное время и силы — работа. Что для тебя является такой работой? Видимо, у меня какое-то свое собственное определение хобби. Так, я писал программы и до того, как мне стали их заказывать и я начал продавать свой труд. Если бы я выбрал, например, профессию врача, то все равно бы продолжал писать программы, только бесплатно. А так мне за них еще и деньги платят. По твоим дорожным впечатлениям, каковы основные отличия в ментальности наших постсоветских людей, западных, а также азиатских? Или в общих чертах таких отличий нет, за исключением каких-то национально-религиозных импринтов? Отличия есть, но они далеко не такие серьезные, как может показаться. Не более чем отличия между людьми как таковыми, не стоит недооценивать девиации менталитета жителей даже одного региона. Все же существует определенная разница традиций. Так, западная культура — культура индивидуалистов, людей, которые уезжают из родительского дома в юношеском возрасте, чтобы получить образование, и никогда не возвращаются, а стараются жить собственной жизнью. Восточная культура — общественная и семейно-традиционная. Молодой азиат не мыслит себя без своей семьи, он строит собственную как придаток существующей, это элемент коллективизма. Постсоветские люди в этом плане — смесь традиционных и индивидуалистичных настроений. Соответственно, на Западе залогом твоего успеха являются твой же труд и твои же заслуги. Ты гордишься собой, но и винишь во всем исключительно себя. Тебя учат быть самодостаточным и опорой себе самому, быть взрослым. На Востоке твои успехи — лишь часть успеха семьи, но и неудачи тоже делятся на всех. Когда оказываешься в таких далеких краях, как Кения или Непал, не сильна ли ломка организма из-за отсутствия Интернета? Или я ошибаюсь и связь там есть, так же, как и у нас, — практически везде? В том же Непале куда большая проблема с электричеством, чем с Интернетом. Регулярные отключения приучили аборигенов пользовать

ся автономными источниками питания, и первое, что подключают к такому источнику, — Wi-Fi-роутер. Кения также является одной из самых развитых стран африканского континента. Столица Найроби — вообще финансовый центр и с виду превосходит размерами и развитием любой украинский город. На вопрос про ломку — бывает не интернет-голод, а скорее информационный голод. Например, когда ты долго ходишь по горам без книг и привычных RSS-подписок, мозг расслабляется и начинает требовать обычной дозы текста, чтобы хоть немного поработать. Помню, после десяти дней в Гималаях, спустившись к цивилизации, первым делом в местной лавке мной был куплен «Парфюмер» Зюскинда и прочитан тут же, несмотря на усталость и четыре утра. Как относятся твои работодатели и родители к такому сверхмобильному образу жизни? Работодатель, с которым я провел большую часть путешествий, относился с пониманием. Это было взаимовыгодное сотрудничество, ведь найти хорошего программиста и подождать, пока он выйдет на нужную скорость, намного сложнее, чем просто не терять существующих программистов. Сейчас я нахожусь в процессе смены работодателя, подозреваю, что доверие следующего еще предстоит завоевать, слегка ограничив перемещения и доказав собственную состоятельность. Родные скучают, но видеоконференции сильно помогают разогнать грусть. Кстати, что значит твой сетевой ник tilarids? Никакого особенного значения в нем нет. Когда-то давно мне надоело, что все простые и понятные ники, образованные от имени-фамилии, оказываются заняты для регистрации, поэтому я выбрал слово, которое было сложно найти в Google-поиске. Само слово — переложение рунической надписи, которую наносили на наконечники стрелы или копья в качестве заговора. В заключение интервью что можешь посоветовать молодым и «красноглазым» программистам-джуниорам, которые просиживают за компом по 24 часа в сутки?Мой совет может показаться кому-то странным. Но не стоит вообще ударяться в профессиональное программирование, пока вы школьник или студент. Вы успеете еще наработать свой программистский опыт, а вот опыт студенческих вечеринок будет получить сложнее. Поэтому если вы материально можете себе позволить не работать — не работайте. Пусть программирование побудет еще какое-то время неоплачиваемым хобби. * * * Год назад я брал интервью у украинского программиста Сергея Кищенко, который постоянно дрейфует между континентами и культурами, создавая код в непрерывном движении во времени и пространстве. За спиной у Сергея осталось 60 стран, когда на его пути возник оффер от Google USA с предложением заякориться в самом сердце Силиконовой долины — Mountain View, California (MTV). Такая вот ирония судьбы — этого свободолюбивого кочевника «поработил» Гугл. Узнав, что он принял это предложение (признаться, я был удивлен его согласием, зная его свободолюбивый украинский характер), я решил встретиться с Сергеем еще раз, чтобы узнать о впечатлениях прожженного бэкпэкера и космополита от США и Гугла. Во время интервью я применял продвинутые гипнотические техники, чтобы обойти NDA, и вот что из этого получилось. Сергей, я уже задавал тебе этот вопрос в нашем прошлом интервью, но многие продолжают монотонно щемить меня в комментах: как можно писать по-настоящему сложные программы, при этом каждодневно дрейфуя в новые места и культуры, находясь в перманентном движении? Люди беспокоятся и жаждут дискурса: уж не говнокодит ли ваш Сергей? Очевидно, что офисному большинству для программирования нужны уединение, полная концентрация, социальный пакет и гробовое спокойствие, тогда как непрерывная дорога за окном, мелькающие пейзажи и страны лишают почти всего этого. Разреши еще раз пристать с этим вопросом к тебе: как можно научиться программировать, находясь в потоке суеты и отвлекающих моментов? На качество моего кода можно посмотреть на  tilarids, хоть там и не лучшие образчики.

Теперь про программирование в движении. Написание кода происходит не тогда, когда вы стучите по клавиатуре и код появляется на экране. Процесс созидания идет у вас в голове, причем хороший инженер одновременно удерживает в голове и созидаемый код, и машину, на которой этот код будет работать, да еще и постоянно прогоняет код через машину. Поэтому для того, чтобы писать хороший код, вам действительно нужно спокойствие, но спокойствие в вашей собственной голове. Нужно сконцентрироваться, отбросить лишние раздражители, оставить себе только то, что важно в этот момент. Каждый человек достигает концентрации внимания разными способами, например можно запереться в комнате без внешних раздражителей, можно научиться медитации у йогов, некоторым помогает кофе, никотин и витаминки-ноотропы. Мне же достаточно музыки в наушниках. Как научиться этому? Пробовать разные варианты и развивать концентрацию внимания постоянными тренировками. Не сдаваться, упорствовать. Все. Бэкпэкинг в твоей жизни отчасти позади, ты угодил в хорошо расставленные сети опытных гедонистов из Google. Как это произошло? Можешь рассказать предысторию и общие впечатления от своих собеседований? Путь в Google у меня занял очень много времени, собеседования приходилось переносить из-за путешествий, я хотел работать в Mountain View и, соответственно, получал рабочую американскую визу, а потом ждал до осени, чтобы ею воспользоваться. В итоге впервые мне написал рекрутер из Google в мае 2012-го, а первый рабочий день был в октябре 2013-го. Впрочем, моя ситуация — это скорее исключение, и я был совсем не против потратить побольше времени на путешествия. Тем более что весь процесс никак не мешает ни работе, ни жизни. Все собеседования интересные, хорошо подготовленные, и мне доставляло удовольствие простое участие в процессе. О том, как проходят интервью в Google, написано уже очень много, но если кратко, то пришлось пройти несколько созвонов с рекрутером (организационные вопросы), несколько телевидеофонных интервью (алгоритмы, общие вопросы) и один onsite-визит — пять интервью подряд по алгоритмам, общим вопросам и дизайну систем. Логических задачек, вопросов про круглые люки, а также тестов по особенностям языков программирования на интервью не было. Очерти техническую область, в которой ты варишься сейчас, согласившись на наем со стороны Google. Техническая область сильно отличается от того, чем я занимался до этого. Data Analysis, Data Mining, Machine Learning, Big Data. Это очень близко по духу к академическим исследованиям, приходится читать научные статьи, а сопроводительная документация к системам сама может потянуть на статью в журнал. При этом в Google давно перебороли все акцидентные сложности, и писать код, перемалывающий гигантские массивы данных, очень легко и просто. Если интересны технические подробности, то можно почитать недавний анонс на Google I/O 2014. Покончив с бэкграундом, давай теперь я заставлю тебя вернуться назад во времени. Какие были первые и самые сильные впечатления от первой недели работы в этом поисковом ИТ-гиганте? Что запомнилось больше всего или удивило после того, как ты спустился из очередного горного трэка в сверкающий кампус Google в MTV? По моему сигналу ты закрываешь глаза, засыпаешь и рассказываешь, как это было на самом деле... Разглашать конфиденциальное здесь все равно нельзя, даже находясь под гипнозом, но какие-то отдельные личные впечатления могут быть интересны и для других. В Google просто до фига всего происходит. «Базилион» технологий, «хренилиард» серверов, чертова уйма людей. Не знаю, как этот масштаб разработки лучше вербализировать. Атмосфера же, ощущение свободы, технические детали процесса разработки — все это не очень удивляло после четырех лет моей работы в Quickoffice, где все было организовано примерно так же. Внутреннее устройство успешных компаний вообще очень сходно. Correlation does not imply causation, но это все же повод задуматься руководителям. Как и в любой нормальной компании, в Гугл развит dogfooding — эксперименты с новым софтом на своих же сотрудниках. И что я вам хочу сказать, глядя на все изнутри, если вы когда-либо матерились на про

дукты Гугла или жаждали какую-то новую фичу, то почти наверняка все уже «напедалено» и тестируется прямо сейчас. Похоже, я не самый глупый из толпы новичков, которые начали работать по H1-B визе. Это удивительно, но тешит мое ЧСВ. Окружающие — не сплошь математические гении, победители различных олимпиад, а просто хорошие умные инженеры. Ты можешь у них чему-то научиться, но и они могут учиться у тебя. Иначе говоря, приятно сознавать, что тот опыт, что ты получал до этого, ценен и здесь. Отдельно приятно удивили Project Managers. Они поднимаются по отдельной карьерной лестнице, а их работа — помогать разработчикам с коммуникациями и ведением проектов. И они это умеют! Например, умение вести митинг так, чтобы за отведенное время успеть обсудить все, — это вроде и мелочь, но подавляющее большинство менеджеров в Украине на это не способны. В Google же митинги идут столько, сколько заявлено (или меньше). Продолжаем медленно вспоминать — какие были первые впечатления от Силиконовой долины?.. Долина тоже довольно сильное впечатление произвела. Меня сейчас окружают тысячи и тысячи умнейших людей. Они все приезжают сюда, чтобы учиться в Стэнфорде и Беркли, работать в Фейсбуке или Гугле. Большинство из них тратит деньги на благотворительность и ведет здоровый образ жизни. Велосипедистов кругом немерено. В тренажерных залах постоянно толпы. В 6:30 утра ты точно не будешь единственным человеком, который вышел на пробежку. Концентрация миллионеров зашкаливает, и только от тебя зависит, будешь ли ты сам миллионером завтра. Знаешь, какое слово приходит мне в голову, когда я вижу все это? Евгеника. Множество целеустремленных мальчиков и девочек приезжают сюда со всего мира, и они передадут свою целеустремленность и хватку своим детям. Порой думается, что кто не успел вскочить в этот плавильный котел, навсегда останется позади (позади останутся в том числе и их наследники). Насколько программисты вокруг тебя аполитичны или, наоборот, — вовлечены в общественно-политические проблемы США (или своейродной страны), находясь в самом центре благополучной, богатой и сверхстабильной Америки? У широких народных масс принято считать, что кодеры проводят большую часть своей никчемной жизни в неких виртуальных мирах по ту сторону монитора, поэтому им нет никакого дела до происходящего вокруг. Так ли это? Судя по моему опыту, в Украине/Беларуси/России программисты — как раз наиболее общественно-политически активная часть населения. И даже переехав в США/Европу, они продолжают волноваться о судьбе родных стран, пытаются отстаивать свою позицию удаленно. Так, эмигранты-россияне готовы покупать по несколько подписок «Дождя», лишь бы поддерживать в живых хоть какой-нибудь оппозиционный телеканал. И когда некоторые СМИ заявляли, что украинский Майдан спонсируется Америкой, они были в чем-то правы, потому что хорошо видно, что поток пожертвований до сих пор не иссякает. К общественно-политической жизни США программисты скорее индифферентны, причем как приезжие, так и коренные американцы. Возможно, сказывается то, что даже и американцы здесь работают часто из других штатов, очень много новоприбывших, и у них еще не сложилось восприятие окружающей действительности как своей территории. У Гугл очень разнородный по национальному признаку коллектив разработчиков. Есть ли какие-то сбои в коллективе из-за разности менталитетов и культурных кодов, упакованных в одной точке пространства и времени, но работающих над общей задачей? Люди на самом деле все одинаковые, флуктуации в поведении из-за особенностей менталитета минимальны и в рабочей обстановке незаметны. Так что никаких проблем. И плавильный котел работает скорее не на сплавление менталитетов, а на сплавление опыта, знаний, умений. Разве что приходится понимать самые разные акценты, но это не так и трудно. Какова политика управления Гугла, как все это скопление гениальных людей «процессится»? Особенно, когда интересы одной творческой личности переезжают интересы другой катком личных амбиций? Как лучше всего купить лояльность у высококвалифицированных сотрудников с точки зрения Google?

O’кей, давай поговорим о политическом устройстве Google. В компании работает ну просто до фига сотрудников, больше, чем граждан в некоторых странах. Поэтому можно рассматривать компанию с политологической точки зрения. Так это вполне себе конституционная монархия, никаких выборов монарха, хотя монаршая власть здесь ограниченна. Интересно, что при этом лояльность сотрудников довольно высока. То, что компания платит денежку, это всего лишь половина ответа на вопрос «почему?» (каждый сотрудник Google приносит компании профита больше, чем ему платят). Важно то, что в компании развит механизм эскалации. Так, раз в неделю можно нагло задавать неудобные вопросы Пейджу и Брину напрямую (я говорю про мой офис в MTV, в других офисах это сложнее). Да и до своего Director of Engineering/VP не так далеко идти, если вдруг чего. Очень развита культура «бунтарства». Пока внешний мир скандалит: «Google снова сделал что-то не то, ай-яй-яй», настоящий кипиш поднимается внутри компании. И что самое главное — «монархи» прислушиваются к проявлению недовольства сотрудников. Частенько признают ошибки. Рассказывают, как будут исправлять. Такая вот вторая половина ответа на вопрос лояльности. И главный вывод: демократия не является той серебряной пулей, которая решает все проблемы социумов. Демократия — всего лишь один из вариантов эскалации проблем и влияния на решения (посредством предвыборных программ и голосования). Но есть и другие варианты. И да здравствует бунтарский дух! Кстати, про бунтарский дух и твою «рiдну Украину». Есть такое мнение, что программисты изначально созданы для эмиграции, потому что их умения и работа напрямую интегрированы именно в западную часть экономики. Таким образом, говоря предельно общо, карьера в области программирования часто понимается как переход из-под цепочек многочисленных посредников, через которые работает тот же местный аутсорс, прямо к западному работодателю. В конечном счете трудоустройство в череде таких оптимизаций чаще всего влечет переезд и эмиграцию в офисы крупных западных компаний, чтобы работать и получать на равных с западными коллегами. Многие трудящиеся воспринимают такую позицию непатриотичной. Ты уехал еще до всей этой украинской революционной заварухи, каквообще относишься к такого рода утверждениям о «вечном неоплатном долгу перед Родиной»? Как относишься к «безродности» космополитов, которых среди программистов, наверное, большинство (в рамках которых Родина отходит на второй или третий план, а личная возможность развиваться и зарабатывать выпячивается на первый)? Иначе говоря, программеру не только хорошо платят, но высокая ликвидность и мобильность профессии дает ему возможность жить где угодно «самому по себе» (языком покера — это Double Joker), тогда как другие обыватели невольно пристегнуты к государству с его многочисленными проблемами и личными имперскими тараканами правителей. Насколько моральна или эгоистична позиция бегущего с тонущего судна космополита? Что для тебя эмиграция, почему ты решил работать именно за рубежом, а не остался в родном Харькове («и как один умрем в борьбе за это»)? Лев Толстой еще в начале прошлого века писал о том, что патриотизм устарел, что он должен быть уничтожаем всеми силами и способами. Если бы ко Льву Николаевичу прислушивались, то, возможно, и не было бы мировых войн, не было бы миллионов погибших, не было бы и разрушенных судеб сегодня, ведь войны не прекращаются ни на минуту. Так что я антипатриот, и любые патриотические чувства считаю вредными. И если уж говорить о каком-либо долге, то я готов принять долг перед планетой, перед человечеством в целом. Для меня космополит — это не эгоист без роду и племени, космополит родом с планеты Земля (я готов расширить определение, как только станет ясно, что мы не одни во Вселенной). Соответственно, эмиграция — это просто переезд из комнаты в комнату в пределах одного здания. В одной из комнат летом прохладней, и летом вы предпочтете спать там. А зимой можете вернуться назад, на свой старый продавленный диван. Также и США меня заинтересовали Силиконовой долиной, возможностью учиться у лучших инженеров этой планеты в одной из лучших компаний этой планеты. Если бы головной офис Google был в Харькове, я бы и не уезжал никуда. Ситуация в Украине в этом контексте воспринимается сложно. Очень тянет поехать, помочь. Но не совсем понятна причина происходящего: эта заваруха из-за того, что одна из сторон воюет, считай, против всего человечества, против истины и свободы; или все же из-за того, что в спинном мозгу остался зудящий патриотизм, который так про

сто не вытравить. К тому же не хочется калечить людей. В результате масштабных внутренних битв помогаю удаленно, чем могу. Думаю, это самый эффективный возможный мой вклад. Страшусь этой темы, но все-таки спрошу у программиста-космополита со стажем, посетившего более 60 стран мира, — каково твое отношение к политике? У меня есть хороший совет, как экономить время на политических дискуссиях: перестаньте спорить с позицией собеседника. Вам совершенно не нужно много думать, как, например, евроинтеграция повлияет на учителей, сельское хозяйство, компанию «Рошен» и сталелитейные заводы. Прикиньте, насколько это повлияет лично на вас и ваших близких. Позвольте это сделать остальным. Вас рассудят закон больших чисел и принципы демократии, и драгоценное время не будет потрачено на пустые доказательства. Можешь подвести некий итог, просуммировать свои впечатления: что тебе больше всего нравится в Америке и, наоборот, — что не нравится? Я не могу сказать про все штаты, но я могу сказать про Калифорнию, про San Francisco Bay Area. Очень нравится, что люди массово увлекаются спортом, заботятся о своем здоровье. Такая обыденная любовь к жизни, к себе, к окружающим. Проявляется везде и во всем. У нас это очень непривычно. В качестве негатива: в Штатах нефиговая проблема с квартирными кражами. Причина проста — полиция плохо финансируется и на расследование таких мелочей просто не хватает людей. Тем более что страховая покроет утраченное за вычетом deductible (обычно 500 долларов). Арендовать апартаменты в Штатах дорого и мучительно больно. Своя жилплощадь здесь редкость, куда чаще люди всю свою жизнь снимают. Или берут ипотеку, что может быть даже больнее. Поэтому квартиры обычно сдаются на длительный срок: от 6–12 месяцев. Выехать раньше можно, но для этого нужно выкупить контракт. Стоимость buy out у меня — полуторамесячная рента. Сам лизинговый контракт полон прекрасного: указаны разрешенные цвета жалюзи, прописан статус «медицинской марихуаны», в качестве форс-мажоров указано в том числе и божественное вмешательство, отдельная статья посвящена млекопитающим (mammals) в квартире. Что удивительно, агенты по недвижимости не вызывают ненависти. Заходишь на craigslist, смотришь объявления, звонишь и попадаешь на владельца или его представителя, а не на частного маклера, готового за 200 баксов найти похожую квартиру. В специально оговоренное время заинтересованные приходят на смотрины, тут же можно подать application. Стоимость application — 30–45 долларов. В случае подтверждения платишь депозит (1–2 месяца ренты, правило хорошего тона — по возврату депозита приплачивать проценты, которые бы набежали на этот депозит в банке), оплачиваешь первый месяц — и въезжаешь. Обычно квартиры без мебели, но с оборудованными кухнями. Еще приятная особенность — апартаменты часто объединены в коммьюнити, я как раз в таком и живу. В стоимость аренды включен доступ к общественному тренажерному залу, небольшому открытому бассейну, площадке для барбекю. Довольно полезным ништяком является то, что «на ресепшене» могут принять посылку в рабочее время, это удобней, чем доставлять в офис. Еще про впечатления от США: лично мне не нравится рельсовость, накатанность жизни в целом. Материальная обеспеченность отнимает желание стремиться к большему. В Bay Area стремлений и амбиций побольше, конечно, но тем не менее. Также из неприятных для меня вещей в США — это компании, чья бизнес-модель построена на эксплуатировании законов. Так, о патентных троллях знают все. А вот вы слышали о юридических фирмах, которые ищут жертв неудачно прописанных медикаментов? Так и идет реклама по местному телевизору: «Если вам прописали X, а у вас были такие-такие побочные симптомы, звоните нам, вам полагается денежная награда». И реклама по соответствующим запросам в том же Google стоит безумно дорого, то есть у этих сволочей хватает прибыли, чтобы еще и рекламу давать. Этот мир явно требует серьезной оптимизации. Может, в последнем и выражается звериная сущность американских юристов — этаких санитаров леса в обществе и государстве, ревниво

стоящих на страже этой самой нерушимой законности, стабильности и порядка, что и порождает в качестве того же побочного эффекта рельсовость и накатанность жизни? Юристов действительно много. В этом плане пару раз замечал интересное — при переезде в США/ Европу бывшие жители СНГ прекращают качать фильмы с торрентов. Но не потому, что никто так не делает и это воровство, а просто боятся, что их попалят. И с интересом расспрашивают друг друга, не было ли с торрентами проблем? Так что все это пиратство и презрение к копирайтам от безнаказанности. Когда в следующий раз будете качать фильм/музыку с торрентов, хотя бы себя не обманывайте, что это потому, что «все качают». Ну и, конечно, влияет то, что легально купить фильм проще, чем скачать с торрентов. Давай теперь поговорим более плотно про ИТ. Бытует мнение, что у Google есть любимые языки программирования (ЯП), то есть объективно востребованные скиллы внутри самой компании. Как пример, твой любимый Python часто называют очень популярным в рамках внутренних проектов Google. Можно ли очертить круг наиболее интересного для этого поискового гиганта на программистском рынке? Любимые языки в Google — это те, которые позволяют выпускать продукты и запускать сервисы. В основном это мейнстримовые языки вроде Java, C++, Python, JavaScript. Они не просто так мейнстримовые — это действительно лучшее, что есть сейчас среди ЯП. Но, вообще говоря, используемый язык — это побочный скилл. На интервью по языкам вас могут спросить разве что о том, как вы относитесь к той или иной особенности ЯП, что бы вы хотели исправить. То есть это скорее вопрос по системному дизайну, чем по языку. Иначе говоря, язык программирования — это как разговорный язык. Чтобы работать в Google, нужно более-менее изъясняться на английском, потому что на этом языке говорит вся компания. Поэтому нужно уметь свободно писать код на каком-то из мейнстримовых языков программирования. Впрочем, этому учат в любом инженерном вузе, а попасть в штат Google без высшего образования довольно трудно. Спектр же применяемых технологий настолько широк, что очертить определенный круг никак не получится. Ведь компания не только пишет поисковик, но и занимается исследованиями в области искусственного интеллекта и машинного обучения, производит автомобили и воздушные шары, разрабатывает Android OS и Chrome OS. Поэтому Google пытается нанимать инженеров широкого профиля (generalists). Сужаю и персонализирую первоначальный вопрос: какие технологии сегодня поражают тебя и какие языки программирования будут рулить на массовом рынке в ближайшие пять лет? Если можно, сделай прогноз, что сейчас наиболее перспективно и востребовано на кухне топ-разработчиков. Я люблю функциональные языки программирования, и мне радостно видеть, что они постепенно приобретают все больший вес в области обработки данных. Но это не означает, что мейнстримовые языки куда-то исчезнут и на их место придут другие. Знаете, почему и через десять лет мы будем писать на С++, а не на каком-нибудь другом языке? Потому что современные компиляторы С++ оптимизируют так, что просто диву даешься. Например, посмотрите1: я попытался обмануть компилятор так, чтобы он не оптимизировал пробрасывание временного значения в функцию bar. Что из этого вышло — сами видите. Возможно, Go и Dart удастся немного потеснить Python и JavaScript, но не более того. Предвидеть же, какие технические направления будут горячими через пять лет, я не берусь. Впрочем, всем карьеристам еще не поздно вскочить на поезд Artificial Intelligence и Machine Learning, они вряд ли скоро пропадут с горизонта. Действительно, ничего революционного в твоем списке языков и технологий нет. Тем не менее знакомые девелоперы часто брюзжат слюной, что технологии создания программных продуктов не прогрессируют с 60-х. В чем суть этого скепсиса? Давайте лучше поговорим о философии программирования, которая тоже не меняется с середины прошлого века, — это будет более общим случаем предложенной темы. Итак, программированием правит утилитаризм. «Premature optimization is a root of all evil» — говорит нам старина Кнут, и мы вспоминаем

1

о производительности только тогда, когда уже поздно. Пятидесятикратное падение производительности? Да пофиг, будем писать на Python в 3 строки! Четыре гига «оперативы» ушло в никуда? Еще раз пофиг, зато мой pure functional язык позволяет мне выражать мысли монадами! Недавно коллеги обсуждали невероятные тормоза LibreOffice при прокрутке документа с SVG. И это на современных персональных компьютерах текущего года. Мне особенно больно это слышать, потому что я почти 4 года проработал над офисным продуктом, который изначально затачивался под мобильные устройства. Это Excel, который работает на мобильном 20-мегагерцовом процессоре. Word, занимающий памяти меньше, чем документ, который вы открываете. Но пришло время айфонов и айпадов, и я лично наблюдал, как деградировал наш продукт, когда снимались определенные ограничения. На первом iPad можно было легко откушать до 64 метров памяти без риска быть убитым, это было роскошью, и приложение летало. К появлению iPad Retina приложение уже хотело под 300 метров в определенных случаях, а на первом iPad тормозило. Аналогичная деградация наблюдалась в Android-версии. Изначальный лимит в 16 Мбайт для поддержки слабых андроидофонов был вскоре забыт, основная разработка велась под Android-планшеты, которые могли поспорить в производительности со слабенькими персоналками. К чему это привело, вы все сможете посмотреть в Android 4.4 KitKat, в ванильной поставке которого должен быть тот самый офис. Мой вывод — виновата философия программирования, которая сделала создание программных продуктов чисто утилитарным действием. Программирование сегодня — это как написание картин для того, чтобы дырку в стене прикрыть. Модернизация «алгебры» этого процесса приведет лишь к тому, что качество картины будет выше с точки зрения ее возможностей лучше висеть на стене и прикрывать дырку. А вот что делать, чтобы программирование стало искусством, а не ремеслом? Возможно, такая возможность уже безнадежно утеряна. Давай, глядя с вершины всех этих зияющих проблем отрасли, попытаемся дать дельные советы начинающим программистам. Ты — состоявшийся программист. Оглядываясь назад, анализируя свои поступки и мотивы, можешь ли ты сам себе объяснить, в чемсекрет или формула успеха на этой стезе? Очень многие молодые люди стремятся стать айтишниками, но далеко не у всех в итоге получается что-то путное. Глядя изнутри индустрии, что можно выделить главное в характере, профессии и обстоятельствах, которые способствует успеху именно в ИТ? Какие общие советы ты бы дал начинающим программистам? Еще в прошлом интервью я советовал начинающим программистам больше времени наслаждаться детством и юностью и поменьше думать о карьере, пока есть такая возможность. Если же пришла пора о ней задуматься, то важнейшими качествами являются уверенность в себе, смелость и упорство. Это истинно не только для ИТ. У каждого человека свой путь к вершинам. Смелость и уверенность в себе позволяют сделать первый шаг. А после первого шага становятся очевидными трудности, которые доведется преодолевать. И здесь поможет только упорство. Дополнительно, что бы ты пожелал молодым коллегам-программистам, которые в душе симпатизируют евгенике и горят желанием трудоустроиться в таких местах силы, как Google? Так уж ли страшен этот заморский «поисковый черт», как его малюют? Молодым коллегам-программистам в этом плане совет: убежден, что Google — идеальный выбор именно в качестве вашего первого места работы. Не нужно бояться, что у вас не хватит опыта, в интернатуру берут вообще без какого-либо опыта. Важны ваши знания, образование и желание работать. Также Google отлично подходит тем, кто уже имеет инженерный опыт, но желает научиться большему. Там также найдется место и для зубров от программирования, но последние вряд ли нуждаются в моих советах. Тем, кто желает подготовиться к интервью, очень советую курс алгоритмов от Роберта Седжвика из Принстона1. Это лучшее из того, что я знаю. Не мешает ли такая напряженная офисная работа твоим активным путешествиям? Мне кажется, что суперкомфортный Google — это прямая антитеза твоим дауншифтерским трипам по захолустьям цивилизации. Как ты совмещаешь эти две разные концепции?

1

Да, такая работа мешает путешествиям в далекие края. Но Калифорния знаменита тем, что многие интересные места находятся совсем недалеко. Я стараюсь выходные проводить вне города, и за уикенд можно забраться в горы (огромная горная система Кордильер), побродить меж озер в Йосемити, добраться до Долины смерти, доехать/ долететь до Большого каньона. Зимой доступны прекрасные лыжные курорты, круглый год можно заниматься серфингом, виндсерфингом, кайтсерфингом, ходить на парусных яхтах. А горновелосипедные маршруты такие классные, что я уже чуть себе все не переломал. (Смеется.) Знаю, теперь ты путешествуешь в «корпоративном подпространстве» по разным офисам Google. Каково оно? К сожалению, я был только в некоторых из них. Впечатляет, конечно, головной офис в Маунтин-Вью, который уже давно превратился в маленький городок, а также офис на Манхэттене, в котором легко заблудиться, а чтобы быстрее передвигаться по этажам, активно используют самокаты. В целом же путешествий, конечно, не хватает. Но, как известно, на другом берегу трава всегда зеленее. Когда путешествуешь, начинаешь мечтать о спокойных посиделках с друзьями, часами зависаешь в видеозвонках. Но стоит провести вне путешествий какое-то время, как снова тянет в горы, в новые страны. И так один этап неизбежно сменяет другой, это естественно. Сейчас у меня фаза жизни с меньшим количеством путешествий и большим вниманием к работе и инженерии. Кстати, насколько в Google гибкий распорядок дня? На собеседовании мне рассказывали истории, что якобы некоторые гуглеры не только работают на эту компанию нон-стоп (это произносится с оттенком гордости от выпавшей им великой чести), но и буквально спят в офисе, настолько он похож на самодостаточную экосистему, идеальную для застревания в ней любого холостого программера-гика, неравнодушного к своей профессии. График работы очень гибкий. Но в Google ведь бесплатные завтраки, обеды и ужины, и вот они ограничены по времени. Хочешь попасть на завтрак — приходи до 9:30. Опоздал — можешь позавтракать овсянкой или хлопьями на микрокухнях. Такой распорядок очень мягко загоняет всех сов в офис пораньше. Плюс не стоит забывать о «митингах». Ты можешь участвовать в них откуда угодно, но удобней всего это делать из офиса, поэтому если у тебя раннее совещание с командой из Европы (из-за разницы во времени), то ты вынужденно приходишь пораньше. Да, переночевать в офисе можно, ведь на территории легко отыскать душ и даже есть «тихие комнаты». Есть и прачечные, где можно постирать одежду, да и все офисы открыты круглосуточно. Но эта возможность нужна скорее на всякий случай. Из моих личных знакомых никто ею не пользовался, а у меня в офисе Google ночевал только велосипед. Тем не менее в чем секрет твоей производительности? Где находить силы, чтобы столько читать, работать в полную силу, да и путешествовать, фотографируя все кругом? Может, это результат какогото хитрого мировоззрения или страсти к переменам? О, есть очень простая техника. Нужно записаться на курсы китайской каллиграфии, бальные танцы, уроки испанского и гитары, пообещать всем на работе закончить важный проект раньше срока, договориться с друзьями пойти в поход на все выходные. В общем забить всю неделю так, чтобы ничего не успевать. Продержаться семь дней, а потом убрать бальные танцы и испанский. Это освобождает кучу свободного времени, и ты легко успеваешь и на уроки гитары, и в поход. Это работает как в обычной жизни, так и в путешествиях и спорте. А дальше уже тянет сформированная сила привычки. Продолжая тему, расскажу, что ты заядлый любитель чтения. Бытует мнение, что книга — уходящее явление, ведь многое в мире ныне можно увидеть своими собственными глазами — путешествия и опыт дальних стран доступны многим лично, а на все известные книги сняты фильмы и т. д. Почему ты выбираешь именно книги? Зачем тратишь на них столько времени? Книги — это, возможно, самые главные учителя в моей жизни. Если бы не приключенческие рассказы Верна, Лондона да Сабатини, я и не путешествовал бы столько. Книги же подарили мне основные принципы, которым я стараюсь следовать.

Также я не считаю, что книги, фильмы и путешествия взаимовытесняющие. Они существуют в разных плоскостях. Крайне редко книга и фильм по книге достаточно хороши, чтобы достойно бороться за умы и сердца (например, в первом приближении я только «Бойцовский клуб» и «Властелина колец» могу вспомнить из подобных). Путешествия же вообще дают совершенно особенный опыт, который ни с чем не совместим. На твой айтишный вкус лучше все-таки бумажные или электронные книги? Электронные. С чистым сердцем могу рекомендовать Kindle — он маленький, легкий, дешевый и при этом довольно надежный. Предыдущая версия прошла со мной огонь и воду, но в конечном счете не пережила перелет непальскими локальными авиалиниями. Сейчас у меня версия с подсветкой. Бумажные книги я тоже люблю, но они не практичны. Легко впитывают воду, много весят, а еще быстро заканчиваются. Продолжая тему чтения, можешь ли назвать пару любимых книг, впечатливших тебя за все время наиболее сильно? Для безнадежно фраппированных айтишников типа меня лучше назови свои любимые RSS-подписки. Я очень мало читаю по компьютерным наукам, предпочитаю художественную и научно-популярную литературу. Поэтому будет больше книг художественных. Плюс я ограничу временной интервал последними 3–5 годами, потому что иначе топ книг будет заполнен детской приключенческой литературой. Итак: ? Дуглас Хофштадтер «Гёдель. Эшер. Бах. Эта бесконечная гирлянда» (научпоп) — отличная философская база для нерелигиозного детерминистского восприятия мира. ? Henry David Thoreau «Walden; or, Life in the Woods» (автобиография) — библия дауншифтеров. Интересным дополнением здесь будет книга Jon Krakauer «Into the Wild». ? Роберт Хайнлайн «Чужак в чужой стране» (роман) — библия хиппи. Также у него же весьма впечатлила «Луна — суровая хозяйка», настольная книга революционера. ? Джордж Оруэлл «Вспоминая войну в Испании» и «Памяти Каталонии» (автобиография) — история формирования мировоззрения автора «1984», возможно, лучшего романа XX века. У Оруэлла еще, кстати, есть прекрасные «Дни в Бирме», пронизанные духом обреченного социализма. А адептам путешествий «без средств» будет интересно почитать «Фунты лиха в Париже и Лондоне». ? Эрнест Хэмингуэй «По ком звонит колокол» — очень впечатливший меня роман, который я упустил в юности. ? Фредерик Брукс «Мифический человеко-месяц» (компьютерные науки) — лучшая книга по управлению проектами и одна из лучших инженерных книг вообще. ? Eliezer Yudkowsky «Harry Potter and the Methods of Rationality» (роман) — прекрасное введение в теорию рационального мышления. В списке только одна книга по компьютерным наукам, и это не случайно. Большую часть инженерной информации я получаю из RSSподписок и Twitter: ? Paul Graham’s Essays (paulgraham.com/articles.html). ? HackerNews (news.ycombinator.com). ? ЖЖ Анатолия Воробья (avva.lj.ru — здесь темы как технические, так и общие, очень хороший блог). Отдельно хотелось бы упомянуть ленты комиксов: ? xkcd.com. ? abstrusegoose.com. ? . О’кей, если с творчеством все более-менее понятно, то какую роль в твоей жизни играет спорт? Это нечто большее, чем просто попытка быть в форме и сохранить здоровье? Есть околоспортивные вещи: сноуборд, байкинг, серфинг, скалолазание. Это просто развлечения, мне это нравится. Мне нравится нестись на борде вниз по склону или пытаться удержать руль велосипеда на горном трейле, я получаю удовольствие, забравшись на стенку по маршруту, который до этого пройти не мог.

Есть и чисто спортивные занятия: бег, тренажерка. Позволяют держать себя в форме и дают возможность заниматься тем, что я люблю. Например, ходить в горы. А еще спорт вызывает почти наркотическую зависимость, и занятия делают вас немного счастливее. И напоследок — каковы для тебя главные плюсы и минусы от работы в Google, если выразить их одной строкой? Нравится четкий, отлаженный процесс разработки, который создавался инженерами для инженеров. Не нравится масштабность корпорации — в такой большой компании очень трудно заметить собственный вклад, что в итоге может привести к потере искренней мотивации.

Timelapse-видео в качестве бонуса Сергей Кищенко, прямая речь: Перед тем как уехать в очередную кругосветку, я настроил хук в Mercurial, который делал автоматический снимок веб-камерой на каждый мой коммит в репозиторий. После полугода путешествий вы можете наблюдать результат в виде видео1. Как видите, ответ на вопрос «откуда я беру деньги и время на путешествия?» довольно прост — я работаю прямо в дороге, в любом состоянии и в любое время.

1

 

ГЛАВА 7. Терри Дэвис — Господь сказал: иди и программируй

Терри Дэвис — американский программист, сторонник методики рекреационного программирования. Автор ОС The Temple Operating System (by Trivial Solutions). Верит в Бога, но не верит в человечество. Интервью взято в 2014 году.

Сегодня у нас интервью с Терри Дэвисом, противоречивой звездой западного технического Интернета, человеком, который больше десяти лет в одиночку пишет свою собственную ОС, в свободное от этой работы время общаясь с Богом. Давайте будем честны: не каждому из нас повезло с менеджером проекта, но Терри уверяет, что ему точно повезло. Бог, в отличие от манагеров, — он всегда вежливый, терпеливый, и к тому же знает все о правильной архитектуре ОС, поэтому задача Терри была довольно легкой — просто следовать представленным сверху спецификациям. Далее о TempleOS, о жизни и рекреационном программировании, а также о противостоящем прогрессу ЦРУ и коварных «ниггерах».

Власть абстрактного Программист работает с абстракциями. Ему приходится держать в голове гораздо больше абстракций, чем любому другому «нормальному» человеку. Абстрагирование сопутствует программисту на всех уровнях разработки — от описания целей до создания исполняемого машинного кода. А таких уровней могут быть десятки, а то и сотни. Это чудовищные по сложности замки из кирпичиков инкапсулированной логики, построенные на зыбком песке собственного сознания.

Вместе с тем известно, что у значительной части больных шизофренией нарушения мышления слабо выражены или клинически никак не определяются. Именно таким «нетоксичным» больным свойственен чрезвычайно высокий уровень абстрактного мышления, где проявляются его истинные величие и мощь. Данные особенности позволяют больным порой добиваться выдающихся результатов в различных областях профессиональной деятельности, где абстрагирование играет ключевую роль. Весомая доля непреходящих общечеловеческих ценностей создана больными шизофренией. Среди них можно назвать Ньютона, Ницше, Гоголя, Ван Гога... Подобные абстрагисты склонны к масштабным проектам и громким стартапам, слышанию голосов, к невероятной производительности и целеустремленности. Согласно клинике протекания шизофрении, возможен некий компромисс больного с обществом — это уход в самозаточение посредством реализации некоего magnum opus. Такому варианту проявлений свойственны мирская аскеза, патологическая безработность (синонимы с поправкой на местные особенности — тунеядство, социальный паразитизм) и фонтанирование чистыми абстрактными концепциями, где идея Бога, как правило, занимает центральное место.

Куда приводит программирование Терри Дэвис — бывший профессиональный разработчик ОС. В частности, он работал над VAX operating system, а также частично над C64 (документировал работу этой ОС с памятью). Терри приобрел весьма специфическую известность в западной технической части Интернета — его личные аккаунты забанены на всех ведущих айтишных ресурсах типа OsNews, Reddit, Hackernews и т. п., где он пытался активно проповедовать свои идеи. Многие утверждают, что Терри болен шизофренией (он сам подтверждает это). Как минимум, лежал в соответствующих заведениях на лечении. По словам самого программиста, однажды он стал слышать Бога и, как результат, начал писать собственную ОС по спецификациям, предоставленным Всевышним. К удивлению многих, за более чем десять лет работы он единолично создал полностью  работоспособную версию ОС, которую назвал TempleOS. Ее ключевая утилита — Оракул — позволяет вести чат с Богом любому человеку. В целом это очень необычная система для любых PCсовместимых компьютеров с открытым исходным кодом, образ с которой можно свободно скачать с TempleOS.org (альтернатива — github.com/muflax/templeos).

Кросс-компиляция пограничных смыслов В процессе написания интервью мне пришлось невольно написать что-то вроде виртуальной машины, которая бы динамически реинтепретировала символы и смыслы специфического внутреннего мира Терри в стандартные символьные коды обычного человека с «общесовместимым» для большинства мировоззрением (как правило, герметично «прошитым» ему обществом еще в раннем детстве). Поэтому далее — минимальное пояснение авторской терминологии для лучшего понимания дальнейшего интервью. ? «Ниггер» (nigger) — стандартное обращение Терри к оппонентам. Поэтому если Дэвис назвал вас так, то, скорее всего, он имеет в виду не цвет вашей кожи, а недоволен вашей критикой его ОС (или просто считает вас «плохим человеком»). Исходя из его сленга, все «ниггеры» работают (программируют) за деньги, поэтому их «экспертное мнение» о достоинствах или недостатках его ОС не может быть объективным и беспристрастным в принципе. Следовательно, отвергается автоматически. ? ЦРУ (CIA) — по уже устоявшейся теории Терри будущему успеху TempleOS сегодня угрожает механизм безопасной загрузки UEFI. По его мнению, за этим стоит Сатана, персонифицированный на земле в лице ЦРУ. Поэтому ЦРУ в его оборотах речи чаще всего — это метафизическая сущность, которая яростно противостоит единственной верной методологии программирования — рекреационному программированию. Складывая все воедино, повестка дня такова: «ниггеры» из ЦРУ, используя влияние больших денег и подкуп, хотят уничтожить уникальную кодовую базу TempleOS. Потому-то Терри и призывает всех

немедленно скачать TempleOS на локальный диск и далее свободно распространять ее по миру, как поступал с учением сам Иисус. Это сделает невозможным замалчивание правды, а рекреационное программирование в итоге станет доминирующим в мире. Впрочем, несмотря на все сопротивление, спасительная TemplesOS уже готова. С ее помощью как непрограммисты, так и самые опустившиеся «ниггеры» могут общаться с Богом напрямик, что положит конец нынешней гегемонии ЦРУ.

Пророк рекреационного программирования

Кто вы и в чем смысл TempleOS? Меня зовут Терри Дэвис. Я избран Богом для создания его храма — новой операционной системы. Поэтому я оставил работу и посвятил себя разработке новой ОС, которая практически готова. На данный момент я имею 64-битовое ядро и компилятор. Кроме того, есть множество встроенных инструментов, которые должны со временем сформировать законченную пользовательскую часть системы (userland). Что бы все это ни значило, вы написали чертовски много кода с нуля. Также можно уверенно констатировать, что ваша ОС — рабочая. Как давно вы занимаетесь этим проектом? Около десяти лет в режиме нон-стоп. Вся команда разработки — это я один и мой божественный компаньон. Насколько реально в одиночку написать ОС? Это очень тяжелая работа. Я работал над TempleOS каждый день без выходных в среднем по десять часов в сутки. Нужно просто верить и молиться, и помощь придет. Что у вас с разрешением, почему нет поддержки HD? Система поддерживает единственное разрешение 640?480 в цветности до 16 цветов. Бог сказал, что это оптимальное разрешение для работы, а я стремлюсь избегать ненужных излишеств. Вы можете убедиться, что все утилиты и задачи вполне нормально работают и в таком разрешении. Я понимаю скепсис «ниггеров», но вся эта гонка за разрешением — просто вредная привычка, от которой проще избавиться, чем потакать. Давайте посмотрим на ваши утилиты. Вот, к примеру, «тулза» для генерирования гимнов Богу. С одной стороны, это интересный бредогенератор, то есть генератор с развитой лексикой текста по заданным ключевым словам, с другой — что-то вроде караоке, который позволяет разработчикам славить Господа днем и ночью. Под свое настроение вы выбираете ключевые слова, после чего можно петь автоматически генерируемый текст. Система сама распознает коннотации текста, вставляя смайлики для обозначения соответствующих эмоций. Не думал, что доживу до того времени, когда в современных ОС появятся такие фичи. А еще у вас есть утилита AfterEgypt Oracle с весьма интригующим описанием... Это возможность прямого общения с Богом, ее работа базируется на продвинутом генераторе случайных чисел. В основе лежит концепция того, что случайностей не существует, все во власти Провидения. Таким образом, через утилиту можно получить ответ на любой вопрос или определение любого явления и термина. Кратко о воззрениях Бога можно прочитать на моей странице1, где я привожу некоторые свои диалоги с Ним. Почитав немного кода, я понял, что продвинутый генератор случайных чисел — один из ключевых компонентов вашей ОС. Для чего все это делается, куда вы держите путь? Проект — это демонстрация рекреационного программирования в действии. Я надеюсь, что он не только приблизит людей к Богу, но и даст им определенную базу знаний в области основ программирования ОС.

1

Почему просто не взять Linux и не «перехачить» его под себя? Современная ОС Linux поддерживает очень много архитектур и является чрезвычайно сложной. TempleOS сделана предельно просто. Тем не менее в ней очень много интересных идей и практических демонстраций концепций программирования. Еще раз: это система без особых претензий, она больше подходит для хобби и изучения рекреационного программирования. На всякий случай — что такое рекреационное программирование? Вдруг кто-то из наших читателей до сих пор не знает, что это такое. Таким образом я хочу подчеркнуть, что этот проект не имеет никакой практической или коммерческой направленности, а создается исключительно для демонстрации личных идеалов. Кто-то может разделять их, я не против. Для всех остальных, вероятней всего, это не будет иметь никакого практического смысла и значения. Например, есть люди, которые серьезно занимаются сельским хозяйством. Они выращивают продукты для продажи, для них это всего лишь бизнес. Но если за этим не будет коммерческой модели, генерирующей cashflow, их сад опустеет и будет заброшен. Они могут называть себя прирожденными садовниками и профессионалами своего дела, тогда мое утверждение будет тем более грустной для них правдой. В моем случае это работа на себя ради возвышенных целей и идеалов, за которой нет меркантильных интересов и расчета личной выгоды. Это и есть рекреационное программирование — программирование для развития. Можно назвать это просто хобби для души. И этот сад никогда не опустеет. Как можно жить при такой модели в реальном мире? Я живу на пожертвования и спонсорство. Деньги для меня — не главное. Многие программисты, которых я знаю, ленивы и тяжелы на подъем. Если у них еще и зарплаты отнять... В чем секрет вашей продуктивности и целеустремленности?У «ниггеров» нет идеала, ради которого стоит мечтать и преодолевать, чтобы идти вперед. Жизнь «ниггера» скучна и бессмысленна, в этом социальном контракте нет места вдохновению. Поэтому отрешитесь от суеты, вложите свою веру в нечто высокое и масштабное, подобное Богу, и это сделает вас непобедимым в стремлении к мечте и свету. Что бы вы могли посоветовать любому простому «ниггеру» типа меня? Как стать хотя бы чуточку лучше? Первый шаг — начать использовать конструкцию elseif вместо switch case. В заключение, возможно, неприятный вопрос. Читая историю разработки TempleOS, я поражаюсь, как много людей ненавидят вас и вашу ОС. Что бы вы сказали им? Возможно, что-то (или кто-то) угрожает вашему уникальному проекту? Всем «ниггерам», которые читают меня сейчас, я хочу сказать одно: дело мое правое, и меня не остановить. Что касается угроз, самая большая опасность для TempleOS — это новая технология загрузки UEFI. ЦРУ, безусловно, хочет смерти проекта, но мы будем бороться до конца. Вообще искусственно создаваемые проблемы с совместимостью, которые нарастают в последние годы, меня расстраивают. Это удар ниже пояса, противоречащий морали. Делается все, чтобы старый добрый код 90-х перестал работать в ближайшем будущем, и это будет началом конца человечества.

Для «ниггеров» или нет Один китайский трактат с труднопроизносимым для меня названием занудно объясняет, что всякому желающему преуспеть никогда не следует заниматься бизнесом на том, что любишь. Никогда! К примеру, любишь антиквариат — не торгуй антиквариатом. Обожаешь автомобили — не торгуй автомобилями. В состоянии аффекта сначала купишь не то и не по той цене, потом товар будет трудно скинуть. А если отчасти деньги и отобьешь, так совесть замучает — такую цацку, и за копейки... Эх! Еще пример из трактата — не любишь лю

дей, иди спокойно заниматься политикой, хотя бы денег заработаешь, и никаких душевных мук взамен. Короче, трактат призывает, что зарабатывать на жизнь надо только тем, к чему полностью равнодушен. Именно этот бизнес станет самым доходным в твоей жизни. Вопрос в том, что же делать с тем, что любишь? Например, талантливому молодому программисту, который получает реальный кайф от своей работы и готов фигачить код в измененном от восторга состоянии ночи напролет? И тут теория рекреационного программирования Терри Дэвиса оказывается очень к месту. Китайская теория в этом случае дает такой ответ — зарабатывать с таким отношением к делу нельзя, таких увлеченных можно только спонсировать. Иначе неизбежное противоречие между местечковой выгодой и невыносимым желанием постигать все новые земли в конечном счете погубит специалиста. Прокрастинация и подспудное желание пораньше свалить с работы — первые симптомы запущенного офисным грибком равнодушия процесса саморазрушения специалиста. Хуже, когда такой человек-зомби ждет выходных или отпуска, начиная откровенно филонить, или если нависающий над ним манагер отвернулся на минуту покурить. В результате такой неприметной для отдела кадров внутренней мутации шаг за шагом работа превратится в бизнес, а выбор работы станет предметом выгоды и торга. Вся боль от этого ломающего вдохновение процесса анестезируется обществом гибкими социализирующими фреймворками, продаваемыми под соусами «взросления», «успешности» и «надо же себе цену знать». Пример спонсорства: Абрамович любит футбол, поэтому его футболисты хорошо зарабатывают. Эти грациозные небритые мужчины живут исключительно за счет своего спонсора и получают кайф от абстрактного пинания мячика. Это пример истинной любви к своему делу. Намного больше рабочих на предприятиях Абрамовича — им можно предложить зарплату и приставить бдительного манагера, который сформулирует вполне конкретную задачу для их, в сущности, пустой и никчемной жизни. Задача первых — делиться вдохновением, чтобы побуждать. Задача вторых — работать, чтобы исполнять прихоти других. Так абстрактные планы меньшинства никак не пересекаются с прагматичной конкретикой большинства, утверждают китайцы. В заключение этого заковыристого китайского трактата постулируется неожиданный вывод — никогда не имей дела с теми, кто тебя не ценит и не любит (без исключений и компромиссов). Иначе сам не заметишь, как станешь безликой шестеренкой чужого бизнеса.

Приложение: несколько технических фактов о TempleOS На данный момент исходники этой ОС составляют более 150 000 строчек кода (включая собственный компилятор). Система использует собственный компилятор Holy-C («ниггеры» произносят этот язык, намеренно коверкая как «холи щит») — это диалект языков семейства C/C++. Это изначально 64-битная система и по своей архитектуре во многом воспроизводящая Commodore 64. Вся TempleOS полностью размещается в кольце ring-0 и использует Single-Address-Mapping. Для взаимодействия (интерпроцессинга) с другими программами и процессами требуется прямая перезапись содержимого участков памяти этих самых программ. Дешево и сердито — кредо всей ОС. Никаких драйверов нет и не нужно — все обращение к железу можно осуществлять напрямую (если вы сможете, конечно). Все это напоминает Commodore 64, где все зиждется на честном слове и вашем глубоком понимании происходящего. Поддержки сети нет и не будет, равно как и USB, — по довольно витиеватым религиозным причинам (нет времени объяснять, но ЦРУ и уже знакомые нам «ниггеры» фигурируют в этой длинной истории). Есть множество встроенных игр разной степени тупости. У системы нет аналогов пейджинга страниц и файла подкачки, характерных для современных ОС, она загружает и держит в памяти все открытые и запущенные программы. Поэтому в readme.txt Бог

довольно цинично советует прикупить «как можно больше оперативки». В качестве файловой системы используется открытая FAT32 с дополнительной самописной поддержкой метафайлов в качестве расширения. Встроенный архиватор — все файлы физически хранятся на диске уже заархивированными и запароленными (нет времени объяснять почему). У системы есть своя самописная графическая оболочка (что-то типа X-ов в *nix), а также параллельный режим командой строки, где в качестве оболочки выступает прикрученный туда компилятор языка «холи щит» (как бы круто это ни звучало, но это всего лишь вольная вариация на тему шелла Ch). У ОС за все время ее существования чуть больше 50 000 скачиваний (Терри переживает, что ЦРУ в том числе невозбранно скачивает его ОС для изучения, но пока ничего не может поделать с этим коварством). Система поставляется с полным открытым исходным кодом в виде public domain и написана на собственном диалекте С. Вы можете использовать ее и модифицировать как угодно на свой страх и риск (если, конечно, выучите «холи щит», то есть преодолеете барьер, воздвигнутый создателем ОС как раз против праздного любопытства разного рода «ниггеров» из ЦРУ). «Холи щит» в TempleOS сочетается с ассемблерными вставками и низкоуровневым программированием контролеров устройств. Видимо, именно это та причина, по которой Терри так ненавидит UEFI. Всем своим хэйтерам Терри советует смириться, по его данным, «существование этой системы было предсказано в Библии много веков тому назад».