• разделение содержания и внешнего представления.
Мой опыт работы с различными текстовыми редакторами и с издательскими системами показывает, что лучше 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 и пр.) позволяют подготовить материал с огромным количеством формул и иллюстраций буквально в считанные часы. При этом за счет сбалансированных стилевых файлов документ будет выглядеть профессионально. При необходимости изменение дизайна презентации проводится в течение одной-двух минут – достаточно выбрать новый стилевой файл и перекомпилировать исходный документ. Также можно получить содержимое презентации в печатном виде: скриншоты экранов с комментариями к каждому кадру.
А язык TikZ для рисования иллюстраций, являющийся, по сути, пакетом LaTeX, позволяет включать графический материал непосредственно в исходный документ презентации (in place или же в виде команд – зависит от частоты использования). На этом языке можно создавать и иллюстрации, оперируя концепциями предметной области, будь то ядро и электрон, или граф и ребра, или фотон и другой фотон… Более того, графика TikZ, скооперированная с возможностями покадровой анимации beamer, позволяет делать красивые и элегантные вещи путем незначительных затрат.
МАТЕМАТИКА
И, наконец, последний составной элемент базового рабочего места научного работника – пакеты для математических расчетов, графическое отображение результатов и системы для управления экспериментальными комплексами. В этом сегменте предлагается обратить внимание на популярный язык программирования, принадлежащий семейству динамических языков, Python (www python org, www activestate com). Интересен язык не сам по себе (обсуждение его возможностей – тема для отдельной большой беседы), а именно в контексте поставленных задач. Достоинством Python является то, что он, поддерживая ООП-парадигму, может с одинаковой легкостью быть использован и в качестве калькулятора, и в качестве скриптового языка склейки/пакетной обработки, и в качестве языка для управления программно-аппаратными комплексами. Благодаря огромному количеству пакетов, решение очень многих задач существенно упрощается.