Свободный софт в научной области
Автор: Шутов, Илья
Государство, разбуженное делом Поносова, заинтересовалось тем, какой софт используется в учебных и научных учреждениях, что немедленно привело к спуску вниз приказов и инструкций «удалить нелицензионное ПО со всех компьютеров». Автор статьи предлагает свой вариант решения проблемы, когда старых программ на компьютере уже нет, а денег на новые еще не дали. И неизвестно, дадут ли.
Компьютеры научных сотрудников в настоящий момент представляют собой софтверную пустыню с редкими оазисами. Официальная политика сформулирована достаточно просто – заменить коммерческие продукты их open source/freeware-аналогами. То есть Windows Linux, MS Office Open Office, Origin QtiPlot и т. д. При этом предлагается взять на вооружение ранее выстроенную парадигму использования софтверных продуктов. Возможно, это болезненный шаг, но, с другой стороны, именно сейчас предоставляется прекрасная возможность осмотреться и попробовать выстроить новую концепцию использования ПО с чистого листа. Тем более что за последние десять лет появилось множество замечательных открытых продуктов, практикующих иные подходы к работе с текстом и обработке данных и пр., а продукты, существовавшие ранее, но выглядевшие очень слабыми, получили сильное развитие. Оставив в стороне вопросы офисного ПО (почтовые клиенты, утилиты для записи дисков, редакторы графики), обратим внимание на программы, которы енужны для решения научных задач. Что можно включить в эту категорию?
Прежде всего систему для набора и верстки текста, содержащего огромное количество формул, иллюстраций, библиографических ссылок. Далее можно указать систему для создания презентационного материала, опять же содержащего формулы, специфические картинки (например, химические формулы или диаграммы Фейнмана) и библиографию.
Следующий блок – ПО для рисования графиков. И в качестве ежедневного инструмента – пакет, позво-ляющий проводить сложные математические расчеты, а для экспериментаторов еще и язык разработки/модификации софта по управлению экспериментальными установками, сбору и обработки данных. Далее вкратце рассмотрим, что можно противопоставить парадигмам работы, предлагаемым Word/Origin/C++. Для этого проследуем стандартным путем – сформулируем требования к ПО и попытаемся подобрать максимально отвечающий им продукт.
ТЕКСТ
Какие требования обычно предъявляются к системам работы с текстом?
• стабильность работы;
• малый объем файла;
• совместимость форматов файлов как вниз, так и вверх;
• возможность работы с многостраничными документами, содержащими сотни, а то и тысячи формул;
• стабильная и простая работа со ссылками (номера формул, страницы, номера пунктов, библиография, ссылки на рисунки и таблицы);
• возможность внедрения графических объектов по ссылкам;
• разделение содержания и внешнего представления.
Мой опыт работы с различными текстовыми редакторами и с издательскими системами показывает, что лучше LaTeX в этой области нет ничего. Самый популярный дистрибутив LaTeX для Windows (а менять ОС вряд ли кто решится – купить все же проще) – MikTeX .
Отсутствие WYSIWYG, совершенно иной подход к созданию документов и большой набор команд на первый взгляд существенно усложняют работу с системой. Но это впечатление обманчиво. Достаточно сделать над собой небольшое усилие и немного поработать с объемистым документом физико-математической направленности, как преимущества подхода разделения содержания и представления становятся очевидны. Имея на руках чистый ASCII-файл страниц на сто, можно безболезненно проводить над ним жуткие с точки зрения систем а-ля Word операции: переставлять формулы, удалять абзацы, вставлять/удалятькартинки, перенумеровывать библиографию и пр. А в интеграции с системой контроля версий (рекомендую обратить внимание на Subversion, subversion tigris org, и его Windows-клиента TortoiseSVN, tortoisesvn net) можно сохранить всю историю создания документа, совместную работу над большой статьей или книгой, возвращаться к написанному ранее и выбирать наиболее удачные формулировки.
Немаловажно и то, что работа с библиографией встроена в LaTeX практически бесшовным образом. Поскольку число ссылок в библиографической БД редко превышает несколько тысяч, а скорость доступа к записям особой роли не играет, то хранение БД в виде текстового файла (bibtex) полностью подпадает под правила работы с основным материалом, набранным в TeX. Более того, существует ряд продуктов, которые позволяют работать с библиографической БД с помощью удобных интерфейсов. В частности, заслуживает внимания замечательный пакет JabRef (jabref sourceforge net).
ПРЕЗЕНТАЦИИ
Теперь очередь продукта для создания презентационного материала. В голове у большинства пользователей сразу возникает монумент с огромной надписью «PowerPoint». Несомненно, презентации в PPT уже стали стандартом де-факто. Однако четкого разделения содержания и представления в PowerPoint нет. Трудность изменения оформления презентации, сделанной с отступлениями от базовых стилей и макета (99% случаев), формулы, неприспособленная система макетов требуют колоссальной ручной работы при незначительных изменениях оформления презентации. Неудобные средства анимации не позволяют сделать что-либо кра-сивое с документами, содержащими массу формул. Что же можно предложить в качестве альтернативы? Ответ может выглядеть парадоксальным – это все тот же LaTeX, но с тремя дополнительными пакетами: beamer (latex-beamer sourceforge net), pscyr и pgf+TikZ (последние версии pscyr, pgf и xcolor необходимо брать либо из дистрибутива MiKTeX, либо с домашних страниц – на sourceforge в связке с beamer лежат старые версии). Исходник презентации в ASCII-формате, жесткое разделение содержательной части от оформления, возможность многократного использования своих собственных команд по выводу блоков текста, формул или графического материала, поддержка послайдовой анимации путем текстовой раскадровки, использование возможностей pdf для интеграции с внешними источниками (exe, avi и пр.) позволяют подготовить материал с огромным количеством формул и иллюстраций буквально в считанные часы. При этом за счет сбалансированных стилевых файлов документ будет выглядеть профессионально. При необходимости изменение дизайна презентации проводится в течение одной-двух минут – достаточно выбрать новый стилевой файл и перекомпилировать исходный документ. Также можно получить содержимое презентации в печатном виде: скриншоты экранов с комментариями к каждому кадру.