База знаний в духе Unix

  OSX, Workflow, QuickQuestion, UnixWay

Я видел очень много блогов на wordpress или blogger, созданных специально для того, чтобы хранить личную базу знаний автора. На мой взгляд база знаний ценна тогда, когда в ней легко искать информацию. Причем иногда ты даже не помнишь какие именно ключевые слова нужно ввести в поиск.

Мой блог работает на базе jekyll, а посты хранятся в markdown. По ним легко искать с помощью spotlight, их можно тегировать в openmeta и просматривать оффлайн. Но блог — только самая маленькая часть моей базы знаний. Основная — хранится в виде markdown и текстовых заметок в nvalt. Теги, создаваемые в nvalt, соответствуют формату openmeta и у меня есть множество средств для поиска информации. Сюда подключен и alfred, но цель этого поста — рассказать про скрипт Quick Question от Brett Terpstra.

Брать надо именно мой форк, т.к. у Бретта скрипт давно не обновлялся и не работает с mdfind в OS X ML. Я сделал быструю заплатку, которая работает хоть как-то, но не совсем так, как было задумано в оригинале. Обязательно буду исправлять, пока ещё не разобрался с новым mdfind.

Скрипт предназначен для ведения базы знаний по принципу вопрос-ответ. Вопросы формулируются таким образом, чтобы ответ можно было найти по прошествии долгого времени, даже если ты уже не помнишь как именно сформулировал вопрос в прошлый раз. Кроме того, можно задать теги, которые увеличат релевантность. Проще всего это проиллюстрировать на примере:

Добавляем вопрос:
# qq -a "Где скачать темы для твиттер bootstrap" "На сайте bootswatch.com"

Находим ответ:
# qq темы для bootstrap

Редактируем наиболее релевантный ответ:
# qq -e темы для bootstrap

Кроме того, в ответы можно добавлять дополнительную информацию:

Темы для bootstrap на сайте bootswatch.com
@(бутстрап) @(цветовые схемы)
@open(http://bootswatch.com)
@copy(бла бла бла)

В этом примере заданы дополнительные ключевые слова для поиска. Если будет найден этот ответ, то автоматически откроется сайт bootswatch и “бла бла бла” будет скопировано в буфер обмена.

Вот такая интересная концепция, которую я уже использую и намерен дорабатывать. Например, мне очень нравится хранить в нем ссылки на сайты. Удобнее, чем закладки:

Открыть сайты для отправки показаний водомера и газа, скопировать номер ЛС в буфер
# qq отправить показания

Открыть макет, с которым сейчас работаю
# qq бутстрап прототип

QuickQuestion на github