Записки реликта - Провокационное: про рабочие инструменты. Катехизис. [entries|archive|friends|userinfo]
Latimeria chalumnae

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

Провокационное: про рабочие инструменты. Катехизис. [Jun. 19th, 2009|03:01 am]
Previous Entry Add to Memories Tell A Friend Next Entry
В порядке наброса Чтобы как-то зафиксировать позицию, аргументировать лень. В разговоре с [info]dari_dac и [info]bart_igor сформулировал свой взгляд на то, какими должны быть форматы электронных документов.

0. Сама концепция "документа" — тяжёлое наследие бумажной эпохи и должна быть забыта как можно скорее1. Идея "документ == файл" — откровенно мудацкая и должна быть забыта ещё раньше2.
1. Хороший, годный формат для короткого неструктурированного текста: плоский текст. Хороший, годный формат для небольшого объёма табличных данных: csv3.
2. Там, где мы не можем договориться о форматах (пример: "я хочу узнать о ценах в этом магазине"), мы для обмена информацией используем веб4. Там, где есть стабильные потоки информации, мы используем специально заточенные под эти потоки системы, возможно, работающие через тот же веб (пример: АСУ какая-нибудь)5.
3. Если над текстом работает несколько человек, текст должен существовать в единственном экземпляре. То же верно и для других видов данных. Хранение авторства правок, контроль версий, комментарии добавить по вкусу (пример: wiki-движки; Google Documents; LaTeX, хранящийся в системе контроля версий типа git или svn; DocBook, хранящийся в системе контроля версий типа git или svn)6.
4. WYSIWYG не годится для подготовки больших структурированных текстов7. Если вы этого не понимаете, вы не пробовали писать или править большие структурированные тексты, или очень неленивы и достаточно умны, чтобы держать в голове огромное количество ненужных для вашей непосредственной задачи вещей, или не уважаете свой труд, или не уважаете тех, кому эти тексты достаются после вас, или непроходимо тупы. Структура документа должна быть видна при редактировании, элемент должен кагбе говорить нам не "я выделен жырным шрифтом", а "я заголовко", или "я сноско", или "я термин для предметного указателя". (Примеры: LaTeX, DocBook, отчасти wiki-движки.)8
5. Всю работу, достаточно тупую, чтобы её могла делать машина, должна делать машина. Работа по нумерованию заголовков (в том числе вложенных), элементов списков (в том числе вложенных), ссылок на другие разделы документа — достаточно тупая работа. Работа по составлению предметного указателя — достаточно тупая работа. Работа по составлению оглавления — достаточно тупая работа. Работа по поддержанию корректности внутренних ссылок ("смотри рисунок X на странице Y") — достаточно тупая работа9. (Примеры: LaTeX, DocBook, отчасти — wiki-движки, очень отчасти ворд, очень отчасти Google Documents.)
6. Инструмент должен быть устроен так, чтобы им было удобно пользоваться, а не так, чтобы с его помощью можно было без обучения сделать что-то. Если удобство и пологую (на начальном отрезке) кривую обучения нельзя совместить, следует выбрать удобство.
7. Интероперабельность рулит. Чем больше инструментов в цепочке пользователь может заменить на свои любимые, тем пользователю удобнее. Навязывание конкретных инструментов — плохо, огромный комбайн, имеющий свой инструмент для каждой из решаемых с его помощью подзадач — хуже всего: "гидросамолёт плохо плавает и плохо летает".
8. Бинарные форматы — говно. Закрытые стандарты ­— говно. Примеры опускаю за очевидностью.
9. Все способы хранить табличную информацию, кроме csv и полноценной БД, являются вредными и еретическими. Аминь.

P.S. Я, вообще-то, помню, что в большинстве случаев то, как именно мы будем работать с некими данными, определяем не мы.


1О, эти подростки и пожилые гуманитарии, задающие нехитрый вопрос, присылая пустое письмо, в котором вордовский файл на десять мегабайт с тремя строчками текста!
2О, эти сотрудники пенсионного возраста, при наличии в конторе работающей сети таскающие друг другу на флешках из корпуса в корпус вордовские файлы с горой вирусов впридачу!
3Офисные приложения здесь — явный overkill.
4Офисные приложения здесь ­— гнусное издевательство над своим корреспондентом: вместо "запустил браузер, открыл страничку, прочёл" получается "запустил браузер или почтовый клиент, получил ссылку, ткнул", дальше в лучшем случае — "открыл документ и прочёл", в худшем — "убедился, что офисное приложение не работает, или заглючило, или не понимает эту версию формата, выругался, установил нужное, ткнул на ссылку, прочёл".
5Офисные приложения здесь — дикий анахронизм, делающий "электронный документооборот" таким же маразматичным и неуправляемым, как и бумажный.
6Я видел SharePoint. Я смеялся. Я очень смеялся, пока не узнал, что мне предлагается с этим поработать. К счастью, использовать это для какой-либо разумной деятельности не смог ни один мой коллега, я вообще сомневаюсь, что это возможно. Нет, я понимаю, что любимая стратегия "инноваций" от M$ — взять чужую популярную технологию, передрать целиком и выдать за свою, но раз уж решили переизобрести wiki, зачем было делать это так паршиво?
7Интерфейс ворда при использовании его продвинутым пользователем — вообще говоря, не WYSIWYG. И это, как раз, хорошо — только не надо после этого расказывать про пологую (благодаря WYSIWYG) кривую обучения.
8Как вам книжка в ворде страниц на триста, в которой все абзацные отступы сделаны пробелами, все заголовки — с помощью выделения жирным шрифтом и центрирования, все разрывы текста ­— с помощью ручной вставки пустых строк? А теперь представьте, что вокруг всего этого наворочено сложное форматирование из табличек и картинок, тоже вручную. А теперь представьте, что вам это принесли и сказали поправить. А ведь это пример из реальной жизни. Реальный, блядь, пример. Реальный пример, блядь. Блядь, реальный пример. Блядь. Блядь.
9Долго искал в ворде возможность сделать нумерованный список литературы, ссылки на который будут перенумеровываться при добавлении в середину списка нового источника. Не нашёл. Хотя допускаю, что где-то глубоко в интерфейсе ворда такая возможность есть. Где-то. Глубоко.
LinkОставить комментарий

Comments:
From:(Anonymous)
Date:June 19th, 2009 - 01:17 am

DocBook

(Link)
Издеваетесь?
[User Picture]
From:[info]uri
Date:June 19th, 2009 - 01:22 am

Re: DocBook

(Link)
М-м?
From:(Anonymous)
Date:June 19th, 2009 - 01:24 am

Re: DocBook

(Link)
Для него же нужен отдельный WYSIWYG-редактор,
до того оно подробное и массивное (сужу по статье на Википедии).
[User Picture]
From:[info]uri
Date:June 19th, 2009 - 01:30 am

Re: DocBook

(Link)
Для него же нужен отдельный WYSIWYG-редактор,

Больше года правлю DocBook-файлы в Emacs, полёт нормальный. "Что я делаю не так?"©. Да и XXE, который типа рекомендуют лучшие собаководы, не то чтобы сильно WYSIWYG, он скорее WYSIWYM — а против WYSIWYM я как раз ничего не имею.

до того оно подробное и массивное

Не без того (LaTeX мне больше нравится). Но при наличии автокомплита и/или шорткатов на часто используемые теги — ничего страшного. Да и читабелен он вполне, по-моему.
From:(Anonymous)
Date:June 19th, 2009 - 01:37 am
(Link)
А просветленные граждане пользуются troff'ом уже лет 40 и горя не знают.

http://plan9.bell-labs.com/magic/man2html/1/htmlroff

Мне кажется, следует равняться на них.
[User Picture]
From:[info]uri
Date:June 19th, 2009 - 02:03 am
(Link)
Наслышан.

Однако же, совсем просветлённые граждане всё-таки почему-то не признали кошерность troff, что как бы говорит нам. С другой стороны, холивар troff vs. TeX в мире, в котором есть ворд, нелеп чуть более, чем полностью.
[User Picture]
From:[info]tengis
Date:June 19th, 2009 - 02:46 am
(Link)
Сама концепция "документа" — тяжёлое наследие бумажной эпохи и должна быть забыта как можно скорее
тут я вспомнил о пиздец удивительной программе Binder (как-то так), входившего когда-то в состав Офиса. Это просто квинтессенция того, как якобы ради сохранения привычности и удобства из реального мира в компьютер тащится инструментарий, наглухо убивающий все преимущества компа.
[User Picture]
From:[info]uri
Date:June 19th, 2009 - 09:57 am
(Link)
Посмотрел в википедии про Binder. Смешно, да.
From:(Anonymous)
Date:June 22nd, 2009 - 03:27 pm
(Link)
хорош... :)