На удивление мало документации по программированию подается в нормальном виде. Нормальный вид подразумевает возможность оффлайнового просмотра в программе просмотра документации. Например, возьмем Java или PHP. Для офлайна под windows предлагается использовать chm-файл. Но это же прошлое десятилетие информационных технологий: в стандартном просмотрщике chm-файлов нету вкладок, нету динамического изменения списка слов в индексе по мере набора, и многого другого.
С свое время, когда я изучал java, то первое большое приложение, которое я на ней написал – был как раз просмотрщик документации. Он работал так:
1) Для работы нужно было установить (распаковать) стандартную документацию в виде набор html-файлов.
2) В окне добавления документации нужно указать папку с документацией, которая затем сканируется в отдельном потоке
3) После сканирования, строится индекс (ключевые слова -> файлы), и сохраняется на жесткий диск
4) При запуске программы, индекс (размером мегабайт в 20) загружается в память в отдельном потоке. Сначала загружается список слов, и показывается интерфейс – пользователь тут же мог начинать работать с программой. И еще через пару секунд догружался список файлов, соответствующий списку слов – даже быстрые пользователи вряд ли успевали что-то успеть сделать до загрузки БД.
5) Программа поддерживала вкладки, историю навигации, изменение шрифта, строку с путем к отображаемому файлу
6) При вводе слова в индексе, использовалась фильтрация. Например, можно было набрать пару букв из середины слова – и все слова с такой подстрокой будут показаны, а просмотр будет прокручен к месту, где слова начинаются с такой подстроки
В результате, я использовал документацию намного быстрее, чем многие другие люди. В том числе – по J2SE/J2EE. Выбор такого приложения был сознательным: оно давало двойное ускорение – как изучения документации, так и собственно программирования. Затем я прекратил изучение java, проект забросил, java забыл. Если кому интересно – могу выложить.
Я удивлен, что такие программы сложно найти – по крайней мере, в стандартных ссылках для скачивания документации в 2008м году не было подсказок, чем ее просматривать помимо браузера. А дополнительный поиск гуглом тоже ничего не дал. Как так можно? Программисты – раздолбаи! :)
Еще больше удивляют люди, которые при изучении нового языка программирования не уделяют первостепенное внимание документации. Некоторые раздолбаи даже не скачивают ее себе на компьютер, типа «мне пока книжки хватает». Ну, на эти недоразумения отвлекаться не надо – они заплатят своим временем и зарплатой, а нам будет меньше конкурентов :) Меня больше интересуют нормальные люди.
Начал изучать документацию по Wt (http://www.webtoolkit.eu/wt/doc/reference/html/index.html), которая на Доксигене – и чем ее просматривать в офлайне??
Воистину, я вижу еще один способ приближения Сингулярности: наводить порядок в стане просмотра документации по языкам программирования. Это сохранит человеко-года в такой быстро меняющейся области информационных технологий, скорость развития которой сдерживается только человеческим фактором, наподобие скорости усвоения документации. Не создать ли движение «за нормальную документацию»?
ЗЫ Можете предложить сообщества для кросспоста.