Будни разработчика
29.01.09Мой Компьютер, №17 (521), 15.09.2008
МК: Привет. Чем ты занимаешься? В чем заключается твоя профессиональная деятельность?
С.У.: Официально моя позиция называетя consultant. По сути — энтерпрайзовый разработчик-эникейщик. Работаю в ирландской фирме среднего масштаба (недавно купленной большой штатской фирмой). Формально специализируюсь на java, но последние 3 года имею дело в основном с ibm-овским стеком WMQ/WMQMB. Ну, и всякие СУБД, в первую очередь oracle, куда ж без них?
МК: Какое отношение имеешь к GNOME?
С.У.: Моя сфера интересов — интеграция GNOME и XKB, что включает в себя конфигурирование и индикацию. В ходе работы над этими компонентами мне пришлось расширить свою сферу влияния за пределы GNOME. Я, во-первых, обнаружил, что мой код может быть полезным не только в GNOME (это подтвердилось с выходом KDE4). Так появилась библиотека libxklavier. Во-вторых, я изначально был в шоке от того, что творилось в базе раскладок xfree. Это был ужас неструктурированности, на который всем активным англоязычным разработчикам было плевать. Раскладки и варианты добавлялись как попало.
Коль скоро я был «человеком GNOME», я не мог показывать эту инферналию пользователю. Было два выхода — либо «спрятать» все за набором прошитых в коде строчных констант (путь KDE3), либо разгрести эти Авгиевы конюшни, став их хозяином.
Так появился проект xkeyboard-config, сейчас он — официальная база раскладок XKB в X.Org. На сегодня вся информация о доступных раскладках, вариантах и опциях, показываемая пользователю в GNOME и KDE4, берется непосредственно из этой базы. Поэтому многие баг-репорты в GNOME я закрываю как NOTGNOME — и потом радостно встречаю их в xkeyboard-config.
Я очень благодарен Ивану Паскалю за помощь на первом этапе. Также хотел бы упомянуть Daniel Stone — без его знания внутренностей кода x.org многие проблемы висели бы годами.
Частью «основной гномовской тусовки» я никогда не был — ни географически (ибо тогда большая часть разработки велась в Штатах), ни корпоративно (я не работал ни на одну из основных компаний, двигающих GNOME). Просто общался и общаюсь с теми, с кем нужно для дела — с людьми, работающими над GTK, gnome-control-center, gnome-applets, gnome-settings-daemon.
Вопрос был про GNOME но ответ получился все больше о том, что «ниже». Но оно действительно так и было в реальности — чтобы получить что-то презентабельное на верху стека, мне пришлось спуститься вглубь. После этого построение «верхнего этажа» было относительно несложной задачей.
МК: Почему именно данный проект?
С.У.: Почти случайно. В конце 90-х в Фидо проскочил отчет с конференции, где упоминались KDE и только появившийся GNOME (в забавном ключе «KDE умирает, а тут появился крутой новый концепт, будущее за ним!»).
C++ и всей его болью я тогда был сыт по горло на работе, плюс лицензионный вопрос был тогда еще открыт… В общем, заинтересовался.
А потом обнаружил, что «переключалка» gkb там работает плохо, сделал свою gswitchit (сайт на sf.net жив до сих пор). Потом пользователи сагитировали меня включить мой вариант в базовый набор (я не очень удачно это проделал, обидел разработчика gkb). Ну и пошло-поехало…
МК: Над чем сейчас работаешь?
С.У.: В следующей версии GNOME пользователи смогут выбирать раскладки не только по стране, но и по языку. Это потребовало изменений по всему стеку — начиная с метаинформации в xkeyboard-config. Кроме того, я руковожу проектом Google Summer Of Code, посвященным разработке графического редактора раскладок. Буквально на днях мой студент выдал первый драфт — выглядит прилично. Очень надеюсь, что разработка не остановится в сентябре.
МК: Что нас ждет в GNOME 3.0? Когда мы его увидим? Не повторит ли он судьбу KDE 4.0?
С.У.: Когда? Вроде как было заявлено 2.30=3.0, считайте сами… Что ждет — выброс старого хлама из API, добавление новых возможностей. Очень серьезная заявка — добавление библиотеки Clutter в gtk. Это может привлечь мобильные платформы. Очень надеюсь на уход bonobo и libgnomeui. Мертвый, ненужный код. Как следствие — смена архитектуры панели и апплетов.
Насчет судьбы KDE4 — конечно, риск есть. Но надо помнить, что у GNOME большой опыт эволюционных, постепенных изменений. Правда, эволюционно поменять панель вряд ли получится. Важно, что у GNOME и GTK отношения принципиально теснее, чем у Qt и KDE. Все-таки разработчики GTK давно не позиционируют его как отдельную самодостаточную платформу, а работают в рамках GNOME. Это также поможет избежать повторения сценария KDE4 — который, думаю, не в последнюю очередь всем обязан революционности Qt4. Революция началась в тулките (сознательное решение Trolltech) и привела к еще более серьезной революции в десктопе. «Это не наш метод».
МК: В каких еще проектах ты участвуешь/участвовал?
С.У.: Еще один мой проект, которым я сам постоянно пользуюсь на работе — sql plugin for jedit. В 2000 г. я не нашел удобного кросс-платформенного клиента для множества СУБД. Пришлось сделать свой.
Нужно упомянуть такой интересный проект, как OLPC. Мое участие в нем весьма скромно — но это был любопытный опыт.
МК: Сейчас какая роль у тебя в OLPC?
С.У.: Меня пригласили для работы над эфиопской раскладкой. Любопытная письменнность, даже цифры собственные…
Сейчас просто изредка отвечаю на вопросы, связанные с раскладками. По сути, обычная работа в рамках xkeyboard-config.
МК: Как оцениваешь сам OLPC? Какие пути развития видишь?
С.У.: Проект, на мой взгляд, в каких-то метаниях — в том, что касается софта. Есть очень интересная и необычная, новаторская концепция Sugar. Зачем-то Негропонте решил поддерживать Windows XP — при том, что неизвестно, какой объем работ придется произвести для достижения хотя бы приемлемой скорости работы (ау, Windows ME!). Неизвестно даже, достижима ли эта цель вообще. Я попробовал использовать xubuntu на olpc — совсем не впечатлен скоростью работы, все-таки железо очень небыстрое. С точки зрения аппаратной части — конечно, этот проект «прорывный». Взять хотя бы экран, способный работать в цветном режиме как обычный LCD — и в ч/б режиме, отражая падающий свет. О гуманитарном аспекте проекта я, пожалуй, не буду говорить. Мне симпатичен базовый философский «посыл» этой команды — уничтожение «digital divide». Но я не могу сказать, что однозначно уверен в полезности и эффективности избранного метода. Как показал опыт G1G1, не все в порядке с логистикой и поддержкой. А тут еще флирт с Microsoft…
МК: Откуда такая неприязнь к Microsoft?
С.У.: К явлениям такого масштаба нельзя относиться однозначно. Все-таки этой компании мы во многом обязаны тем миром IT, который видим сейчас — и не только плохим, но и хорошим. В частности, победа открытой платформы PC — во многом заслуга этой компании. Да и технологии, разработанные или введенные в ранг «индустриального стандарта») в Microsoft, с чисто технологической точки зрения очень часто оказываются «на своем месте в свое время».
Теперь о негативном. Так или иначе, это лидер и наиболее успешный представитель компаний, сделавших бизнес на закрытом ПО. Самый отвратительный для меня класс таких компаний — «коробочники» (производители того, что называется shrink-wrapped software — «коробочное ПО», не знаю более удачного перевода). Бизнес по торговле воздухом. ПО, за которое не несут серьезной ответственности (что закреплено в соответствующих EULA). В общем, не буду пересказывать то, что до меня — и значительно удачнее — многократно произнесено Столлманом J. Только напомню, что документ, антитезисом которого можно считать GNU Manifesto, «Открытое Письмо Любителям», был написан молодым Гейтсом в 1976 г.
В контексте OLPC подключение Microsoft к проекту означает продвижение в третий мир закрытой, неэтичной платформы, рассчитанной на выкачивание денег. Запрет на свободное распространение — в странах, где каждый доллар на счету. Разве это не предательство, в каком-то смысле, изначальных целей проекта OLPC?
МК: Почему ты занимаешься именно OpenSource? Это только хобби? Или это приносит деньги?
С.У.: Во-первых, не Open Source, а Free Software. В этом ответ на вопрос — мне очень близка этическая платформа Столлмана, и я считаю неправильным выкидывать ее за борт, как сделали изобретатели концепции Open Source. В смысле процесса разработки (то, что составляет основу Open Source) — я, конечно, привык к нему, он удобен и прозрачен — но, как мы видим в жизни, он не гарантирует качественного результата. Есть качественные закрытые коммерческие продукты, есть откровенно плохие «опенсорцевые» — так что Open Source совсем не является универсальным лекарством для всех проблем процесса разработки. Что действительно важно для меня — это то, что во Free Software заложил Столлман, набор понятий о том, «что такое хорошо и что такое плохо». Для меня это хобби, занимаюсь в свободное время (поэтому — меньше, чем хотел бы).
МК: Стал бы ты работать за деньги на Open Source компанию?
С.У.: Абстрактно — да, конечно. Конкретно — я не очень представляю себе, как это может выглядеть в данный момент. Разве что — удаленная работа, ведь в месте моего проживания нет центров разработки крупных Open Source компаний. Разумеется, это означало бы начать карьеру сначала, в некотором смысле — но ради интересного и стоящего дела почему б не рискнуть?
МК: Как думаешь, какие перспективы у OpenSource и GNOME в частности?
С.У.: Блестящие, это очевидно! О серверной части не буду говорить — там все ясно. Почта и Веб просто не живут без «опенсорцевых» и свободных решений. Идет процесс открытия Java (J2SE открыт, J2EE получил открытую реализацию) — так что и на уровне предприятия в бекенде будет «наш» софт.
Про десктоп. Ниша, созданная Asus EEE PC, устроила прорыв для линуксовых решений. У Microsoft просто нет адекватного ответа (кроме откровенно юмористического варианта XP Starter Edition). Серьезные проблемы для линукса могла бы создать MacOS, начни Apple ее лицензировать (и создай слегка урезанную версию) — но этого мы не видим и можем только радоваться.
Фактически, на десктопе Windows зажаты «снизу» Линуксом (и это уже не мечты, а реальность), «сверху» — MacOS. Конечно, эта «середина» пока еще гораздо больше 50%, но наблюдается важнейший факт — OEM уже не боятся Microsoft, как раньше. Он уже не имеет возможности выкручивать им руки (особенно с учетом провала Vista). Это о линуксовом десктопе «вообще».
А какой именно это будет десктоп… Понятное дело, конкуренция между GNOME и KDE будет продолжаться. Я бы не хотел, чтобы кто-то из этих двух игроков умер. Конкуренция и выбор — это прекрасно, как и то, что в процессе работы будут находиться общие решения и стандартизоваться на уровне freedesktop.org. Это облегчит жизнь независимым производителям программ.
Единственное, на мой взгляд, угрожает линуксовому десктопу, то, что он перестает (или уже перестал) быть «андерграундом». И однажды может перестать привлекать часть «диких хакеров». Пока что у GNOME нет недостатка в независимых разработчиках (хотя, конечно, деньги RedHat/Novell/Sun очень важны). Но если однажды выражения «линуксовый десктоп» и «скучно, обыденно» встретятся — тогда комьюнити быстро умрет. Не хотелось бы.
Впрочем, это вряд ли случится завтра. А пока что у нас есть то, что в английском называется словом momentum («импульс», «толчок»). Мы его используем, в меру сил.
Глоссарий:
GNOME — свободная среда рабочего стола для UNIX-подобных операционных систем.
GNOME — (GNU Network Object Model Environment) — «сетевая объектная среда GNU».
Хkb — расширение протокола X сервера, обеспечивает работу с разными раскладками.
KDE — рабочая среда для рабочих станций UNIX, основная цель которой — «прозрачная» работа в сети.
X.Org — организация, основанная в 1999 году The Open Group и координировавшая разработку X Window System; аналогично называются и разрабатываемые ею продукты.
GKB — переключатель раскладок клавиатуры.
GTK — одна из распространенных библиотек оконных элементов системы X Window.
OLPC (One Laptop per Child) — проект, который занимается разработкой дешевого компьютера для развивающихся стран.
Ричард Мэттью Столлман — основатель движения свободного ПО, проекта GNU, Фонда свободных программ и Лиги за свободу программирования.
Anton Kapinys aka civitano
Web-droid editor

вологість:
тиск:
вітер:

Огляд джерела безперебійного живлення PowerWalker VFI 2000 AT: такі часи



Джерела безперебійного живлення стали як ніколи актуальними цієї зими. Про досвід використанням в умовах квартири з автономним опаленням, розкажемо на прикладі моделі PowerWalker VFI 2000 AT

Електровелосипед Acer ebii отримав штучний інтелект, який слідкує за безпекою пересування
Acer електротранспорт штучний інтеллектНалаштування реалізовані за допомогою фірмового застосунку ebiiGO: тут можна отримати інформацію про час автономної роботи, рекомендовані маршрути, розблокувати і заблокувати велосипед
Xiaomi представила смартфони серії Redmi Note 12 в чотирьох версіях для європейського ринку
Android MediaTek Qualcomm Redmi Xiaomi смартфонМоделі Redmi Note 12 для китайського ринку подекуди мають відмінності технічного плану і помітно дешевші