Пользуйтесь ли вы сервисами для хранения знаний, кода, идей, заметок?

Я создавал много разных проектов и в основном все они лежат по папкам и какие-то заметки записаны в блокнотах к этим папкам.

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

И еще надо периодически делать резервные копии...

Пробовал много вариантов, но как-то не приживается.

Посоветуйте, пожалуйста как вы храните полезные идеи, команды, код, решения и т.д. ?


Ответы (1 шт):

Автор решения: Total Pusher

Поделюсь собственным опытом, а не теорией.

DokuWiki

Можно поднять собственную закрытую вики лично для себя на основе DokuWiki.

Достоинства:

  • доступна с любого места через Интернет
  • легко создавать новые заметки: см концепцию вики
  • хороший поиск, если поставить Sphinx: дает русскую морфологию (и en)
  • можно делиться информацией с закрытым кругом людей: есть система авторизации и разграничения доступа
  • можно расширять через плагины
  • резервная копия: вместе с резервной копией сервера (у меня), до этого через gzip сжимал по расписанию каталог с файлами (там все на файлах)
  • можно таскать на USB-флешке (не пробовал, но идея зашла)
  • мне настолько понравилась DokuWiki, что поднял еще одну на работе - где не было "базы знаний"

Недостатки:

  • требуется поднять эту систему и содержать сервер
  • в конце концов я перешел на более удобный Obsidian

Confluence

Confluence - тоже вики, но корпоративного уровня. Использую на работе.

Достоинства:

  • все то, что справедливо для DokuWiki
  • резервная копия и поддержка - ответственность админов
  • куча дополнительных возможностей
  • в целом удобно, нравится, использую постоянно

Недостатки:

  • платная
  • ушла/уходит из РФ (поэтому нравятся self-hosted решения). А вообще это риски бизнеса
  • другие причины слишком субъективны, либо конкретно у меня на работе плохо организовали / сконфигурировали

Obsidian

Obsidian

Достоинства:

  • пишу заметки быстрее, чем в Wiki - основная причина перехода из DocuWiki
  • остальные функции (поиск, переходы) работают быстрее
  • система тегов (в Wiki тоже можно сделать, но тут это большая "фишка")
  • можно расширять через плагины

Недостатки:

  • плохой морфологический поиск (но всегда можно поискать непосредственно по файлам через grep например, либо проиндексировать файлы какой-то другой утилитой)
  • работает на компьютере, и не доступна через Интернет (можно сделать синхронизацию - через их облако платно, либо через Яндекс.Диск или аналоги бесплатно - так как все хранится в файлах)
  • резервные копии - нужно просто копировать файлы куда-то: я использую git + удаленный репозиторий. Также можно сделать синхронизацию через Яндекс.Диск

Поиск информации по разрозненным местам

Приходится долго искать информацию по папкам и блокнотам.

Есть готовые решения для поиска, если к вас куча мест.

  • Archivarius 3000 - морфологический поиск, поиск по офисным документам
  • Private GPT и аналоги - вы загружаете документы, а затем просто спрашиваете у чат-бота вопрос - и он находит ответ. Поставил, попробовал, по ощущениям - дает ответы на "троечку". Проект немного заброшен. Но идея - супер, ищите аналоги.
  • Сейчас популярен RAG - когда условный Chat GPT отвечает по вашей базе документов. Я сделал Telegram-бота, который отвечает по базе знаний из Confluence: пишите вопрос, получаете ответ. Качество оцениваю на "4+".

вытащить какую-либо полезную функцию из прошлого проекта

  • ищу через grep по всем проектам, если помню название функции
  • ищу в истории коммитов git по фразе, далее по хешу коммита можно найти файлы
  • по работе: ищу на Confluence задачу, после чего - по истории git
  • а вообще стараюсь сделать заново, так как мысль эволюционирует, и прошлый код теперь выглядит как плохо пахнущий

как обойти ошибку или вспомнить команду

  • поиск по DokuWiki, либо Obsidian
  • кидаю вопрос в чат - не стоит пренебрегать помощью команды
  • ChatGPT - теперь основной способ

как вы храните полезные идеи, команды, код, решения

Идеи, команды, решения - DokuWiki, теперь Obsidian.

Код - на заре погружения в программирование записывал какие-то хорошие решения в блокнот. Но теперь это крайняя редкость. Проще найти в проекте, либо написать заново. Думаю произошло это потому что просто начал "разговаривать языком кода".

→ Ссылка