- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF80:Ангел Apache
Материал из Linuxformat.
Ангел Apache
Многие из нас воспринимают лидерство Apache среди серверов как нечто само собой разумеющееся. Брайан Белендорф (Brian Behlendorf) рассказывает Linux Format о том, как сложилось такое положение дел.
Брайан Белендорф
Видный защитник движения Open Source, один из первых разработчиков web-сервера Apache. В настоящее время трудится в Калифорнии, в CollabNet, где разработал систему контроля версий Subversion.
- Возраст: 33
- Национальность: Американец
- Стаж работы в Linux: 12
- Языки программирования: 5
- Количество ПК: 13 (8 ноутбуков)
- Дневная норма кофе: 1 чашка
- Пар сандалий: 1
- Прямая речь: “Идея бесплатного программного обеспечения старше идеи брать за него деньги.”
Трудится ли он на музыкальном фестивале Burning Man далеко в пустыне Блэк-Рок, Невада, или над web-дизайном или ПО для контроля версий в Сан-Франциско, Брайан Белендорф – всегда новатор, переживший безумие fin de siecle, сгубившее так много Интернет-предпринимателей в конце девяностых. Его вера в открытое сообщество и в открытую модель разработки помогла ему добиться успеха в одной из первых фирм, занимающихся web-дизайном, Organic Online, а затем – в CollabNet, основанной в 1999 с целью продажи ПО с открытым кодом крупным предприятиям.
Грэму Моррисону удалось поговорить с Брайаном о том, как Apache возник из первичного бульона NCSA, и о том, какую роль будет играть Linux в будущем в разработке программного обеспечения.
Linux Format: Не могли бы Вы назвать Вашу роль в CollabNet?
Брайан Белендорф: Технический директор (CTO). Я не указываю в моей визитной карточке, что я – основатель.
LXF: А почему на сайте CollabNet Ваше имя – второе?
ББ: Ну, на самом деле главный (СЕО) – Билл Портелли [Bill Portelli]. Я нашел его через три месяца после основания фирмы, так что он – со-основатель. Я был счастлив найти человека с деловым чутьем, который сумел найти людей для работы по продажам и проделать всю муторную процедуру создания фирмы CollabNet – а мне дал возможность обдумать, что мы будем продавать и как нам поведать об этом всему остальному миру, и убедиться, что продукт, который мы выпускаем, востребован.
LXF: И откуда же все началось?
ББ: Если немного перевести стрелки назад, в самые первые дни существования Apache, то начинали мы это все в количестве нескольких человек с создания web-сайтов, и нам был нужен [сервер, который мы могли бы контролировать]. Я очень быстро передал разработку тем, у кого это лучше получалось.
LXF: Ну, так говорит практически каждый разработчик!
ББ: [Смеется] Наверное, открытому сообществу свойственна патологическая скромность. Я расширил сферу деятельности, уделяя больше внимания внешним системам, поскольку я был системным администратором – я должен был быть уверен, что почта работает хорошо, что с деревьями CVS все в порядке и повреждений нет.
Сбор сообщений об ошибках работал, и я создавал проекты, добавляя пользовательские учетные записи и увязывая все это проводами, скотчем, скриптами оболочки – ну, и хакерствовал по этому поводу, потому что на такую работу жалко тратить время.
И всегда приходилось что-то делать даже в свободное время, потому что до CollabNet я работал в фирме, разрабатывающей web-сайты, под названием Organic [Online], а в Apache никогда не было штатных сотрудников, там всегда все делали добровольцы. И я был командой инфраструктуры, я был тем парнем, которому, когда машина зависала, надо было ехать на место, нажимать кнопку перезагрузки и заставлять ее снова работать.
Занимаясь этим, я все больше ощущал недовольство – потому что понимал, что мы с командой могли бы сесть и написать чтонибудь получше с самого начала. Или даже не совсем сначала, но хотя бы пересобрать куски, используя настоящую систему отслеживания пользователей, разрешений и проектов, и превращая все эти инструменты в нечто более тесно интегрированное. Это было бы круто и могло бы содействовать развитию Apache; а еще это могло бы упростить для многих фирм начало работы над открытыми проектами.
LXF: Tак и родилась CollabNet?
ББ: Где-то году в 1998 я устал от Organic и решил поискать что-нибудь новенькое. Я поплакался Тиму О’Рейли (Tim O’Reilly), и он мне сказал: «А не приехать ли тебе к нам и не стать предпринимателем, проживающим по месту службы?» Это были 98–99 годы – деньки в стиле «давай-давай» в Кремниевой Долине – каждая проблема казалась деловой возможностью, достойной немедленной разработки бизнес-плана. На самом деле, если кто так не поступал, его и крутым не считали.
Мы решили собирать идеи, и эта (CollabNet) была одной из них. Заключалась она в том, чтобы собрать все эти инструменты и предлагать их в качестве сервиса фирмам, работающим с открытыми проектами. Одни из первых переговоров мы провели с Sun, которые хотели создать новехонькие сообщества в стиле Apache вокруг первого NetBeans, а затем – OpenOffice.org. Вот эти проекты мы запустили в 1999, и до сих пор они весьма активны. Если вы посмотрите на OOo, на инструменты, которые поддерживают эту общность – для CVS, отслеживания ошибок, публикации контента, координирования релизов и т.п. – все эти инструменты – CollabNet. Sun нам платит, и мы занимаемся этой работой на общественном сайте.
LXF: Как Вам с CollabNet удается теперь убеждать непосвященных в живучести движения Open Source?
ББ: Во-первых, я рассказываю, что 11 лет назад те из нас, кто пользовался web-сервером NCSA, делали это не в качестве хобби.
Не все, но большинство из нас использовало этот сервер, чтобы начать свой бизнес.
Не важно – web-дизайнерскую компанию, как это было у меня, или Internet Movie Database, или web-мастер из MIT… Все мы использовали его для бизнеса, и мы собрались вместе, чтобы написать код.
LXF: И как Вы сумели разглядеть потенциал движения так рано?
ББ: Подозреваю, что я просто не знал ничего лучше. Я был двадцатилетним почти- выпускником Университета Беркли, и львиную долю свободного времени проводил, исследуя потрясающе крутую штуку под названием Сеть. Я был очарован работой системы – казалось, в ней нет центра управления. У моего провайдера Prodigy не было ничего похожего ни на шлюз, ни на центрального координатора, и тем не менее все работало. Я просто отпал, я читал ночи напролет все, что мог найти, просматривал ссылки на рабочие группы IETF. В итоге я присоединился к двум парням, рабочей группе HTTP, и сидел и смотрел, как Тим Бернерс-Ли (Tim Berners-Lee) и Мартин Глисон (Martin Gleeson) обсуждают способы общения Mosaic с web-сервером CERN. Или о рабочей группе HTML – должен или не должен тэг <img> быть контейнером?
По-моему, я не знал ничего лучше, но мне казалось, что работа над дизайном должна иметь форму беседы, а не то, что кто-то с горы провозглашает десять заповедей. Это было очень прочное впечатление, и в ранние дни Apache многие из нас принимали активное участие в рабочих группах HTTP. Нам нужно было вести свой бизнес, нам нужен был web-сервер получше, мы переживали, что Netscape способствует «утечке мозгов» из NCSA, и мы объединяли наши усилия и думали: «Эй, глянем-ка, нельзя ли сделать лучше. Может быть, нам все равно придется покупать коммерческую версию, но пока это лучше, чем вообще ничего».
Однако мне думается, что доля идеализма тоже присутствовала. Мы в Apache очень хотели увидеть эталон применения стандарта HTTP, который мог бы считаться эталоном качества. Нас беспокоило, что какая-нибудь фирма сможет стать владельцем и клиентской, и серверной стороны web.
Случись такое, это было бы равнозначно власти Microsoft на рабочих столах. И побудительной причиной вовсе не была неприязнь к корпорации, причина была в том, что нам нравилась эта штуковина под названием «сеть», без шлюзов, без заглушек, и мы хотели, чтобы она оставалась такой и впредь. Мы и подумать не могли, что 70% рынка станут нашими…
LXF: Вы выбирали лицензию под влиянием таких мыслей?
ББ: Мы обсудили этот вопрос на самой ранней стадии. Изначальная лицензия Apache на базе кода NCSA была невероятно либеральна – она гласила: «Вот вам код, делайте с ним все, что хотите. Можете создавать производные, можете использовать его с любыми целями, но если вы его передадите кому-то еще, не обвиняйте нас, если он не будет работать. Только обязательно сообщите остальным, что код, который вы им передаете, берет начало в NCSA».
Эта лицензия казалась нам справедливой. И поэтому лицензия Apache в основном использовала ту же концепцию. То же самое с BSD. Даже в те дни, в самом начале, мы думали: «А вдруг какая-нибудь фирма возьмет Apache и вставит его в какую-нибудь коммерческую разработку?» А потом решили: «Ну и что? На самом деле, это будет даже хорошо, потому что поможет укрепить позиции HTTP как открытого стандарта.
Используя Apache, они не смогут найти отговорки для отказа соответствовать стандарту». Им не удастся сослаться на излишнюю сложность – как это делали большинство фирм. И более того, мы верили в пряник, а не в кнут. Лицензия GPL гласит: «Вы должны сотрудничать, вы должны делиться своим кодом», а лицензия BSD гласит: «Делайте, что хотите», но мы чувствовали, что фирмы в конце концов снова обратятся к нам и поделятся своими заплатками, и даже своими улучшениями.
LXF: Каким, по Вашему мнению, будет воздействие GPL версии 3 на ПО с открытым кодом?
ББ: Я всегда предпочитал лицензии не в стиле GPL, а в стиле Беркли – это как раз «кнут против пряника». Боюсь, что любая формулировка, расширяющая степень открытости кода, только усложнит процесс привлечения новых участников в движение Open Source. Мне симпатична позиция Ричарда Столмена. Думаю, что в конечном итоге – лет через 30–50, когда программы будут в каждой дверной ручке и мы начнем программировать жизнь на биологическом уровне – доступ к исходному коду будет равнозначен гражданским правам.
Так что насчет отдаленного будущего, по-моему, он попадает в точку.
А в недалеком будущем мне бы хотелось привлечь как можно больше людей и убедить их в преимуществах открытого доступа к коду. Я предпочитаю лицензии попроще. Предложенное решение [для GPL v3] – что если у приложения имеется ссылка, говорящая: «загрузите код», то эта ссылка должна быть сохранена– по-моему, верное. Но мне кажется, что возникнут вопросы о смысле лицензии, если я использую приложение с лицензией GPL, а оно обращается к другому приложению. Надо ли открывать доступ ко всему, или только к той части, которая относится к GPL?
Фирмы пытаются понять, много ли им придется отдавать, и держатся подальше от ПО с лицензией GPL из-за ее крайней неопределенности. И мне думается, что многим это не дает присоединиться к нам. Надеюсь, что GPL v3 исправит это положение вещей.
LXF: А Вас не беспокоило, что фирмы могли бы переделать Apache под свои стандарты?
ББ: Ну, сделали бы они это, и что? Пусть Netscape или даже Microsoft взяли бы код, мы бы не переживали, потому что наличие процесса открытой разработки и открытой лицензии означает, что все равно большая часть деятельности вернется к нам. С масштабом Интернета нам и не нужно было, чтобы такое количество народа кинулось помогать нам с усовершенствованиями.
Мы сделали еще одну вещь, мы подумали: «Что это за комбинация процессов, отношений и инструментов, которая помогла нам создать наш web-сервер?» Мы реплицировали ее в другие программные проекты и в 1998 создали Фонд Программного Обеспечения Apache (Apache Software Foundation). Сейчас в работе 25 различных проектов высшего уровня. Многие из них возвращаются в CollabNet. В 1998-м я видел эту потребность в более понятных компаниям инструментах, потребность в понимании методов разработки или ориентированность на открытость, прозрачность.
LXF: Как Вы думаете, куда движется web?
ББ: Сейчас разрабатывается много интересных приложений, и большое внимание уделяется совместному написанию приложений. Мне очень нравится программа для поиска квартир, соединение Craigslist с Google Maps. Это интересно. Это признание факта, что ценность базы данных не создается одним человеком в стиле советского командно-административного подхода к экономике, нет, она динамически генерируется через объединение деятельности многих и многих людей в более интересную комбинацию. Одна из главнейших ценностей Amazon – его читательские комментарии; главная ценность Wikipedia в том, что она создается огромным числом разных людей. Это не точка зрения Джимми Уэйлса [Jimmy Wales, основатель Wikipedia] на каждую словарную статью; это – сочетание тысяч точек зрения. Я думаю, самые интересные приложения будут как раз слиянием снизу доверху таких вот данных. Мы такого еще не видели.
LXF: А у Вас идеи имеются?
ББ: [Смеется – мы поняли это в смысле «Знаю, но не скажу».]
LXF: Приемлемы ли, по-Вашему, коммерческие web-продукты типа Flash?
ББ: У меня предубеждение против них: эти ребята будут целую вечность создавать плагин для Linux. А для FreeBSD, на которой работаю я, и того дольше. Без исходного же кода всегда сложно предотвращать зависания и исправлять прочие проблемы. А ведь примерно одна из двадцати анимаций Flash либо подвешивает компьютер, либо его тормозит.
Проблема не в Macromedia per se [самой по себе – прим. пер.]. В качестве среды программирования мы выбираем Ajax как более естественный интерфейс. Анимация Flash обладает фиксированным окном, в котором производятся действия, а анимация Ajax (подобно HTML), похоже, умеет вписываться в то окно, которое вы сами предоставляете, и это дает больше гибкости.
LXF: Решение с открытым кодом потребует много времени… ББ: Ну, это инженерный анализ. Даже если это и возможно, все равно вы рискуете вызвать гнев DMCA. Ajax, с другой стороны, создан с применением всех открытых технологий, и когда у вас есть две эквивалентных системы, выигрывает обычно та, у которой открытый код.
Если посмотреть на ситуацию шире, то мы вряд ли увидим конец проприетарного ПО. Как и Apple, мы продаем проприетарное ПО, которое нравится людям, но мы обязаны постоянно двигаться против течения.
Никому не хочется оказаться в положении Netscape, продававшей web-серверы – конкуренты Apache. Нужна бизнес-модель, хотя бы и просто набор сервисов, но предлагающая больше, чем люди могут получить самостоятельно. Интересно будет взглянуть, куда пойдет индустрия ПО в целом в ответ на это.
LXF: Вы считаете, что патенты станут большей проблемой?
ББ: Вот что самое смешное: знаете, какая фирма больше всего пострадала из-за патентов в прошлом году?
LXF: Гм... уж не Microsoft ли?
ББ: Нет, всего лишь Eolas с $500-миллионным патентом [Апелляционный суд США частично отменил вердикт и вынес постановление о пересмотре дела]. А вторая по счету крупная фирма? RIM BlackBerry [сумма, которую RIM без суда выплатила NTP Inc, превышала сумму по делу Eolas].
Я очень рад, что есть организации вроде Европейского Фонда Свободного ПО (Free Software Foundation Europe) и других, которые борются против введения более жестких законов о патентах, и нам в Штатах надо больше двигаться в том же направлении.
Думаю, что главные соратники в этой борьбе – крупные держатели патентов на интеллектуальную собственность (IP), которые поймут, что если слишком закрутить гайки, это будет игра для дураков.
Я не против утверждения, что иногда патенты имеют смысл. Бывают яркие идеи, реализуемые методом долгих проб и ошибок, и должен быть вознагражден изобретатель, а не обязательно фирма, которая платит ему зарплату. Нужно в какой-то степени защитить инвестиции в исследования и разработку. Но самые новаторские достижения в ПО за последние десять лет не являются запатентованными технологиями. Они не являются результатом многолетнего сидения в лаборатории, [они] пришли из сообщества динамической разработки.
LXF: Считаете ли Вы, что разница в развитии американского и европейского ПО увеличится?
ББ: Меня интересует, как пойдут дела с интеллектуальной собственностью в Индии [у CollabNet имеется офис в Ченнае]. Я был там на прошлой неделе и прочел статью о некой фирме Cipla, объявившей, что они готовы начать производство миллионов доз Tamiflu, лекарства от гриппа. Roche Pharmaceuticals, владелец патента на Tamiflu, ежегодно может выпускать только ограниченное количество лекарства, а время поставки, если сделать заказ в Roche сегодня, составляет 18 месяцев. Cipla заявила, что это – вопрос здоровья нации, угроза пандемии, поэтому они и начали выпуск лекарства. [Roche продает лекарство по всему миру, но не обладает патентом на Tamiflu в Индии.] Интересно будет посмотреть, что предпримет по этому вопросу индийское правительство, потому что оно не может получить свою вакцину от гриппа, а у них есть миллиард человек, о которых им надо побеспокоиться, в то время как Roche может изготовить только 12 миллионов доз в год. В некоторых местах патентное законодательство не будет изменяться постепенно. Кое-где настолько уверены в преимуществах более жесткого патентного законодательства, что им нужен прямо-таки Перл-Харбор, чтобы они передумали [налет на Перл-Харбор решил вопрос о вступлении США во Вторую мировую войну, – прим. ред.]. Мне бы не хотелось ничего подобного, но может случиться, что ситуация с Tamiflu заставит людей осознать, что жесткое патентное законодательство может стоить жизней.
LXF: Последнее: Вы все еще играете электронную музыку?
ББ: В стиле Джона Пила [John Peel] – я играю на вечеринках, для друзей, где собирается от 20 человек до…ну, самое большее в прошлом году было человек 600. Это такие вечеринки в стиле андерграунд, где мы разбиваем лагерь, устанавливаем аппаратуру в горах или на пляже, и играем.