И снова о русском Linux’е

Citkit, 26 декабря 2007 г

Проблемы русского Linux’а обсуждались не намного меньшее число раз, чем вопрос противостояния Linux и Windows, KDE против GNOME или Vim versus Emacs. В достаточной мере представлены эти материалы в историческом разделе нашего блогосайта. Почему же приходится снова обращаться к этой теме?

 

 

Забыл я автора,
И Google, бл…ь, сломался
Распалась связь времен.
(с) Народное POSIX’ивистское

Во-первых, в связи с активизацией деятельности по продвижению Linux’а в Госсектор, в первую очередь в систему образования, опять всплыли вечные, но, казалось бы, крепко притопленные, темы о создании собственного, исконно-русского, дистрибутива или даже написанной с нуля сермяжной (она же посконно-кондовая и домотканная) операционной системы.

А во-вторых, для настоящей заметки появился конкретный повод: присланная в редакцию Citkit статья Алексея Дмитриева Русский Линукс: первоочередные задачи. Сама по себе она содержит мало нового, но являет собой пример концентрированного собрания предрассудков, заблуждений и прямых ошибок, связанных с заявленной темой.

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

Я, конечно, отдаю себе отчет в том, что написана она, судя по всему, автором, инсталлировавшим свой первый дистрибутив Linux’а пару-тройку месяцев назад. И потому прошу его принять все сказанное мной далее не в обиду, а как информацию к размышлению. Тем не менее, совсем без ответа я ее оставить не могу. Ибо практически каждой своей фразой автор дает повод для претензий по существу. А уж поводом для мелких придирок может быть любое слово.

И еще подчеркну: сказанное ниже представляет собой личное мнение alv’а — старого линуксописателя. Мнение редакции с ним совпадать не обязано.

В связи с этим всё дальнейшее изложение будет представлять собой своего рода виртуальный диалог по схеме «цитата — > комментарий». Цитаты даются as is.

Начать можно прямо с первой фразы:

Итак, Линукс уверенно укоренился на Российской почве.

О, этот сакраментальный оборот итак! Создающий впечатление, что только вчера в российскую почву бросили семя Linux’а — а сегодня он уже пустил в ней корни. Если это не просто литературный штамп, должен несколько разочаровать автора: Linux укоренился на российской почве… ну как минимум года с 94-го. Прошлого тысячелетия, разумеется. А уж времени жизни его предыдущим инкарнациям — вариантам Unix’а, — счет идет на десятилетия.

Последние версии таких дистрибутивов как MopsLinux и AspLinux, похоже, ни у кого не оставили сомнения — да, можем!

Хочется спросить автора: а что, предпоследние версии этих дистрибутивов оставляли сомнения? Или повод для сомнений дает дистрибутив Altlinux от одноименной российской компании? Или русская редакция Scientific Linux, выпускаемая питерской фирмой Linux,Ink, выглядит в чем-то сомнительной?

А если уж спуститься совсем в седую древность, то можно вспомнить также KSI и BlackCat с братской Украины. А о пионерах отечественного дистростроения, УрбанСофт и IPLabs Linux Team (ныне они носят упонянутые выше имена Linux,Ink и Altlinux), как-то даже и говорить становится неловко.

В общем, куваевский бич применительно к дистрибутивам Linux свою знаменитую фразу — «Могём, начальник! Кто сказал, что не могём?» — мог бы смело произнести году в 2000, как минимум, а то и раньше.

Если же вспомнить, что среди разработчиков международных проектов, например, FreeBSD, также немал процент русскоговорящих (хотя и не обязательно российскоподданных или российских резидентов), то отпадут последние сомнения в том, что «наши люди — фигли говорить».

Можем делать дистрибутивы не хуже, а для нас, учитывая все сложности русификации, и лучше западных.

Оставим в стороне вопрос, что такое «лучше» и «хуже» применительно к дистрибутивам Linux, а также проблему Востока и Запада. Но вот утверждение о сложности русификации последних лежит в области легенд и мифов Древней Греции. По крайней мере наиболее распространенные «западные» дистрибутивы, такие, как Red Hat, Suse, Debian, Ubuntu, не говоря уже об изначально интернациональной Mandriva, давно уже способны работать с языком родных осин ничуть не хуже, нежели самые-рассамые отечественные разработки.

Настало время определить пути развития русского Линукса…

Что же такое случилось, что именно сейчас настало это время? Неужели выход последних версий MopsLinux и AspLinux? Ведь до сих пор русский Linux как-то спокойно развивался естественным образом, без всяких определений его пути посредством чьих бы то ни было директивных указаний…

…чтобы не копировать слепо западное направление развития.

… причем не копируя слепо западное направление, а в рамках всеобщих тенденций дистростроения. В частности, и в направлении интернационализации — например, развития тюркскоязычных локалей. Ведь это вполне естественно — в дистрибутивах южноафриканского происхождения развивается и расширяется поддержка, скажем, языка зулусов, а в дистрибутивах России — татарская, казахская и другие локализации.

Линус Торвальдс, с упорством маньяка, печет как блины новые релизы ядра — каждые 2-3 месяца новый релиз.

Да уж, сильно сказано. Если Линус — маньяк, то я как минимум китайский император.

И вообще-то Линус не печет релизы, а с упорством… не маньяка, а энтузиаста, занимается разработкой тех вещей, которые лично ему интересны. При этом рассматривая и координируя патчи сторонних разработчиков, касающихся тех подсистем ядра, которыми он сам лично не занимается. Причем делает это абсолютно добровольно.

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

… но может быть лучше довести до ума какой-нибудь один?

Ввиду отмеченной выше добровольности работы Линуса (и других ключевых разработчиков) по координации разработки ядра, предъявлять им какие-либо претензии — как минимум, не тактично.

Вообще, меня просто умиляют заявления типа — «лучше бы разработчики делали то, а не это». Разработчики делают то, что считают нужным, что они умеют и что им интересно. Если вы полагаете, что они делают что-то не то или что-то не так — вспомните, что это же Open Source. То есть никто не запрещает вам сделать что-то другое, по вашему мнению, более нужное, или что-то, на ваш взгляд, лучшее. Так что флаг в руки, барабан на брюхо — и вперед, с песнями, к своей идеальной разработке.

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

Ну во-первых, как было сказано в предыдущем абзаце, если вы считаете, что это лучше — берите какой-нибудь один и доводите его до того, что полагаете «умом».

А во-вторых, если дистрибутив разрабатывается — значит, он кому-то и зачем-то нужен. Как минимум — своему разработчику. Если дистрибутив не нужен никому — проект просто тихо умирает. Правда, мне известен дистрибутив, который живет, хотя не нужен даже своим разработчикам — но это один единственный пример на без малого пятьсот зарегистрированных на http://distrowatch.com.

Ведь что движет группой разработчиков ядра — они стремятся поспеть за стремительно развивающимся «железом».

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

Разработка драйверов устройств для поддержки стремительно развивающегося «железа» — лишь одна, и далеко не главная, сторона их деятельности. Как раз наоборот — желающих заниматься этой рутинной работой из голого энтузиазма не так уж много. И это одна из причин того, что поддержка «железа» в Linux’е не идеальна.

А что побуждает железо стремительно развиваться? Софт. И уж конечно не свободный софт, а проприетарный, и в первую очередь Микрософтовский.

Тут автор просто перевернул все с ног на голову. Как раз наоборот: новый софт, и проприетарный, и свободный, развивается, чтобы использовать возможности стремительно развивающегося «железа». И только тогда, когда развитие этого «железа» позволяет. Вы можете представить себе Windows Vista или KDE с трехмерными эффектами, работающие на процессорах P-166 и видеокартах от S3 с мегабайтом бортовой памяти? То-то же…

Свободные исходники и влившийся в них мощным потоком Линукс с самого начала противопоставляли себя Микрософт и иже с ними.

Для начала, будучи старым бюрократом, не могу не отметить терминологической неточности. Если бы автор, опять же, не поленился ознакомиться с соответствующей литературой, например, в специально под это отведенном разделе данного сайта, он бы узнал, что никаких свободных исходников не существует. А существуют движение за свободные программы (Free Software — на всякий случай подчеркну, что его не следует путать с понятием Freeware, то есть программ бесплатных) и движение за открытые исходники (Open Source). И это не идентичные, хотя и родственные, явления.

Далее, движение Free Software не могло с самого начала противопоставлять себя Микрософту хотя бы потому, что возникло тогда, когда Гейтсу и Аллену можно было только мечтать не то что о всемирной монополии, но и даже об общем признании. Ибо разрабатываемые компанией продукты в то время предназначались для сугубо маргинальной сферы IT-индустрии.

Что же до Linux’а — так Линусу в 1991 году был глубоко параллелен сам факт существования компании Микрософт. Подозреваю, что в глубине души он ему параллелен и по сей день.

А в итоге оказались в качестве догоняющего в навязанной им гонке «железа».

Вообще-то, за почти 10 лет работы в Linux’е (а также и BSD), я никакой такой «гонки железа» не заметил. Просто на каждом этапе развития оного разрабатываются программы, использующие новые его возможности. Например, в 1998 году KDE 1-й версии прекрасно работал у меня на машине с P-II/266 и 64-мя мегабайтами оперативной памяти. Ныне он столь же прекрасно работает при двухядерном процессоре AMD с реальной тактовой частотой 3 Ггц и 2-мя гигабайтами «мозгов» — в своей третьей ипостаси, имеющей, по сравнению с 1-й, массу полезных и удобных, а то и просто красивых, «фич». Появление которых и стало возможным вследствие развития «железа».

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

Как уже было сказано выше, это и так далеко не единственное направление разработок. Тем более, что и гонка-то на самом деле не не имеет места быть…

А другим направлением, к сожалению второстепенным, является «доведение до ума» уже существующего в мире свободных исходников.

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

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

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

Тем не менее, цитированная фраза знаменует возвращение автора к теме русского Linux’а, от которой он отвлекся рассуждениями о «гонке железа».

Делать дистрибутивы мы научились.

Как было установлено выше, делать дистрибутивы «мы» (вероятно, в смысле — «весь великий советский народ»? Или в понимании Замятина?) научились давно. И продолжаем учиться — то есть совершенствовать уже сделанное. Впрочем, «не-мы» поступали и поступают точно также. Более того, нередки случаи, когда «мы» и «не мы» трудятся плечом к плечу над одними и теми же проектами.

А что мешает распространению этих дистрибутивов в народные российские массы?

Задается далее автор риторическим вопросом. Должен его огорчить — ничего не мешает. Более того, процесс распространения идет очень давно. Только на моей памяти оценочное число только активных пользователей Linux’а возросло на порядок. А если учесть пользователей пассивных — тех, кто даже и не знает, какая ОС установлена на его автоматизированном рабочем месте, домашнем десктопе, наладоннике, смартфоне (нужное дописать) — не знает, потому что его этот вопрос ни в малейшей степени не колышет, — то число таких пользователей возрастет еще как минимум на порядок.

Тем не менее автор полагает, что распространению Linux’а в массах кто-то или что-то мешает (не происки ли мирового жидо-масонства или проклятых имперьялистов?). И предлагает свои варианты ответа, что мешает именно.

Во-первых, плохое знание английского языка широкими российскими массами.

Тут автор, подобно герою известного анекдота, как всегда оказался не прав. Широкие российские массы соответствующего возраста владеют английским, как правило, лучше, чем их ровесники по моему поколению (автор этих строк тоже не читает Шекспира в подлиннике, мягко говоря; Гёте и Шиллера, язык которых учил в школе и ВУЗе, в оригинале не читает тоже). Иногда при просмотре форумов создается впечатление, что многие из участники английским владеют лучше, нежели родным :) Это раз.

Два — для чтения документации отнюдь не обязательно владеть языком Чосера, как родным. Ибо написаны часто отнюдь не нативными носителями оного, и потому очень просты.

Три — очень большое количество документации переведено и переводится на русский язык, о чем автор, вероятно, не осведомлен.

И четыре — никакой словарь, будь он хоть трижды ABBYY Lingvo, не поможет в понимании специфических терминов, если нет понимания сути терминов этих.

Так что увы — но «создание современного, удобного, максимально полного, и современного англо-русского электронного словаря» и на фиг не нужно. Все равно без минимально-технического английского не обойдется ни один активный линуксоид. Ибо даже при стопроцентно русскоязычной документации ему все равно придется читать и понимать системные сообщения, комментарии к конфигурационным и Make-файлам, всякого рода README, переводить которые на русский, хвала Аллаху, еще никто не додумался (хотя в Сети можно найти упоминания о проектах создания исконно русской операционки, в которой даже информация о ходе загрузки выводилась бы на Великом и Могучем).

Для линуксоида же пассивного чтение документации — не его вахта, ибо все, что касается системной части, за него и для него должен сделать линуксоид активный. И ему останется только осваивать необходимые приложения — а уж с русификацией большинства их, как и рабочих сред типа KDE и GNOME, дело давно уже налажено.

Второй сдерживающий фактор освоения Линукса — руководства, пресловутые «маны».

Да, это уже переходит всякие границы… Каждый, все-таки освоивший Linux (а таких людей, как было отмечено ранее, не так уж и мало), скажет, что смог сделать это благодаря чтению man’ов. И невдомек ему, бедняге, что это был сдерживающий его развитие фактор. Тем же, для кого понять man’ы «задача почти непосильная» — так может быть, оно им и не надо, этого Linux’а? Так что, действительно

Простым переводом на русский проблему манов не решить

И не потому, что

в переводе непОнятости накладываются на непонЯтности

Тут скорее нужно чего-то поправить в консерватории.

Да и вообще, чтение man’ов «в подлиннике» предпочтительней по одной простой причине: перевод по определению всегда будет отставать от оригинала в отношении версии. И потому новые опции и «фичи» могут не найти в нем отражения.

Кстати, уж что-что, а язык man’ов предельно прост. И не потому, что написаны они не нативными «англичанами», а потому, что вполне сознательно сочинялись «для всех» — в том числе и не очень твердых в аглицкой мове. Я лично знаю людей, владеющих английским еще хуже меня — и тем не менее вполне успешно разбиравших man pages по интересующим их вопросам.

Для тех же, кто не в ладах с вражьей мовой до степени полного непонимания (и заодно для автора), открою страшную тайну: работа по переводу man’ов ведется уже много лет, историю чего можно прочитать на сайте Виктора Вислобокова. Да и майнтайнеры дистрибутивов не остаются в стороне от этого процесса — причем не только наши, родные, но и такие западные акулы, как Novell и Red Hat.

Ну а уж следующий тезис автора:

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

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

И этот «народный проект» активно развивается и по настоящий момент. Ибо буквально каждый день на многочисленных Linux-сайтах и в еще более обильных блогах линуксоидов появляются материалы по теме — и частные, посвященные решению некоей конкретной проблемы, и общие, вплоть до подробных руководств.

Чтобы убедиться в этом, автору достаточно было бы зайти на сайт Виктора Костромина, на котором собраны ссылки на все русскоязычные материалы по Unix, Linux и Open Source. Впрочем, все содержание статьи оставляет впечатление, что у автора не только Google сломался, но и вообще весь Интернет.

Комментировать предлагаемое автором

третье направление развития отечественного Линукса — программы проверки правописания и пунктуации

Не возникает никакого желания. Ибо это ни что иное, как предложение изобретать очередной велосипед. Возможно, даже с квадратными колесами. Вместо того, чтобы, говоря словами автора и его собратьев по классу, развивать и пополнять русскоязычные словари к существующим программам проверки орфографии и приспосабливать их к работе с «не устаревшими» кодировками (если под таковыми имеется ввиду UTF-8, то aspell успешно работает с ней уже много лет).

В заключение хотелось бы призвать автора последовать своим собственным советам. Во-первых,

Каждый линуксоид, освоивший какую-либо команду, и способный связно изложить свои знания — обязан поделиться с народом!

и действительно чего-нибудь освоить (хотя бы man-страницы). А во-вторых,

главное, начать действовать в этом направлении.

А не заниматься постановкой задач тем, кто давно в этом направлении именно действует.

Ну и совсем под занавес.

Linux и Open Source были и остаются явлениями интернациональными, не признающими ни государственных, ни конфессиональных, ни каких-либо иных границ. Свой посильный вклад в них вносят все, могущие это сделать, не зависимо от языка, вероисповедания, подданства и цвета кожи. Также как всем вольно черпать из этого источника то, что нужно для решения его задач.

Надеюсь, что существующее положение будет сохраняться и впредь. Для меня апогеем развития «русского Линукса» было бы не создание еще одного исконно-посконного дистрибутива или приложения. А увидеть нашего соотечественника на посту лидера проекта Debian или FreeBSD, в составе совета директоров компании Mandriva, одним из ключевых разработчиков Linux Kernel…

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

Увы, они тривиальны и общеизвестны для тех, кто использует Linux (или прочие BSD’и) в своей работе не первый год. Но в каждом новом поколении линуксоидов обязательно появляются первооткрыватели америк, искренне полагающие, что до них никто ничего не делал и ни до чего не додумался. И начинающие формулировать «очередные задачи Советской власти на данном этапе». И комментируемая статья являет собой нечто вроде квинтэссенции формулировки таких задач. Заставляя вспомнить известный анекдот про Вовочку, когда он, придя 1 сентября первый раз из первого класса, радостно закричал родителям: «Вот вы, козлы, тут сидите и не знаете, а пиписька-то х…м называется!». Почему я и не смог оставить ее без ответа.

Дабы связь времен все-таки не разрывалась, и Google не терял бы устойчивости к поломкам, и не банил бы нас таинственный разум, поселившийся в глобальной сети Интернет (см. «Витки» Желязны и Саберхагена).