Свободные программы для Windows

Занько Ф.С.

История

Эта история началась в те далекие-далекие времена, когда у людей дома не было персональных компьютеров, а самые лучшие американские ЭВМ уступали по своей вычислительной мощности и внутренней памяти современным смартфонам (большой диск в то время имел емкость меньше одного мегабайта).

Мини-ЭВМ PDP-7 (производилась, начиная с 1965 г.)

В те годы в Америке была одна компания, занимавшаяся разработкой новых технологий в области телекоммуникаций. Правда, это была не обыкновенная компания, а Bell Labs (Лаборатории Белла), основанная изобретателем телефона - Александром Грейамом Беллом. Достаточно упомянуть, что исследования, проводимые сотрудниками этой компании, 8 (!) раз удостаивались нобелевских премий (это больший вклад в физику, чем у всего СССР и РФ вместе взятых). Среди них: изобретение транзистора, открытие космического микроволнового фонового излучения, обнаружение дифракции электронов на кристаллах, что было первым экспериментальным доказательством волновой природы материи. В стенах Лабораторий Белла родились радиоастрономия (Карл Янский) и теория информации (Клод Шеннон).

Программисты Bell Labs - их звали: Деннис Ритчи и Кен Томпсон, - участвовали в неудачном проекте создания прорывной операционной системы Multics. После провала этого проекта Кен Томпсон остался без машины, на которой он мог бы играть в написанную им игру "Space Travel" ("Космическое путешествие"), научно-фантастический симулятор управления ракетами в Солнечной системе. Пользуясь некоторыми идеями, оставшимися после неудачной работы над Multics, Томпсон пишет свою собственную операционную систему на языке ассемблера для мини-компьютера PDP-7. Она оказалась очень удачной, а в 1971 г. Деннис Ритчи разрабатывает язык C. В 1973 г. Томпсон и Ритчи переписывают Unix (так назвали новую систему Томпсона) на С - языке высокого уровня. Это было революционным шагом для того времени и обеспечило почти полную независимость операционной системы от "железа".

Кен Томпсон (слева) и Деннис Ритчи (справа)

Unix быстро вышел за рамки Bell Labs и стал стремительно распространяться по западным университетам и производственным лабораториям, у которых было достаточно денег, чтобы купить дорогие мини-компьютеры. Множество людей вносили в нее вклад и в духе интеллектуальных настроений того времени (движение хиппи, рок-музыка, левые настроения среди студентов) делали это совершенно бесплатно.

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

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

В результате всего этого Unix, родившаяся и получившая творческий импульс благодаря принципу "даром получили - даром давайте", чуть не погибла. Ее судьба изменилась благодаря двум программистам-хакерам - Ричарду Столлману и Линусу Торвальдсу.

Ричард Столлман

Ричард Столлман - талантливый программист из Массачусетского технологического института, создатель известного текстового редактора Emacs. В 1983 г. он уволился с работы и основал проект GNU, целью которого являлось создание полностью свободной операционной системы. Он стал проповедником, в прямом смысле этого слова, идеи упразднения прав интеллектуальной собственности на программы. Так родилось свободное программное обеспечение как с философской, так и с практической точек зрения.

Сегодня Ричард Столлман стал просто легендарной и даже культовой фигурой в мире программирования. Его сподвижники заново запрограммировали многие инструменты Unix, выпустив их уже под свободной лицензией, но создать первое свободное ядро операционной системы было суждено не им. Из-за неправильно выбранной концепции их проект свободного ядра Unix под названием GNU Hurd до сих пор не доведен до конца.

Технический прогресс, между тем, не останавливался. Мир стал завоевывать выросший из американских военных разработок Интернет. А разработчики персональных компьютеров наконец создали процессор, способный поддерживать Unix. В 1991 г. никому не известный финский студент Линус Торвальдс объявил о проекте операционной системы Linux. На своей 386-й персоналке Торвальдс создал свое собственное работоспособное ядро Unix и предложил пользоваться им всем желающим под свободной лицензией. Так Unix родился во второй раз! Когда компания Red Hat, занимавшаяся поддержкой Linux, выставила свои акции на бирже (Торвальдсу за несколько лет до этого был подарен опцион на льготную покупку их акций), Линус Торвальдс за несколько часов стал миллионером...

Линус Торвальдс

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

Перспективы свободного программного обеспечения в образовании и науке

Что изменилось для рядового пользователя с появлением свободных программ? Чтобы прояснить этот вопрос, обратимся к сферам, где свободное программное обеспечение имеет наилучшие перспективы,- к образованию и науке.

Современная наука и образование немыслимы без интенсивного использования компьютерных технологий. Формально вопрос выбора операционной системы (ОС) и соответствующего программного обеспечения должен решаться каждым пользователем персонального компьютера. Фактически никакого выбора нет: до сих пор примерно на 90% (по данным за 2015 г.) персональных компьютеров в мире установлена коммерческая операционная система Microsoft Windows. Тем не менее, в сфере науки и образования действуют другие приоритеты нежели в бизнесе или индустрии развлечений, поэтому в данном случае достоинства Windows не выглядят столь убедительными, а недостатки - терпимыми. Остановимся на последних более подробно.

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

  2. Исходный код ОС Windows закрыт, что противоречит духу свободного исследования, характерного для академической сферы. Коммерческое программное обеспечение под Windows и код самой ОС всегда будут "черным ящиком"; это ограничивает возможности обучения, скажем, хорошему стилю программирования.

  3. Несмотря на свою популярность Windows является довольно рыхлой системой, в ней нет объединяющей идеи, соответствующей лозунгу Unix о том, что каждый "объект является файлом", или идее рабочего стола в MacOS [1]. Windows ни в коем случае нельзя считать "образцовой" или "классической" ОС, философию которой можно выбрать в качестве эталона в сфере образования.

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

  1. Далеко не все аппаратное обеспечение и периферийные устройства совместимы с Linux. Многие сканеры, модемы, смартфоны, карты памяти и пр. не имеют Linux-драйверов.

  2. Практически все игры, мультимедийные образовательные программы, крупные коммерческие программные продукты не доступны под Linux.

  3. Недостаточно учебной литературы на русском языке, посвященной свободному программному обеспечению.

  4. Отсутствие у пользователей объективной информации о свободном программном обеспечении. Microsoft ведет разъяснительную работу о вреде "пиратства", но их единственная цель - заставить пользователей всеми правдами и неправдами тратить больше денег на программное обеспечение Microsoft. Такая крупная американская корпорация, как Sun Microsystems, ныне поглощенная Oracle Corporation, в пику Microsoft несколько лет финансово поддерживала разработку альтернативного офисного пакета OpenOffice.org, но информации об этом продукте было явно не достаточно. В результате большинство пользователей даже не подозревали о существовании альтернативного свободного аналога Microsoft Office. Правда, в последние годы в связи с широким распространением Интернета ситуация стала меняться в лучшую сторону. Также стали выходить книги о свободном программном обеспечении на русском языке.

Перечисленные проблемы очень серьезны, но не являются принципиально неразрешимыми. Они будут решены, как только на Linux перейдет некая критическая масса пользователей: сработают законы рынка.

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

Такой Linux-дистрибутив, как OpenSuSe (бесплатный, с открытым кодом), поддерживаемый американской корпорацией Novell, уже сегодня конкурентоспособен с коммерческой системой Windows: нет проблем с русификацией, простая установка, удачное решение вопроса установки новых приложений, красивое оформление, прекрасный подбор программного обеспечения.

Вообще, существует расхожее представление, что свободное программное обеспечение заведомо хуже своих коммерческих аналогов. Это не всегда так. Существует ряд крупных проектов с открытым кодом (например, LibreOffice, Mozilla и др.), которые, как минимум, не хуже своих коммерческих конкурентов. 24 марта 2006 г. состоялась премьера компьютерного анимационного фильма "Elephants Dream", созданного с использованием исключительно свободного программного обеспечения (в основном, пакета Blender). Выпущенные DVD помимо самого фильма содержали рабочие файлы, которые зрители-пользователи могут использовать по своему усмотрению. Позднее было сделано еще несколько подобных фильмов и даже компьютерная игра "Yo Frankie!" (2010). Кроме того, тот же Blender использовался при создании фильма "Человек-паук 2".

Первый свободный мультфильм "Elephants Dream" на русском языке
[Мягко говоря, не шедевр.- Ф.З.]

Важно отметить, что в настоящее время девиз Столлмена "создавайте свободные программы, потому что все программы должны быть свободными" вытесняется более прагматическим лозунгом Торвальдса: "создавайте свободные программы, поскольку они работают лучше" [1].

Хотя системы Windows, по-видимому, еще много лет будут доминировать на персональных компьютерах в России и других странах, нужно уже сегодня поддерживать распространение свободного и некоммерческого программного обеспечения в сфере науки и образования. Можно предложить следующие шаги.

  1. Операционной системе Unix (разновидностью которой является Linux) свойственна своя философия и принципы работы, сильно отличающиеся от мира Windows. Поэтому для перехода на Linux нужно дополнительное обучение, причем большая часть документации и учебных пособий (правда, бесплатных) - на английском языке. Важную роль могут сыграть малые интернет-проекты, нацеленные на перевод документации на русский язык и написание свободно распространяемых учебных пособий. Свободное программное обеспечение родилось на Западе как плод частной инициативы. Думается, что потенциал русскоязычного академического сообщества позволяет решать подобные задачи.

  2. Характерной чертой ОС Linux (Unix) является ее исключительная переносимость. Это единственная ОС, которую можно использовать, начиная от встроенных микросхем и смартфонов вплоть до суперкомпьютеров, включая весь промежуточный спектр вычислительной техники. Многие программы из мира свободного программного обеспечения уже портированы под Windows. Это открывает новые серьезные возможности для знакомства рядовых пользователей со свободным программным обеспечением.

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

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

За рубежом такие подборки свободных программ существуют достаточно давно: OpenDisc, VALO-CD, GNUWin II, LoLiWin (последние две уже прекратили свое существование; развитие Интернета сделало бессмысленным распространение наборов свободных программ на DVD- и CD-дисках) и др. Стали появляться они и в России: например, "Свободный офис" компаний ALT Linux и 1С или разработка образовательного проекта EduMandriva под названием FreeWin.

Каким критериям должны удовлетворять программы, включаемые в подобные проекты?

Возможен ли полный переход на свободное программное обеспечение? Известны несколько попыток перехода на Linux в государственных структурах разных стран и создания национальных дистрибутивов (китайского Red Flag Linux, северокорейского Red Star OS, кубинского Nova, азиатского Asianux и пр.). Но, как показал, в частности, в целом успешный опыт Мюнхена (проект LiMux), задача массового перехода на Linux далеко не так проста, как с технической, так и с психологической точек зрения.

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

Рекомендуемые свободные программы для Windows

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

1.4. Заключение

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

Литература

1. Реймонд Э.С. Искусство программирования для Unix.- М.: Издательский дом "Вильямс", 2005.- 544 с.

2. Торвальдс Л., Даймонд Д. Ради удовольствия: рассказ нечаянного революционера. - М.: ЭКСМО-Пресс, 2002.- 288 с.

3. Занько Ф.С. О перспективах применения свободного программного обеспечения в российском образовании и науке / Вторая конференция "Свободное программное обеспечение в высшей школе", Переславль-Залесский, 26-28 января 2007 г.- Альт Линукс, 2007.- С.38-41


Поддержать
проект



Исправления:

25-27 июля 2017 г. - добавлена информация об истории свободного программного обеспечения; материал переименован и объединен со статьей "О перспективах применения свободного программного обеспечения в российском образовании и науке"; удалена информация о CuneiForm и KDE on Windows.

9 мая 2016 г. - переработан раздел о менеджере файлов 2xExplorer, добавлена документация на программу на русском языке.

6-8 сентября 2015 г. - добавлена информация о PDFTK Bulder, DjVu Solo, Scan Tailor, ImageMagick, GNU Solfege, MuseScore, Maxima, Python, KDE on Windows. Изменены разделы про OpenOffice.org/LibreOffice и проект SWORD. В остальной текст внесены небольшие изменения, исправлены неработающие ссылки.


Python для инженеров и исследователей

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

О замеченных ошибках, неточностях, опечатках просьба сообщать по электронному адресу:
russianlutheran@gmail.com