Zettelkasten — крутой метод хранения идей и знаний — сейчас на слуху, его уже обсуждали на Хабре. Я веду такой в Notion уже год, потому что Notion лучше всех воплощает три главных принципа Zettelkasten: взаимосвязанность, категоризацию, актуальность. Метод улучшил качество моего обучения и исследований, и без него как-то уже не так.
Я почитал русскоязычные и англоязычные ресурсы и не нашел ни нормального шаблона для Notion, ни объяснения как реализовать главные преимущества метода Zettelkasten. Под катом и то, и другое.
UPD: На текущий момент, статья безбожно устарела, потому что за еще один год я набрался опыта, помогая другим людям организовать их Цеттели и наблюдая за чужим опытом. А еще Notion выпустил несколько фич, заточенных именно под Цеттель. И теперь мне совестно, как новички страдают, разбираясь в теме после меня.
Эту статью можно почитать для понимания основ, но актуальные источники информации тут:
- У меня в Психотронке можно следить за подготовкой обновленной версии, ну и написать мне за помощью. А можете не следить: версия 2.0 выйдет на Хабре.
- В русскоязычном сообществе Zettelkasten в Телеграме сидят люди, которые хорошо разбираются в теме. Мы обожаем помогать новичкам.
Дисклеймер: ни Notion, ни автор метода мне за статью не платили.
Что такое этот ваш Цеттелькастен?
Это метод хранения и систематизации идей, знаний, источников и чего душе угодно. Zettelkasten социолога Никласа Лумана помог ему написать более 70 книг и 400 статей, при том что вел он Zettelkasten на бумаге, а писал не детективы, а книги и работы по социологии. Обязательно прочитайте перевод на Хабре о преимуществах метода.
Так выглядели карточки самого Никласа. Взято из блога Eugene Yan
Мой Zettelkasten выглядит как на картинке в начале статьи, но внешность обманчива — Zettelkasten может выглядеть как угодно, и в этом его преимущество. Для этого поста я взял донором мои весенние заметки по Java, поэтому не удивляйтесь специфичности скринов.
Для меня, Zettelkasten базируется на трех главных принципах.
Взаимосвязанность
Заметки в Zettelkasten находятся в ассоциативной сети, прямо как в человеческой памяти (но это не точно), из-за чего их считают продуктивнее обычных заметок. На деле у меня получается придумывать новые идеи, не терять нить размышления при длительном исследовании и находить связи между прочитанным месяцы спустя.
Категоризация и иерархия
Взаимосвязанность обеспечивает то, что все заметки в Zettelkasten связаны. И не только по признаку темы, категории или по тэгам, но и между собой, в иерархии и без нее. Я веду длинные цепочки по мере чтения книги и сортирую данные по темам. Например, вот мои заметки по дженерикам в Java.
Актуальность
Так как вам придется проставлять ассоциации, категории и тэги, Zettelkasten стимулирует вспоминать взаимосвязанные между собой вещи. По моему опыту, это и есть тот момент, когда рождаются новые идеи, а еще и тренируется память.
Еще в Zettelkasten легко искать ответы на вопросы, особенно если его откармливали годами, и теперь он толстый и мудрый.
Мои цели и опыт
Я завел Zettelkasten чтобы учить программирование эффективнее: вести конспекты так, чтобы было легко находить снова и не приходилось «перегугливать» свои вопросы. Со временем я осознал мощь метода и стал использовать его для всего: своей книги, случайных идей, исследований по работе.
Смешивание помогло: тут же нашлись связи между разными дисциплинами и темами, а еще я перестал забывать, почему же LinkedHasList был столь важен для меня два месяца назад (чтобы реализовать порядок ходов в настольной игре). Из идей ничего больше не теряется, а значит не приходится изобретать их заново. Это экономит ресурсы мозга, а так как мозг потребляет много калорий, то можно сэкономить и на еде. Полезно в эти темные дни.
Как завести Zettelkasten в Notion?
Я уповаю на то, что читатель знает уже основы Notion, или просто с ними разберется: инструмент не сложный и нынче бесплатный для личного пользования. Я расскажу только неочевидные, как оказалось, основы реализации Zettelkasten.
База данных — основа основ
Это сердце Zettelkasten и основа всех преимуществ Notion: без неё можно также реализовать метод в Блокноте. Создается она просто: (1) создается пустая страница, а затем (2) выбирается тип базы данных.
Таблица проще всего для отладки. Это только внешний вид коллекции карточек с метаданными, потом можно его изменить.
Настройка атрибутов карточек
В созданной таблице нужно открыть любую страницу и задать минимальный набор аттрибутов каждой карточки. Эти поля будут доступны затем для каждой новой заметки, и наоборот: добавленные аттрибуты появятся в старых заметках.
Минимальным набором для полной реализации Zettelkasten являются:
- Тэги: неограниченное количество тематических меток. Когда будете вводить тэг, Notion предложит существующие или сразу создаст новый, поэтому даже с телефона удобно их добавлять.
Не нужно пытаться продумать сразу все тэги. Просто добавляйте по мере пользования, и пытайтесь добавлять только такие, которые будете переиспользовать. Я пытался создать себе набор тэгов на старте, и в итоге пришлось удалять неиспользуемые. - Категории: основная тематическая принадлежность заметки. Я выявил на деле, что хотя «тэговая», мелкая тема может повторяться (например, «math»), большинство заметок принадлежат к «категорической», большой теме (например, «Java»). Иногда заметка может менять категорию, например повышаться из «Идей» в «Посты».
- Связи. Для этого нужно выбрать продвинутый атрибут «Relation» (1), выбрать ваш Zettekasten из списка баз данных, а затем выбрать вариант «Create a new property: Sync both ways» (2). Таким образом, взаимосвязанные карточки будут автоматически генерировать ссылки друг на друга.
На этом создание закончено и надо работать
Да, Zettelkasten уже готов к бою. Но история только начинается.
Вся суть метода — в том, что его надо вести. Стоит следовать советам из перевода: например записывать идеи дробно, своими словами и пытаться связать одни записи с другими. По ходу дела вы будете дорабатывать свою киберпамять под нужды.
Например, у меня появился атрибут «URL», потому что я пользовался клиппером Notion для сохранения целых статей прямо в Zettelkasten и хотел хранить ссылки на источники. Полезно при работе с академическими журналами по подписке, если вы почему-то не научный пират.
По мере наполнения Zettelkasten, его мощь и полезность будут расти. Для меня первый момент X настал спустя две недели, когда вместо «перегугливания» процесса создания файла в Java я нашел его в Цеттеле. А второй — когда я конспектировал Троцкого и сумел связать его идеи автономной революционности масс с карнавалом Бахтина. Теперь открытия и находки происходят каждый день.
Особенности и преимущества Zettelkasten в Notion
Тут и начинается самая важная часть поста. Оказалось, что даже секундные «тормоза» забивают гвозди в гроб моей любви к заметкам, и пришлось оптимизировать работу с Zettelkasten. Поэтому эта история об эффективном использовании Notion и убыстрении процесса.
Как пользоваться связями карточек?
Каждый раз, когда вы добавляете одну карточку к другой, в поле «Related» можно вводить нужный термин, например «Boolean». Notion сразу подыщет их в вашем Zettelkasten. А можно выбрать руками.
Потом «детей» отдельной идеи можно увидеть в авто-генерированном аттрибуте карточки.
Это работает в обе стороны: можно кликнуть на авто-аттрибут и сделать карточку «ребенком» вручную.
Как создавать «виды» на записи?
В методе важно иметь способ по-разному взглянуть на собранные знания. В Notion это реализуется через «виды» и каталоги.
Вид Zettelkasten можно создать с помощью переключателя вида сверху (1). Я пользуюсь, в основном, галереями (это вид карточек) и списками.
Можно иметь несколько видов одного типа: вид — это не только стиль выкладки, но и видимые атрибуты, фильтры, сортировка и все ваши настройки. Через меню «Properties» (2) в виде «Галерея» можно:
- Настроить порядок показа атрибутов (например, показывать имя карточки внизу)
- Изменить размер и что будет показываться на превью.
- Включать и выключать отображение атрибутов
Как создавать каталоги?
Преимущество Zettelkasten в том, что он позволяет в любой момент «собирать» каталог по набору тем, признаков или связей между заметками. Это открывает досель неочевидные вещи и соединяет клочки идей в одну историю. А преимущество Notion в том, что это делается в три клика.
В Notion есть блок «Связанная база данных» (Linked database), которая создаёт «проекцию» данных из основной базы на отдельную страницу. Связанную базу данных можно создать на отдельной странице и выбрать для неё свои виды. Она будет синхронизироваться с главной, и наоборот.
Теперь следите за руками:
- Создаем карточку внутри Zettelkasten
- Вставляем в неё базу данных, связанную с Zettelkasten (так можно)
- Создаем для неё вид, фильтруя по тэгам или категории.
Получилась «архикарточка», прямо как у автора метода Лумана. Для них у меня отдельная категория. Вот, например, мой каталог на тему объектно-ориентированного программирования и полиморфизма.
Настройка происходит через фильтры, и они работают по атрибутам. Увы, пока не по содержимому. Пока фильтры не включены, появляются они только по наводке мыши.
Как ускорить ввод данных в больших базах?
Когда ваш Zettelkasten перевалит за сотню-вторую записей, он начнет загружаться с задержкой и вообще тупить при манипуляциях. Но так как мы умеем создавать связанные базы данных, то ситуация легко исправима.
Я создал отдельную страницу для ввода, вставил в неё связанную базу и отфильтровал её так, чтобы показывались только добавленные сегодня карточки. Она загружается мгновенно с телефона и ПК.
Для пущей скорости я создал для неё ярлык в Chrome и закрепил на панели задач. Для этого надо через настройки Chrome выбрать More tools — Create Shortcut. Не забудьте проставить «Open as window» в диалоговом окне.
Как искать данные?
Это большой провал Notion, но если кликать по кнопке «Search» вверху самого Zettelkasten, то искать он будет по заголовкам и никак иначе. Чтобы искать по тексту и вложениям как в начале статьи, нужно пользоваться Quick Find, который вызывается по Ctrl/Cmd + P.
Как использовать шаблоны ввода?
Со временем обнаружилось, что я ввожу плюс-минус одинаковые типы новых карточек. Потому я создал шаблоны, которые вызываются по кнопке «New» в углу и предлагаются при создании новой страницы.
В шаблоне можно поставить атрибуты по-умолчанию, иконки и даже содержимое. Например шаблон каталога сразу содержит связанную базу данных с фильтром для быстрой настройки.
Как создавать резервные копии?
Автор метода вел свой Zettelkasten десятилетиями, и недавно в коментариях я увидел, что Notion слишком скоротечен и ненадежен для такого метода. Мне тоже страшно что Notion вдруг закроется, и потому я регулярно выгружаю данные и отправляю в облако. При экспорте Notion присылает копию на имейл; так получается следовать правилу 3-2-1 без особых усилий.
В архиве есть корневой файл со ссылками на все карточки, и папка с карточками и ресурсами: картинками, файлами и вложениями. В HTML хранятся стили, тэги, категории и остальные атрибуты, так что в случае конца света, можно будет перестроить Zettelkasten самому.
Выводы, шаблоны и ресурсы
Zettelkasten развивает зависимость. Когда не можешь записать идею или узнанный факт прямо тут и сейчас, осознание его ненасытности и щедрости вызывает острую боль. А лень скормить Цеттелю что-либо пробуждает вину. Поборники метода не врут: появляется желание читать ранее тягостные книги и мануалы с целью накормить своего заметочного демона, чтобы тот переварил гранит науки в мягкую кашу.
Я верю, что лучший Zettelkasten построен своими руками. Ни один из шаблонов Notion, которые я видел не пригодился сам по себе. Поэтому я и написал статью вместо размещения очередного шаблона на Реддите.
Тем не менее, я создал шаблон для использования со страницей для быстрого ввода, типовыми карточками (разные категории, каталоги) и примером того как отсылаться к другим страницам. Можно копировать его к себе, а можно посмотреть и сделать свой.
В своём шаблоне я использовал бесплатные иконки для Notion от NuttsLab, мне они нравятся.
UPD: помочь по Notion можно получить в русскоязычном сообществе Notion в телеграме. Там сидят официальные представители Notion и много людей, готовых помочь.
UPD 2: меня приглашали на стрим по Zettelkasten, где я показал как использую метод на деле. Получилось запутанно, но по отзывам полезно. Запись на YouTube.