Monday, December 22, 2008

Почему программисты должны писать документы в LaTeX

Хочу сразу написать, что в этом небольшом посте мне бы не хотелось рассказывать о преимуществах LaTeX в том виде, как это принято. Вы не найдете здесь похвал в адрес удобства использования, удобства редактирования, изменения оформления, набора формул, составления содержаний и списков литературы - всё это присуще LaTeX, но и упоминалось уже неприличное количество раз. Я бы хотел рассказать о тех забавных преимуществах, которые лично мне в LaTeX показались важными.
В процессе обучения в НАУ им. Н.Е. Жуковского "ХАИ" я дошел до момента, когда нужно писать бакалаврскую работу. Ничего особенного в этом нет, тема была выбрана, "исследования" проведены, программа уже написана. Осталось только написать пояснительную записку.
А это с незапамятных времен было для меня самым сложным. Еще участвуя в МАН, при написании курсовых работ и т.п. я заметил за собой жгучее нежелание писать текст. Это было скучно и неинтересно, не то что создавать программную реализацию.
Но недавно я открыл для себя LaTeX и все переменилось! Теперь я с удовольствием набираю текст, вставляю команды, "компилирую", правлю опечатки и пишу дальше. У меня даже появились "баги"(вызванные, вероятно, моим собственным недопониманием команд), которые я, ругаясь, фикшу. Написание скучного текста превратилось в увлекательнейший труд - вот вам причина, по которой программисту стоить писать документы в LaTeX!
Побочная причина - возможность хранения истории изменений в репозитории. Ведь когда пишешь документ, так и хочется закоммитить, чтобы увековечить свои изменения, а .tex файлы для этого подходят как нельзя лучше.


Напоследок хотелось бы дать несколько интересных ссылок
Также в качестве бесплатной рекламы - эти люди занимаются составлением руководств по верстке дипломов в LaTeX, честь им и хвала.Я собираюсь выложить в общий доступ мои наработки(классы, стили) как только пояснительная записка будет написана. Надеюсь, это окажется полезным для тех, чьи alma mater предъявляют схожие к моему требования.

4 comments:

  1. Побочная причина - возможность хранения истории изменений в репозитории. Ведь когда пишешь документ, так и хочется закоммитить, чтобы увековечить свои изменения, а .tex файлы для этого подходят как нельзя лучше.
    SVN с .doc работает тоже вполне сносно =)

    ReplyDelete
  2. .doc же бинарный, даже diff не посмотришь

    ReplyDelete
  3. да, diff не посмотришь. Зато можно писать комменты к коммиту.

    ReplyDelete
  4. Так а зачем же тогда VCS? Можно просто копированием файликов заниматься в одной папке. Например,
    1 - Начальный коммит.doc
    2 - Добавил титулку.doc
    3 - Пофикс багов.doc
    ...

    ReplyDelete