Skip to main content

Just for fun

Linus Torvalds

Just for fun

Революционерами не рождаются. Революции не планируются. Революциями нельзя управлять. Революции случаются… Дэвид Даймонд


Они движут и тобой, и любой живой тварью: первая – выживание, вторая – общественный уклад, третья – удовольствие. Все в жизни проходит через эти три этапа. Причем после удовольствия уже ничего нет, Отсюда вывод: смысл жизни – достичь третьего этапа. Достиг его – и дело в шляпе. Но сперва – пройди два предыдущих.

Попробую объяснить на примерах. Самый очевидный пример – секс. Исходно он служил выживанию, потом стал частью общественного уклада: отсюда брак. А потом он переходит в разряд развлечений.


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


А еще я просто не смог найти задачу, которую можно было бы делать на компьютере. Когда нет интересной задачи, и желание программировать пропадает. Всегда нужен какой-то стимул.


У каждого есть книга, которая перевернула его жизнь. Священная Библия. «Капитал». «Вторники с Мори». «Все, что мне нужно, я узнал в детском саду». У каждого своя. (Искренне надеюсь, что – благодаря моей теории о смысле жизни – вашу жизнь перевернет эта книга.) Меня лично вдохновила на подвиги «Проектирование и реализация операционных систем» Эндрю С. Таненбаума.


Потому что одна из прелестей Unix в том, что для создания сложных вещей не нужны сложные интерфейсы.


Простота требует проектирования и хорошего вкуса.


Из этого вовсе не следует, что создание Unix было вызвано какими-то сложными причинами. Как часто бывает в компьютерной области, все началось с игр. Нужно было, чтобы кто-то захотел играть в компьютерные игры на PDP-11. Именно из этого выросла Unix – из персонального проекта Денниса и Кена, пожелавших играть в «Звездные войны». А поскольку этот проект никто не воспринимал всерьез, AT&T не занималась коммерческим применением Unix. AT&T была регулируемой монополией и все равно не могла, например, продавать компьютеры. Поэтому создатели Unix стали бесплатно предоставлять ее вместе с лицензиями на исходные тексты всем желающим, в особенности университетам. Они относились к этому просто. В результате Unix получила широкое распространение в университетских кругах. К моменту произошедшего в 1984 году разделения, когда AT&T получила наконец право заняться компьютерным бизнесом, университетские специалисты (в частности, сотрудники Калифорнийского университета в Беркли) уже в течение нескольких лет работали над усовершенствованием Unix под руководством таких корифеев, как Билл Джой и Маршал Кирк Маккусик. При этом многие не утруждались документированием своей деятельности. Однако к началу 90-х Unix стала операционной системой номер один для всех суперкомпьютеров и серверов. Бизнес приобрел огромные масштабы. При этом, к несчастью, существовало великое множество конкурирующих версий этой системы. В основе одних лежала базовая разработка AT&T (так называемые варианты «System V»), которая была относительно контролируемой. Другие создавались на основе кода BSD (Berkeley Software Distribution), созданного в Калифорнийском университете в Беркли. А некоторые представляли из себя смесь обеих систем.


У Unix сложилась репутация магнита, притягивающего сдвинутых маргиналов компьютерного мира. Оспаривать эту репутацию не имеет смысла. Она справедлива. Честно говоря, вокруг Unix действительно собралось много чокнутых. Я не имею в виду тех, кто рассылает угрожающие письма. Или тех, кто травит соседских собак. Просто люди с очень альтернативным образом жизни.


Для меня программирование во многом похоже на физику. Обе науки имеют дело с устройством мира на базовом уровне. Разница, конечно, в том, что физик исследует, как сделан мир, а программист его создает. В пределах компьютера ты творец. Ты можешь безраздельно управлять всем, что происходит. Если хватает умения, то ты – бог. Местного значения. Возможно, я оскорбил этими словами около половины населения Земли. Но это правда. Ты создаешь свой собственный мир, и тебя ограничивают только возможности твоей машины или – в наше время все чаще – твои собственные способности.


Операционная система – это основа всего, что происходит в машине. Ее создание – самая сложная задача. Создавая операционную систему, ты строишь мир, в котором будут жить все остальные программы, работающие на компьютере. По сути ты задаешь правила: что допустимо и может быть сделано, а что – нет. Так можно сказать про любую программу, но к операционке это относится в первую очередь. Она подобна конституции созданной тобой страны, а все остальные программы – лишь обычные законы.


Вот очень наглядный пример не из компьютерной области, а из математики. Легенда гласит, что, когда великий немецкий математик Карл Фридрих Гаусс еще учился в школе, его учитель, чтобы занять учеников, велел им сложить все целые числа от 1 до 100. Учитель рассчитывал, что ребята провозятся с этим целый день. Но будущий математик уже через пять минут получил верный ответ: 5050. Настоящее решение не в том, чтобы тупо складывать все эти числа – это глупо и скучно. Гаусс просто заметил, что 1 и 100 в сумме дают 101, а 2 и 99 снова дают 101. Как и 3 плюс 98. И так до 50 плюс 51. За считанные секунды он понял, что таких пар 50, каждая в сумме дает 101, поэтому ответ – 5050.


Очень трудно объяснить, что интересного в том, чтобы биться головой об стену три дня подряд, не зная, как лучше, красивее решить задачу. Но когда ты нашел решение – это чувство нельзя сравнить ни с чем в мире.


Как создать операционку? Надо выяснить, что должны делать системные вызовы, и написать программы, которые будут это делать.


Вы скорбите о тех временах, когда мужчины были настоящими мужчинами и сами писали драйверы устройств? (Из объявления о выпуске Linux 0.02)


«Вот было классно, наверное, – говорю я. – Столько лет ты сидел без всякой связи с внешним миром, с головой погрузившись в процессор. И вдруг люди из разных уголков планеты признают, что ты занимаешься важным делом. Ты становишься центром растущего сообщества, которое смотрит на тебя, как на…»


Где-то в 1993-м мы вошли в первую пятерку. В ту ночь я лег спать преисполненный самодовольства, в экстазе от того, что Linux по популярности почти догнала секс.


Безусловно, сперва нужно заложить фундамент доверия.


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


Туве была одной из студенток моей группы (всего там было 15 человек). Она уже получила специальность дошкольного педагога. А потом решила познакомиться с компьютерами, но сначала немного отставала от остальных. В конце концов она всех догнала. Курс был совершенно элементарный. Шла осень 1993-го, Интернет еще не был популярен, поэтому однажды я задал на дом послать мне сообщение по мейлу. Сегодня это звучит по-идиотски, но я сказал: «Домашнее задание: пошлите мне e-mail». Другие студенты прислали просто тестовые сообщения или какие-то замечания о занятиях. Туве пригласила меня на свидание. Я женился на первой же женщине, которая обратилась ко мне по мейлу. Наше первое свидание так и не кончилось. Туве была дошкольным педагогом и шестикратным чемпионом Финляндии по карате, она выросла в нормальной семье, хотя так я называю любую семью, которая не похожа на нашу чокнутую семейку.


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

Но хотя мы разошлись с ним почти во всем, мне он в общем-то понравился.


To есть на все нужно время.

по-моему, пытаться ограничивать эволюцию – противоестественно и бесполезно. Вместо поисков двух собак, способных произвести необходимое потомство, мы, безусловно, обратимся к генетике; кажется неизбежным, что то же самое коснется и людей. Мне кажется, лучше изменить человеческую породу с помощью генетики, чем оставить все как есть. Я думаю, что в широком смысле гораздо интереснее способствовать эволюции не самих людей, а общества в целом, в каком бы направлении оно ни шло. Нельзя остановить технический прогресс и нельзя остановить развитие наших знаний о том, как работает наша вселенная и как устроены люди.


Я не согласен с Джоем в том, как нужно обходиться с нашим будущим, точно так же, как был не согласен с его пониманием открытых исходников. Я не согласился со Стивом Джобсом в вопросах технологии. Можно подумать, будто в первые годы в Кремниевой Долине я только и делал, что ни с кем не соглашался, но это не так. Я много программировал, водил Патрицию в зоопарк и вообще расширял свои горизонты: например, узнал горькую правду о васаби.


Потом пришла Microsoft и стала продавать свои системы по 90 долларов. Microsoft не боролась ни за банковскую, ни за любую другую нишу, но вскоре оказалась везде. Это было похоже на налет саранчи. С таким трудно справиться.

Те, кто проникал в недра Microsoft, рассказывают, что видели мое лицо на мишенях для игры в дартс. У меня вопрос: разве можно не попасть в мой нос?


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


Хочешь – оставайся идеалистом, а хочешь – иди в коммерцию. От появления новых возможностей никто ничего не теряет


Возьмите застенчивого математика, поместите его в круговорот приветствий и улыбок ради популяризации чего- нибудь – и вы получите народного героя.


Журналистам нравилось, что в отличие от Билла Гейтса, живущего в нашпигованном электроникой дворце на берегу озера, я спотыкался об игрушки своих дочерей в нашем новом жилище – доме на две семьи в заурядной Санта-Кларе, где нам принадлежало три комнаты с плохим водопроводом. И что я ездил на заурядном «Понтиаке». И сам подходил к телефону. Разве меня можно было не полюбить?


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


Великодушный диктатор? Нет, я просто ленив. Я стараюсь управлять не принимая решений – позволяя всему идти естественным чередом. Так и получаются лучшие результаты.


Однажды, пока он еще не был исключен, Дэвид потерял мой телефон и позвонил в справочную. Он попросил дать ему мой номер, и оператор, выполнивший его просьбу, был страшно удивлен: «Он включен в справочник? Со всеми своими миллионами?» Но нет, миллионов у меня не было. Миллионы пользователей Linux – это да. А не миллионы долларов Линуса.


Как же долго могут тянуться 180 дней для свежеиспеченного миллионера на бумаге! Я занялся новым видом спорта (или просто занялся спортом!) – следил за стоимостью акций Red Hat, которая продолжала расти все последующие полгода. Она росла и росла все время, а пару раз даже резко подскочила. Потом акции снова раздробили. Стоимость моего опциона доходила до 5 миллионов!


Здесь я хочу рассказать о своих золотых правилах. Первое: обращайся с другими так, как ты хочешь, чтобы они обращались с тобой. Следуя этому правилу, в любой ситуации будешь знать, что делать. Второе: гордись тем, что делаешь. Третье: делай все с удовольствием.


Это единственное время в году, когда в Лас-Вегасе можно высунуться из такси и спросить любую дефилирующую мимо проститутку: «Во сколько доклад?» – и она ответит.


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


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


Легко сражаться с ветряными мельницами, если не знаешь, как это трудно.


Все к вашим услугам, наш дорогой электронный наркоман. Можете – с легким ощущением вины – отправиться на пляж на целый день и при этом не отрываться от ситуации на работе. Помните: важно не реально уйти в отпуск, а почувствовать себя свободным.


Модель открытых исходников утвердилась не за счет идеологии. Она начала привлекать внимание, когда стало очевидно, что это лучший метод разработки и усовершенствования технологии высочайшего качества. Теперь эта модель завоевывает рынок, что еще больше укрепляет ее авторитет.


Хорошо известно, что лучше всего работает тот, кто одержим страстью. Кто работает ради удовольствия. Это так же верно в отношении драматургов, скульпторов и предпринимателей, как и в отношении программистов. Модель открытых исходников дает людям возможность удовлетворить свою страсть, получить удовольствие, сотрудничать с лучшими программистами мира, а не только с теми, кто оказался в штате той же компании. При этом разработчики стремятся завоевать авторитет среди своих коллег, и это оказалось превосходным стимулом.


Деньги – неплохое вознаграждение за тяжелую работу. Они бывают очень кстати, когда мне нужно заправить «BMW» бензином.


Открытые исходники – это вещь.