Журнал LinuxFormat - перейти на главную

LXF87-88:Интервью

Материал из Linuxformat
Перейти к: навигация, поиск
Интервью LXF

Время Gnome

Джефф Во отринул комфорт Canonical по зову рабочего стола GNU. И, как он сказал нам, занимается им ради своей мамы… и ради еще миллиарда пользователей, которым нужен FOSS.

Джефф Во

Джефф Во [Jeff Waugh] славен своим вкладом в рабочий стол Gnome и своей ролью в стремительном успехе Canonical, где он работал над Ubuntu и развитием его сообщества вплоть до своего ухода в июле. Он – яркая личность, и мало найдется событий в мире свободного ПО и ПО с открытым кодом, которые обошлись бы без выступлений Джеффа. А еще его никогда не удавалось сфотографировать крупным планом. Грэм Моррисон и наш неустрашимый фотограф Джейсон не так давно пытались подловить его на OSCon. Но Джефф оказался слишком проворным. И все же команде LXF удалось заманить его в местный бар и побеседовать с ним о его пристрастии к разработке и развитию Gnome, о том, как ему живется после ухода из Canonical, и о том, как удалось Марку Шаттлворту [Mark Shuttleworth] привлечь к работе его команду преданных делу сотрудников.

LXF: В Gnome много отличных программ. Например, Tomboy и F-Spot...

ДжВ: Да, просто мы никогда не трезвонили об этом. Мы говорим об использовании Gnome на предприятиях, о том, как сделать его проще для пользователей, и о всяком другом, но в нем действительно много по-настоящему классных, радикальных функций и прочего, чем можно пользоваться.

LXF: А что вы считаете самой интересной частью Gnome?

ДжВ: Есть две-три вещи, по-моему, действительно интересные. Вы ведь знаете Metacity, оконный менеджер? В файле README Metacity Хэвок [Пеннингтон, лидер команды Desktop Team в Red Hat, – прим. ред.] описывает его, как Cheerios оконных менеджеров; для меня это сравнение культурологически невразумительное, но я так полагаю, что Cheerios – пресная каша! Говорится, что другие оконные менеджеры подобны Froot Loops и...

LXF: Догадываюсь, что такое Froot Loops. [Американец-фотограф Linux Format Джейсон объясняет англичанину ГМ и австралийцу ДжВ, что Froot Loops – это хлопья с «искусственными красителями, сахаром и мерзким вкусом».]

ДжВ: Так вот девиз Metacity «Управляйте моими окнами и не путайтесь под ногами – знать не хочу про всякие там менеджеры окон; просто делайте это». Именно на это нацелен Gnome. Он просто работает, неважно как. Однако там есть крутая штучка под названием Devil’s Pie [«Дьявольский пирог», – прим. ред.], этакий дополнительный пустячок. Подключите его – и сможете полностью автоматизировать работу Metacity сценариями на Lisp.

LXF: Звучит заманчиво.

ДжВ: Есть еще одна классная штука – Brightside, она заставляет стороны и углы вашего рабочего стола реагировать на разные действия. Например, если вы, перемещая окно, дотащили его до границы экрана, оно всплывет на соседнем [виртуальном] рабочем столе, вот такая навигация.

LXF: Как вы думаете, Xgl и Compiz будут встроены в оконный менеджер?

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

LXF: Удивительно, что это работает.

ДжВ: Да. Но это действительно здорово. В Compiz есть одна штука... Итак, в Metacity тоже есть менеджер композиций, его встроили в существующий менеджер окон и добавили композиционные функции. А для Compiz создали прекрасный композиционный менеджер с возможностью расширений, и одно из расширений работает с окнами. В области управления окнами у Metacity успехи больше, но ведь за ним – годы работы над ошибками. Все эти сумасшедшие функции управления окнами добавлены в Compiz просто для выпендрежа ...

LXF: Вдруг все начали ими пользоваться.

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

LXF: И далеко заводят возможности технологии Compiz?

ДжВ: Мирко Мюллер [Mirco Muller] поработал над созданием классной графики, используя Cairo, композиционные менеджеры и Xgl. Он приехал на Guadec [Европейскую Конференцию Пользователей и Разработчиков Gnome – Gnome User and Developer European Conference] в этом году в первый раз, и встретился там с Дэвидом Ривменом [David Reveman], Китом Паккардом [Keith Packard], Карлом Вортом [Carl Worth]... со всеми, кто создавал технологию, которую он использует, делая всякие красивые вещи. Ну, они начали разговаривать, уселись там, и поехало: «О, а еще надо бы сделать так! И вот этак!», разные крутые планы. Он, небось, пришел вечером домой и говорит [имитирует восхищенный голос]: «Ух, просто невероятно! Я толковал с Карлом и о том, и об этом, и обо всем…». А потом он принялся программировать, и создал такие замечательные вещи, как трехмерный вращающийся куб с анимациями Cairo на прозрачных гранях: теперь на вашем рабочем столе все эти Cairo-мультяшки крутятся на прозрачном кубе и видны все одновременно. Там есть GL-рендеринг, но все это еще и прозрачно, благодаря вашему композиционному менеджеру и применению Cairo для рендеринга. Все это полностью сглаженное, графика векторная и очень быстрая – действительно быстрая. Вот сведите таких людей вместе – и они понаделают чудес.

Разве не забавно: как-то вечером мы заговорили о его работе по клонированию дока Mac OS X. И Мирко сделал множественное отображение для значков, чтобы они выглядели одинаково четко при любом увеличении.

LXF: Значки используют SVG?

ДжВ: В том-то и суть. Сами по себе значки – SVG, но поскольку прямого пути между SVG и GL у нас нет, он конвертировал их в растровые изображения, и по мере увеличения их масштаба, он делал для них рендеринг в разных размерах.

LXF: Здесь-то и показали себя многоуровневые текстуры?

ДжВ: Да. Я говорю: «Значит, ты можешь отрисовывать SVG как GL?», потому что математически это почти одно и то же. И вот мы стали обсуждать, а что если взять SVG, превратить его в объект GL, и обработать его, и поиграть с результатом на экране – вместо мип-мэппинга текстур. Мирко похмыкал, поахал и призадумался, что бы можно создать таким образом. Потом мы поговорили обо всем этом с Китом и Карлом, и Кит объяснил, что лучше всего это делать с помощью Х. Еще до Xgl, потому что Xgl – это X-сервер, являющийся клиентом GL и отображающий все как GL. У X была поддержка такой штуки под названием Glx… запутаться можно!

LXF: Однако вы привыкли.

ДжВ: Ну, да. [Смеется.] Glx – это расширение, позволяющее отправлять команды GL через X. Так что если у вас где-то там есть тонкий клиент и машина, вы можете здесь запустить программу, использующую GL, причем с аппаратным ускорением. Оказалось, что именно так и нужно создавать все эти прикольные GL-штуки. То есть вы трансформируете SVG в GL здесь. А Кит и говорит: можно сделать еще лучше – превратить это в макрос GL там и отправить объект и прочее как макрос через сервер – неважно, локальный или сетевой. И вы получите макрос GL, обрабатываемый аппаратно, его можно настроить. Фактически, мы усовершенствуем сетевой рендеринг, используя GL. Представьте себе аккуратненький, крошечный тонкий клиент с прекрасным графическим чипом Intel и всеми прочими наворотами, который через сеть выполняет работу, требующую аппаратного ускорения, причем экономит трафик.

LXF: Вижу, Gnome прошел долгий путь с релиза 1.0.

ДжВ: Да, 2.0 [вышедший в июне 2002] стал поворотным пунктом в нашей философии по части наших целей. На презентациях Gnome я говорил, что как группа мы выросли и повзрослели, и осознали действительно глубокий философский смысл того, что уже создано, и что свободное ПО предназначено не только для технарей.

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

LXF: Итак, почему же вы ушли из Canonical?

ДжВ: [Смеется] Ну, главным образом потому, что годика через три-четыре появятся дети (я только что отметил годовщину свадьбы). Я хочу рискнуть и заняться чем-то опасным – в какой-то степени – и если я не сделаю этого сейчас, то потом у меня уже не будет на это времени. У нас с женой был серьезный и важный разговор, и я сказал: «Вот что я думаю по поводу того, чем я хотел бы заняться, чтобы работать над Gnome несколько больше, чем раньше». Несколько лет назад у меня был период, когда я много работал как независимый консультант и получал приличные суммы, сделал сбережения, и потом месяцев девять изредка выполнял случайные работы, а почти полный рабочий день занимался Gnome.

LXF: Нельзя ли было при этом оставаться в Canonical?

ДжВ: Ну, это смешно. Многим разработчикам свободного ПО, работающим на фирмах, часто говорят: «Да тебе ж оплачивают полный день за занятие всякой ерундой!» Но на самом деле все не так. Я не думаю, что для Canonical будет разумно с финансовой точки зрения оплачивать мне полную занятость работой над Gnome. Нельзя забывать, что Canonical – небольшая начинающая фирма, они не делают деньги, во всяком случае, не сверхприбыли. Много средств они тратят на ShipIt [Canonical высылает диск любому, кто попросит об этом], да и на многое другое. Это маленькая и сплоченная команда, и у них нет таких уж супердоходов, чтобы с их стороны это было разумно [оплачивать мою работу над Gnome]. Я сам должен решить, как это делать!

LXF: А вас не поддержит Gnome Foundation?

ДжВ: Нет. На данный момент у Gnome Foundation все в полном порядке, и они зарабатывают кое-какие деньги; но на создание фондов и проработку финансовой модели, чтобы нанять сотрудников, нужно время. Так что я не особенно рассчитываю, что буду работать в Фонде. Может, когда- нибудь в будущем.

LXF: Как вы впервые вышли на Canonical?

ДжВ: Марк [Шаттлворт] позвонил моему другу, Роберту Коллинзу [Robert Collins], на LCA 2004 [linux.conf.au], проходившую в Аделаиде. Роб тогда работал над системой контроля версий Arch в TLA [исходный репозитарий Arch], а Марк знал, что он, в частности, собирался заниматься распределенным контролем ревизий, и это могло стать новой ступенью сотрудничества в мире Open Source. Марк поглядел на Arch и почуял, что сам Arch и идеи, которые стоят за ним, дают правильный взгляд на вещи. Поэтому он позвонил Робу Коллинзу на LCA, поболтал с ним и рассказал, чем хочет заняться.

В то время Роб был директором фирмы по консалтингу и разработке, и был вполне доволен своей работой, но Марк подкинул ему свою безумную идею, которая казалась неотразимой. Я как-то и забыл об этом, но сейчас вспоминаю, что Роб подошел ко мне на LCA и сказал: «Господи, только что у меня был поразительнейший телефонный разговор! Сейчас я не могу тебе рассказать, но когда-нибудь расскажу…»

LXF: Он был в космосе!

ДжВ: [Смеется.] Ну, в ИТ-индустрии такое постоянно встречается, так что я просто подумал: «Случилось что-то из ряда вон выходящее, но там посмотрим». На самом деле, Марк был на пути к Антарктиде…

LXF: Как вы…

ДжВ: [Смеется] – на ледоколе, и с собой у него были архивы рассылок Debian за полгода.

LXF: Блестящая идея!

ДжВ: Да, потому что он знал, что в свободное время на этом ледоколе ему придется просто скучать, вот он и решил заняться чтением. А целью его было выяснить, чей вклад в Debian особенно велик, чтобы привлечь этих людей к себе. Нанимать сотрудников в мире Open Source замечательно просто – ведь вся работа на виду. На обратном пути он встретился с Робом в Сиднее, и Роб был очень не прочь [приступить к работе над Arch в Canonical на полный рабочий день]. Роб знал, что мои тогдашние задумки прекрасно вписываются в идею Марка. Я в то время работал на одного интернет-провайдера, где все было безнадежно, я уже созвал свою команду на обед и сообщил им, что у нас осталось 90 дней. Это было ужасно, просто в депрессию повергало. Ну, и Роб позвонил мне, и сказал: «Давай иди и встреться с этим парнем», а я говорю: «Да время не очень подходящее, лучше как-нибудь в другой раз». Но Роб настаивал, что это надо сделать сейчас, потому что этот парень пробудет здесь только один день; некоторое время мы с ним препирались, а потом он сказал: «Ну, хорошо. Ты когда-нибудь видел человека, побывавшего в космосе?» Я сказал: «Нет». «А хочешь увидеть?» «Да». «Тогда ступай и познакомься с ним, прямо сейчас. У него, похоже, есть для тебя работа». Дзинь! «Ну, раз так…»

Ну, мы уселись, и Марк изложил свои взгляды. Первое, что он сказал – «Хочу создать дистрибутив Linux». Я чуть было не встал и ушел, потому что тогда казалось, что глупее этого ничего и быть не может. Но потом он начал объяснять, что за этим стоит, какова модель в его представлении, и какое это все имеет значение. Уже на тот момент у него было абсолютно ясное представление о таких вещах, как релизы, появляющиеся каждые полгода, рабочий стол Gnome, один CD, совершенно свободный для дальнейшего распространения, создание сетей поддержки, распределенный контроль за новыми версиями и создание условий для эффективного труда разработчиков дистрибутива, переход к модели, абсолютно не похожей на другие дистрибутивы Linux, и – это был один из основных пунктов – создание всего этого на базе Debian.

Вот он все это рассказал, а я и думаю: «Э, да ты действительно понимаешь, как эта модель работает и что творится в данной индустрии». И ведь через 90 дней я становился безработным! Роб-то был вполне доволен своей фирмой, и идея начинать с нуля казалась ему безумной. Это и вправду рискованно, и все, кто собирался работать в Canonical, навидались дот-комов [т.е. интернет-компаний, чьи сайты имеют расширение .com; после их бума последовали массовые банкротства, – прим. пер.]. Но Марк много чего наговорил, и убедил нас, что никаких дот-комовских глупостей не будет, а будет нечто долгоиграющее, сконцентрированное на основной идее и на коммерческой стороне; в общем, он не был просто эдаким папиком, он сам входил во все детали и занимался всем. Он собрал сливки с Debian. Последние четыре релиза и тот рост Ubuntu, который мы наблюдаем за последние два года – результат работы 20 человек и их умения создат свое сообщество пользователей.

LXF: Я бы сказал, звучит впечатляюще.

ДжВ: А что касается коммерческого интереса, он тоже вырос… и наши бизнес-модели отсчитывали уже второй год, хотя сами мы еще были на первом. Многие смотрели на нашу модель, на что она похожа – и даже уже после первого предварительного релиза люди сказали: «Вот это нам и надо». LXF

Читайте еще!

Джефф защищает Х, объясняет проблемы установки Dapper и болтает о своей теще в полной версии интервью на http://www.linuxformat.co.uk/waugh.html.

Персональные инструменты
купить
подписаться
Яндекс.Метрика