$ 00,00
€ 00,00

Свободное ПО: страсти кипят внутри

9 октября 2012

Бескрайние просторы Интернета, с его чат румами, серверами NNTP (англ. Network News Transfer Protocol) и списками рассылки, служат полигоном для бурлящих споров с сотнями спорщиков, а когда в эту смесь приносишь технологию, все это становится угрожающим. Вовек не угаснет пламя старых раздоров: зайдите куда следует, и вы найдете там тех, кто до сих пор выясняет, что же все-таки было «подлинно» классическим 8-битным компьютером — ZX Spectrum или C64.

В мире Linux тоже кипят нешуточные страсти, однако они все же несколько более обоснованны и обдуманны (ну, как правило). Большинство из них уходит корнями в исключительно политизированную природу движения свободного ПО — здесь дело в куда большем, чем просто биты и байты. Многие полагают, что, поддерживая и отстаивая определенную операционную систему или программу, они помогают сделать мир лучше. И, возможно, так оно и есть, но в результате все оказываются особо взвинчены.

Однако нам известно, что множество пользователей-любителей Linux не обладают достаточным досугом, чтобы вникать в детали в этих дебатах, и считают некоторые из них довольно странными. Поэтому мы решили взять самые животрепещущие темы и добраться до сути спора. Мы хотим осветить обе стороны, чтобы вы смогли вынести собственное суждение, основываясь на голых фактах, без всякого драматизма. Что ж, начнем…

KDE vs Gnome

Два рабочих стола с диаметрально разным происхождением.

Споры вокруг темы KDE против Gnome ныне концентрируются исключительно на технических вопросах: например, какая среда рабочего стола проще в использовании, или в какой больше функций. Но раньше, в начале 1990-х, ситуация была куда сложнее. Когда объявили о выходе KDE в 1996 году, мир Linux уже не первый год ждал появления полноценного интегрированного рабочего стола. Конечно, были у нас разные приятные менеджеры окон и программы, но в плане интеграции все это было несколько неуклюже. KDE вознамерился это исправить — и осчастливил многих.

Но для многих потенциальных пользователей появилась огромная проблема, а именно — выбор графического набора инструментов. Команда KDE решила использовать Qt, предоставлявший широкий выбор функций, но также и отягощенный всяческими лицензионными осложнениями (чтобы писать проприетарные программы, разработчики должны были приобрести коммерческую лицензию). С самого начала KDE стал восприниматься как противоречивый проект, не в полной мере отвечающий духу свободного ПО.

Следом, уже через год, появился проект Gnome — и он был создан на GTK, полностью свободном инструментарии. Но в то время как команда KDE писала все с нуля, разработчики Gnome в некотором смысле спешили выпустить конкурентоспособный релиз 1.0, и заново использовали уже существующие программы, такие, как менеджер окон Enlightenment. Однако KDE 1.0 и по виду, и по ощущению был намного отлаженнее и завершеннее.

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

Недавние крупные реформы сред рабочего стола подлили масла в огонь. Пользователи Gnome глумились над попытками KDE 4 преобразовать рабочий стол, похваляясь стабильностью серии Gnome 2.x. А спустя пару лет сами попали в то же положение, когда Gnome 3 вышел в совершенно непривычном виде. Многие пользователи в те тяжелые времена сменили позиции, и теперь питают сердечную привязанность к бывшим врагам…

Linux vs FreeBSD

Какая система является лучшей открытой Unix-подобной ОС?

Вы, вероятно, слышали о FreeBSD, особенно если вращаетесь в мире Linux уже несколько лет. У нее много общего с Linux: это Unix-подобная операционная система с открытым кодом, разрабатываемая сообществом и работающая с KDE, Firefox, LibreOffice, Apache, MySQL и практически с любыми другими основными программами Linux, которые только на ум взбредут. Во многих ситуациях она служит прямой заменой Linux, и большинство навыков, полученных в Linux, применимы и ко FreeBSD.

Тем не менее, не утихают споры о том, которая же ОС лучше. Чтобы разобраться в этом, нам придется немного углубиться в историю. Корни FreeBSD уходят в BSD Unix, ОС, разработанную в конце 1970-х в университетских кругах. Существовало немало ответвлений BSD, и самым многообещающим из них оказалась появившаяся в 1993 году FreeBSD для ПК x86. Он обеспечивала солидную, хорошо протестированную полноценную основу Unix для потребительских компьютеров, тогда как Linux считался еще незрелым по причине своей новизны. К несчастью, ранней проблемой FreeBSD стал пресловутый камень преткновения, когда держатели авторских прав кода Unix крупно поссорились со старой командой BSD. Это все было очень запутанно и сложно, и отпугнуло немало потенциальных разработчиков от работы над FreeBSD — они переключили свое внимание на Linux. Команде FreeBSD пришлось переписать большую часть кода, однако на это ушло несколько лет, и они упустили бесценное время.

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

Лицензия BSD, по сути, говорит следующее: «Делайте с кодом все, что вам заблагорассудится, но не заявляйте, что это вы его написали (то есть сохраняйте уважение к оригинальным авторским правам). Это, безусловно, намного более свободный подход, чем практикуемый в GPL, которая применяется в Linux, но это не укрепляет свободу — из кода FreeBSD возможно создать проприетарный продукт. Так что те, которые считают свободное ПО политическим движением, склоняются к использованию Linux и GPL, а те, кто рассматривает все это с сугубо практической точки зрения, разворачивается в сторону лицензии BSD и FreeBSD.

Linux vs GNU/Linux

Что в имени тебе моем?

Это — вопрос исторической перспективы, и нам следует вернуться в 1983 год. В это время некто Ричард Столлмен [Richard Stallman] основал проект GNU с высокой целью создания совершенно свободной (в смысле свободы делиться кодом и модифицировать его) Unix-подобной операционной системы. То, что за этим последовало, вызывает самые горячие споры, и вот аргументы обеих сторон:

Сторонник GNU: «Начиная с 1983 года, разработчики GNU трудились над созданием полной операционной системы, являющейся заменой практически всем компонентам типичной системы Unix. К 1991 году они почти закончили свою работу, им только не хватало ядра. Финский студент по имени Линус Торвальдс [Linus Torvalds] написал ядро, которое подошло к наработкам GNU, и, приложив еще немного усилий, мы завершили операционную систему — GNU/Linux».

Сторонник Linux: «Начиная с 1983 года, разработчики GNU трудились над созданием замен разных частей системы Unix, но брали немалую часть готового кода из других проектов. Они проделали неплохую работу, но никогда толком не концентрировались на самом важном — на ядре. Итак, к 1991 году у них хватало полезного кода в разных проектах, но все это стало нормальной ОС не раньше, чем Линус выпустил свое ядро».

Истина, как водится, лежит посередине. У Столлмена был конкретный план, и он не покладая рук трудился, чтобы проект GNU наконец заработал. Ранние версии того, что мы называем Linux (как цельная ОС), не появились бы без проекта GNU. Но нельзя и сказать, что в 1991 году GNU был на 99 % готов и для его завершения недоставало крошечного ядра. Ядро — наиболее важный компонент ОС и берет на себя массу работы, чтобы все шло правильно.

Распространение слова

Люди стали обозначать термином Linux всю операционную систему, и, понятно, Столлмен был несколько обижен, что его проекту GNU перепадало мало чести — вот он и предложил название / Linux”. Но это было не просто привлечение внимания.

И если Линус Торвальдс — личность исключительно прагматичная, и его интересует лишь возможность создания полезного кода, который мог бы улучшать каждый, Столлмен рассматривал свободное ПО как политическое движение, способ сделать наш мир лучше. Поэтому наличие приставки GNU ему было нужно не для ублажения своего эго. Нет, он хотел довести до людей, что на самом деле означает GNU, почему свобода ПО так важна и почему мы должны обращать внимание не только на прагматичные проблемы.

Все это хорошо и мило, но приводит только к возникновению дальнейших споров. Например, современная система Linux — это не просто комбинация фрагментов GNU и Linux. Она включает код из X Window System, Perl и массы других проектов, не относящихся к GNU. Принимая все это во внимание, не следует ли нам именовать систему GNU/X11/KDE/Perl/XBill/ Linux? Длинновато… А как решить, какие части должны войти в «официальное» полное название? Для некоторых громадной важностью обладает LibreOffice, построенный на обширной кодовой базе; не звучать ли ему, как GNU/LibreOffice/Linux? Но постойте, ведь LibreOffice отпочковался от OpenOffice, который был StarOffice, так что… ну, вы поняли, куда нас это может завести.

Даже если оставить просто GNU/Linux, все равно будет не слишком красиво. Надо отдать справедливость Столлмену, он попытался найти альтернативу в виде ”, но и это звучит не здорово. Добавьте сюда бесчисленные варианты произношения этого названия, и вы получите полный винегрет.

И все же команда GNU продолжает бороться за это название, хотя они явно чересчур носятся с этой проблемой. У них на сайте есть FAQ по поводу наименования GNU/Linux по адресу www.gnu.org/gnu/gnulinux-faq.html, но, как съязвил наш Эндрю Грегори в подкасте TuxRadar, он длиннее, чем конституция США.

GNU несет в себе важную идею свободы и возможности делиться, но многие полагают, что она могла бы распространяться куда более эффективными способами. Например, сторонники «полного» наименования могли бы не хныкать, что кто-то говорит ”вместо /Linux”, а попросить создателей дистрибутивов разместить на своих сайтах яркую кнопку «Вы пользуетесь этим благодаря GNU [Brought to you by GNU]» со ссылкой на объяснение роли GNU в проекте.

RPM vs .deb

Две системы управления пакетами по цене одной.

Все новые и новые изобретения колеса стали постоянной проблемой в мире ПО. Зачем брать чей-то код, если можно написать собственный-вдесятеро лучше? Частенько разработчики делают что-то свое чисто из гордости, или потому желая узнать, как это работает. Это хорошо, и никто не запрещал пробовать что-то новое, но в итоге это означает огромное количество продублированных результатов. Именно

так и случилось с системой управления пакетами. Пакеты от Debian .deb появились раньше, чем RPM (от Red Hat), и некоторое время между ними существовала весьма полезная конкуренция.

В каждой системе были свои преимущества, но постепенно они обе сравнялись. Например, сторонники Debian прохаживались насчет пользователей Red Hat-мол, в последнем дистрибутиве нету чудес apt-get. Но тут появились apt-rpm,

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

Emacs vs Vim

Не просто текстовые редакторы, а образ жизни.

Если вы полагали, что худшее-это войны рабочих столов, проведите-ка пару часов в пылу дебатов на тему Emacs против Vim. У этих редакторов самые упертые фанаты, которых только можно вообразить. Текстовые редакторы вряд ли можно считать самой волнующей темой для страстных споров, но авторы и программисты практически живут в них, проводя за этим долгие часы ежедневно.

Пользователи Emacs считают сторонников Vim чокнутыми, которые заучивают уйму дурацких сочетаний клавиш и не могут оторваться от редактора, созданного для модемных соединений свыше 300 бод. Пользователи Vim считают сторонников Emacs чокнутыми, неспособными справиться с минималистским редактором, которым необходимо вводить смехотворно длинные команды вроде M-xpaste-paragraph для самых тривиальных операций.

Здесь также есть нечто от битвы Linux против FreeBSD. Vi (на нем основан Vim) разработал Билл Джой [Bill Joy], ключевая фигура в истории BSD, а Emacs написал Столлмен. Сторонники Vi обычно шутили, что Emacs-сокращенное Megabytes And Constantly Swapping”«Восемь мегов и сплошная подкачка».

И прочие

Текстовые редакторы, языки программирования.

Люди очень привязываются к инструментам, которыми пользуются. Иногда немного раздражает, когда видишь, как кучка обитателей форума спорит о том, где же лучше писать диплом-в AbiWord или в LibreOffice (особенно когда знаешь, что идеальным решением является LaTeX), но зато сколько эндорфинов выделяется, если удается кого-то убедить!

Языки программирования тоже приводят к весьма забавным перепалкам-участники вложили в них много сил и времени. Например, представьте себе, что вы потратили десять лет на освоение Python, и вдруг появляется какой-то сопляк и заявляет, что Ruby намного круче. И даже если технически это правда (мы здесь не принимаем ничью сторону), как все же ужасно думать, что вы потратили свое время не на тот язык, верно?

А еще есть боязнь перемен («Мне никогда не понадобится ничего, кроме Slackware!»), замеры молодечества в плане электроники («На моем Arch Firefox запускается на 0,3 мс быстрее, чем на твоем Gentoo, так что все барышни-мои»), ну, и так далее. Сколько элементов человеческой психологии и поведения отражается в этих спорах!

Ну, а что ждет нас в будущем? Уже наблюдаются занимательные баталии между GCC и LLVM, особенно по мере принятия LLVM некоторыми дистрибутивами как компилятора по умолчанию. Споры по поводу рабочих столов теперь идут в трех направлениях-новых сторонников набирает Xfce, а если Wayland когда-нибудь поднимется до замены X Window System, то и тут мы ожидаем небезынтересные битвы. Будет весело!

Похожие новости