Человек, который создал Linux: биография Линуса Торвальдса
Или как превратить пет-проект в одну из самых популярных операционных систем в мире.
Фото: laboratorio linux / Flickr
Вторая половина 1969 года стала поворотной для науки и IT. Судите сами:
- 20 июля американские астронавты высадились на Луну;
- 12 сентября вышла пилотная версия культовой ОС UNIX, которая сыграет немалую роль в судьбе нашего героя;
- 29 октября специалисты DARPA презентовали ARPANET — прототип современного интернета.
А ещё 28 декабря в Хельсинки родился Линус Бенедикт Торвальдс, которому было суждено перевернуть мир IT. О нём и пойдёт речь.
Детство
Многие верят, что имя, данное при рождении, предопределяет судьбу. Видимо, именно этим принципом и руководствовались родители Торвальдса — финские хиппари и нонконформисты, с переменным успехом совмещавшие учёбу на журфаке с митингами и употреблением запрещённых веществ.
Своего первенца они назвали Линус — в честь легендарного Лайнуса Полинга, учёного и бунтаря, создателя молекулярной биологии, который в 1954 году получил Нобелевскую премию по химии за открытие природы химической связи. А в 1962-м — Нобелевскую премию мира как автор проекта договора о запрещении ядерных испытаний. И стал, таким образом, единственным до сих пор дважды нобелевским лауреатом.
Удивительно, но в нашем случае звёзды действительно сошлись как надо. Уже в раннем возрасте Линус, вопреки сугубо гуманитарной ориентации родителей, стал демонстрировать выдающиеся успехи в изучении физики и математики. Тогда же в его характере проявились черты, без которых сегодня нельзя представить кинообраз программиста-гения — а именно упёртая интровертность и даже некоторая гиковатость.
Его мать вспоминала, что он рос замкнутым, не хотел гулять с другими детьми и тем более не звал их к себе домой. Кубик Рубика был ему куда интереснее, чем общением с людьми.
Младшей сестре приходилось даже специально готовить его к семейным посиделкам и обучать, что и когда нужно сказать маме и папе. Если б не она, братец запросто мог бы промолчать весь ужин с каменным лицом в ожидании, когда его, наконец, отпустят к любимой головоломке.
«Надо смотреть правде в глаза: я был ботаником с ранних лет. У меня были хорошие отметки по математике и физике, но зато никакого представления о поведении в обществе. И в то время ботаников ещё никто не ценил».
Линус Торвальдс,
из воспоминаний о себе
Эта упёртость, по словам сестры, помогла ему не сдаваться и не оставлять дела незаконченными. Даже сегодня в своём интервью на TED Торвальдс настаивает, что целеустремлённость гораздо важнее, чем ум.
Отрочество
Когда Линусу исполнилось 11 лет, в его жизни случилось ещё одно поворотное событие. Дед — такой же упёртый финский парень, прошедший путь от фермерского сына из отдалённого хутора до профессора статистики Хельсинкского университета — принёс домой персональный компьютер Commodore VIC-20 и купил внуку первый учебник по программированию.
И поменялась судьба у человека, как писал поэт Пастернак. Все заработки юного Торвальдса — а он чуть ли не с первого класса получал ежегодную стипендию как лучший математик в школе — стали уходить на компьютерную литературу. Туда же — все деньги, которые ему дарили на Рождество, день рождения и прочие праздники, а также всё, что получалось заработать на летних каникулах.
То, что не получалось потратить на книги, шло на покупку более совершенных ПК. А также на их непрерывный апгрейд, которым юноша занимался с небывалым энтузиазмом.
«Мама говорила друзьям-журналистам, что мне для счастья достаточно чулана с компьютером, куда время от времени закидывают пачку макарон. Она была недалека от истины».
Линус Торвальдс,
из воспоминаний о себе
Юность
После школы Линус поступил на курс информатики в Хельсинкский университет. Правда, вскоре ему пришлось уйти в армию — тогда в Финляндии студенты не получали отсрочку от призыва. Тем не менее служба не повлияла на интересы молодого инженера: там он прочитал учебник Эндрю Таненбаума «Проектирование и организация операционных систем». Так что демобилизации он ждал с уже вполне чёткими планами на жизнь: чем ещё заниматься на гражданке, как не воплощением заветов Таненбаума в жизнь?
Сразу же по возвращении в университет Линус приступил к работе над проектом всей своей жизни — операционной системой Linux. Хотя он об этом ещё не догадывался.
По словам самого Торвальдса, он не собирался конкурировать с коммерческими продуктами вроде UNIX. И тем более не стремился изменить мир к лучшему — он просто хотел помочь другим студентам. Поэтому первым делом написал объявление в новостной группе популярной на тот момент ОС MINIX, адресованное всем пользователям. Сегодня этот текст стал культовым.
«Привет всем, кто пользуется MINIX. Сейчас я работаю над бесплатной операционной системой (просто хобби, не что-то серьёзное и профессиональное, как GNU) для компьютеров-клонов 386 (486) AT. Тружусь над системой уже с апреля, и что-то начинает получаться.
Хотелось бы узнать у вас, что люди любят и не любят в MINIX, так как моя ОС чем-то похожа на неё. Любые предложения — приветствуются, но не обещаю, что я их реализую.
Линус (torvalds@kruuna.helsinki.fi)»
На дворе был 1991 год, время безраздельного доминирования Microsoft на рынке ОС и зарождения Всемирной Паутины — Тим Бёрнерс-Ли только выпустил гипертекст под названием World Wide Web.
17 сентября Торвальдс загрузил в интернет тестовую версию Linux 0.01. С самого начала он считал, что доступ к системе должен быть открыт для всех: так её смогло бы протестировать максимальное количество пользователей и оставить свои комментарии. Как считает автор, если бы он сделал Linux платным, проект бы провалился: никто не смог бы его развивать, и поэтому никто бы его не купил.
История с названием по-своему любопытна. Поначалу Линус хотел назвать своё творение FREAX — то есть чем-то средним между free («свобода») и freak («чудик») с окончанием на X, обязательным для всех UNIX-систем. Но Ари Лемке, создателю и администратору первого FTP-сайта для Linux, эта идея показалась такой себе, и директорию, где лежала версия 0.01, он, не мудрствуя лукаво, поименовал в честь автора — Linux. А природная застенчивость, видимо, не позволила Торвальдсу настоять на собственном нейминге для бренда. Так вариант Лемке в сообществе и закрепился.
Творческий дебют
В 1994 году Торвальдс презентовал перед студентами Хельсинкского университета Linux 1.0 (её исходники лежат на kernel.org). Этот был первый стабильный релиз, пригодный для коммерческого использования. Предыдущие версии OC с завидной регулярностью выдавали баги, но теперь всё изменилось.
На презентации Линус рассказывал, что UNIX-подобные системы — невероятно дорогие и не каждый студент может себе их позволить. Сравните сами: DOS стоила 200 финских марок (около 2300 нынешних рублей), а UNIX — 20 000 (или 230 000 рублей).
Из всех постулатов популярной тогда философии UNIX-систем Торвальдс сосредоточился на двух:
- всё есть файл;
- каждая функция имеет одно-единственное предназначение и делает свою работу хорошо.
В Linux он реализовал их в полной мере. Особенно актуальным оказалось воплощение второго постулата.
До выхода релиза Торвальдса в свет компьютеры, работающие в одной ОС, не всегда могли считать с дискеты или видеоконтроллера данные, записанные в другой ОС.
Ядро Linux умело «понимать» их все и взаимодействовало с ними как минимум на уровне простых задач: «записать файл на диск», «прочитать файл с дискеты» или «вывести изображение на экран» и так далее.
Силиконовая долина и соблазн золотого тельца
Детище Торвальдса, выражаясь современным языком, довольно быстро завирусилось. В считаные месяцы вокруг Linux сформировалась огромная фан-база.
В честь него даже назвали астероид №9793. Молодой гик, прежде интересный только своей жене Туве, коту Ранди и малочисленному кругу собратьев по разработке, стал объектом пристального внимания прессы, прочих медиа, а также солидных господ из серьёзного бизнеса.
Его ждали испытания медными трубами, сравнимые разве что с сегодняшними терзаниями 24-летнего Килиана Мбаппе.
Программист-одиночка, ещё совсем недавно ценой огромных усилий и затягивания пояса купивший в кредит IBM Intel 386 за 3500 долларов, начал получать заманчивые предложения от лидеров индустрии. Его сватали Novell и Tele, Digital и Red Hat. С ним пытались связаться Стив Джобс и даже один из учредителей Microsoft Пол Аллен.
Торвальдс в конце концов принял одно из предложений, переехал с семьёй в Силиконовую долину и устроился в компанию Transmeta Corporation.
Прогрессивная мировая общественность напряглась: неужели купили? Неужто мечты о принципиально новой операционной системе, открытой, бесплатной и независимой, останутся мечтами?
Но нет: Линус Торвальдс остался верен себе. Главное условие контракта гласило: Linux всегда будет для него приоритетным проектом, и он волен заниматься им тогда, когда сочтёт нужным, даже в официально рабочее время.
Интересы IT-сообщества он поставил выше своих шкурных интересов. И сообщество это оценило.
100500 друзей Торвальдса
Как тогда, так и сейчас Linux процветает благодаря своему комьюнити, которое постоянно предлагает идеи по улучшению, исправляет баги и ищет уязвимости в системе.
Изнутри процесс разработки Linux выглядит немного странно. Здесь нет строгой иерархии, где у каждого разработчика есть начальник, строго следящий за его действиями. У каждого в сообществе есть право голоса и гарантия, что его предложения рассмотрят.
Но всё же во главе стоит один человек, который принимает финальные решения, — Линус Торвальдс. Он руководит всем и выбирает лучшие идеи — что включать в ядро, что убирать и что изменять. Сторонние разработчики это одобряют, потому что всё-таки Линус создал основу ядра.
Сам Торвальдс говорит, что не хочет, чтобы разработчики «наступали друг другу на пятки» и тратили время на «программистские войны». Поэтому он стал для членов команды «генералом», а разработчиков сделал своими «лейтенантами».
При этом в Linux всегда был «совет старейшин», куда, кроме Линуса, входит ещё три человека:
- Дэйв Миллер — главный по качеству: проверяет все изменения, которые разработчики вносят в ядро, отсеивает ненужные правки, а затем отправляет лучшие из лучших «генералу» Торвальдсу;
- Тед Цо — главный по PR: тот, кто распространил Linux по всем США, выступал на конференциях, показывал систему студентам и компаниям;
- Алан Кокс — правая рука Линуса, которому делегировано самое важное, вплоть до структуры ядра.
Работала команда, конечно же, всегда удалённо: Линус оставался убеждённым интровертом. Одно время у него даже был такой лаконичный офис:
Однако реальность вносила свои правки.
Linux против Microsoft
После выхода версии 1.0 Linux с каждым днём чувствовала себя всё увереннее. Ее скачивали миллионы людей, и это было довольно увесистым камнем в огород Билла Гейтса.
Ещё бы — ОС Торвальдса ежесекундно и наглядно доказывала прежде неочевидный для пользователей и программистов постулат: Open Source может быть выгоднее и привлекательнее, чем бизнес-модель Microsoft.
Оказалось, что эпоха закрытого кода, продажи всего на CD-дисках и стремления выкачать из каждого потребителя как можно больше — не вечна.
Как ни странно, при всей своей открытости и бесплатности Linux всё равно приносила деньги и немалые. Разработчики могли, например, продавать услуги по настройке серверов для компаний, а также помогать с поддержкой их работоспособности. Торвальдс зарабатывал на этом миллиарды долларов, и это смущало Гейтса.
Вскоре выяснилось и ещё одно преимущество новой ОС. В Microsoft разработкой всех продуктов занимался узкий круг штатных программистов, что делало отладку и совершенствование каждой новинки безумно дорогим и долгим мероприятием. Linux же была саморазвивающейся системой, которая улучшалась буквально в режиме онлайн.
При этом сотни людей трудились на Торвальдса совершенно добровольно, без всякого финансового поощрения. Как говорил создатель GNU Ричард Столлман, программисты работали не за деньги, а за уважение коллег.
В Linux ежемесячно приходили тысячи правок. Самые горячие энтузиасты формировали мнение, которое довольно быстро стало чуть ли не мейнстримом в IT-сообществе: Windows — это жлобство, отстой и нафталин, а Linux, напротив, — модно, стильно, молодёжно.
Со временем на новые веяния обратили внимание даже мастодонты вроде Oracle, Netscape, Corel и Intel, которые всё чаще начали рассматривать Linux как вполне реальную альтернативу Windows. Например, одна только IBM и в одном только 2001 году выделила на дальнейшее совершенствование Linux около миллиарда долларов и с тех пор остаётся одним из главных её, если можно так выразиться, амбассадоров.
Open Source стал главным движем современности, а Линус Торвальдс — его гуру.
Git как способ остаться собой
Интроверт Торвальдс даже не представлял, что ему придётся непосредственно взаимодействовать с таким колоссальным количеством людей со всего мира.
Тогда была популярна CVS (Concurrent Versions System) — централизованная система управления версиями. Но Торвальдсу она очень не нравилась, поэтому он создал Git — тот самый инструмент, без которого сегодня трудно представить коллективную разработку.
Git должен был облегчить тысячам программистов выпуск релизов для Linux. А ещё — помочь Линусу и его команде разбираться с ворохом коммитов и предложений.
Как утверждает сам автор, Git был просто второстепенной разработкой. Он не планировал делать из него что-то серьёзное и уж тем более развивать: просто писал на скорую руку то, что ему было нужно здесь и сейчас. Вот бы он удивился, если б узнал, как его очередной пет-проект раскрутится в будущем.
Linux и его дети: GNU и Gnome
В 1991 году, когда Линус представил первую версию Linux, Ричард Столлман и его команда почти закончили работать над GNU — абсолютно бесплатным аналогом UNIX.
Разработчики испытывали трудности: у них не хватало ядра системы. Поэтому они решили обратиться к Торвальдсу. С этого дня GNU зажила новой жизнью: её стало возможным запустить на любом компьютере и она при этом исправно работала.
После GNU появился проект GNOME, который должен был закрыть потребность пользователей в графических интерфейсах. До этого Linux состояла, по сути, только из ядра. Работа с ней требовала определённой подготовки в IT, а потому сфера применения ограничивалась в основном профессиональными и коммерческими разработками. С помощью GNOME операционку Торвальдса могли запустить на обычном домашнем ПК даже те, кто не был программистом.
Апостолы Linux: Android, Ubuntu
Успешная конкуренция Торвальдса с Microsoft вдохновила других — например, компанию Android, основанную в 2003 году Энди Рубином, Ричи Майнером, Ником Шиарсом и Крисом Уайтом.
Взяв за основу ядро Linux, они немного видоизменили его и получили новую операционную систему для мобильных устройств, которая учитывает геолокацию и персональные настройки их владельцев.
В 2005 году Рубин пытался договориться о продаже Android компаниям Samsung и HTC, но позже стало известно, что их купила Google как минимум за 50 млн долларов. Сегодня в мире используют 2,8 млрд устройств на базе Android.
Linux тоже продолжал процветать. В 2014 году его самый популярный дистрибутив Ubuntu отчитался, что его используют 22 миллиона пользователей.
Linux стала самой популярной не только в коммерческой среде, но и в сфере высших достижений. Все самые мощные машины из рейтинга топ-500 суперкомпьютеров работают на Linux.
Сегодня всего устройств на Linux насчитывается от 3 до 3,5 миллиардов. Так что дело Торвальдса точно можно назвать успешным. С чем мы его, собственно, и поздравляем.
С днём рождения, гуру!