Как стать автором
Обновить

Как я учусь на курсах frontend разработки с помощью доработанного метода ZettelKasten

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров19K
Всего голосов 10: ↑7 и ↓3+6
Комментарии31

Комментарии 31

Я не могу придумать ни одного пункта, чем это лучше чем obsidian.

Данная публикация скорее об использовании метода ZettelKasten при обучении на on-line курсах. А не о конкретной программе по этому методу. Как оказалось, обучение на on-line курсах весьма непросто, даже для меня, программиста с 30-летним стажем. И цель этой публикации - помочь студентам подобных курсов на примере моего опыта.

Теперь насчет программы - Obsidian не является специализированной программой для метода ZettelKasten. Ну это как и магазин можно вести в Google Docs, он же универсальный :-)

Это если смотреть теоретически. Если практически, то по пунктам:

  • в Obsidian нет понятия атомарной идеи. Ее можно имитировать обычной заметкой. Но неиспользование отдельной сущности для базового понятия метода - это очень неразумное решение.

  • в Obsidian нет понятия источника. Опять таки его можно имитировать папками, но все же папка и источник это разные сущности. А мой 30-летний опыт в программирования научил меня бояться как огня смешивания сущностей в ПО.

  • в Obsidian нет аналога "Tag Commandera" - как управлять хотя бы 1000 тэгов? По слухам, у Лумана - автора метода - их было около 15000

  • в Obsidian нет сущности "синоним тэгов". Это то, что меня дико бесило при попытках использовать ZettelKasten. "Социум" и "Общество" - это два разных тэга. Без ввода сущности "синоним тэга" при последующем поиске мышление будет неполным. Без синонимов меня преследовало постоянное чувство дежавю при работе с Zettel. Помню же, что добавлял тэг, а его нет. Потому что я добавлял синоним тэга.

  • в Obsidian нет сущности "антоним тэгов". Для автоматизации мышления очень полезная вещь!

  • в Obsidian нет определений тэгов. Возможно, Луман помнил наизусть определения всех 15000 своих ключевых слов. Но я обычный человек с обычной памятью.

  • Obsidian не интегрирован в Telegram, а я прям таки влюбился в этот мессенджер (как и многие вокруг).

Вы скажите, что все недостатки Obsidian можно решить через плагины? А я как опытный программист отвечу - что даже на полноценных языках программирования типа C# приходится иногда ужём вертеться, чтобы реализовать интересную задумку. Плагины же по определению кардинально сужают спектр возможностей. А мне хотелось иметь идеальный инструмент для своих целей.


Да, теги в обсидиане плохие, я просто не использую их. Я просто создаю заметку вместо тега, и тут же получаю и возможность написать определение и возможность линкануть оттуда другие понятия, как синонимы так и антонимы. Также недавно ввели алиасы, что позволяет накидать разных названий к одной и той же заметке, например на разных языках, или если они на 100% синонимы. Просто заметки вместо тегов. Я не понимаю зачем обсидиану игтеграция в телегу, он у меня автоматически синхранизируется между всеми компьютерами и телефонами с которыми я работаю. Ну и коммичу всё это дело в гит с одной машины. За полтора года уже создал под тысячу заметок.

Это здорово, что Вы формируете свою индивидуальную базу знаний!

Но разве конкуренция в подобного рода программах это плохо?

Конкуренция это не плохо, я скорее разочарован что у обсидиана нет ни одного конкурента. Для меня очень важно в первую очередь лично владеть данными, я видел больше десятка программ для организации заметок, которые ведут их в базе данных. Самая большая проблема в том что формат этих баз у каждой программы свой, и получается что начинаешь ты вести там базу, а потом что-то случается, например она начинает тормозить, или поддержка прекращается, или нет поддержки например мобил, и ты повис, у тебя вроде вот база, а данные то никуда нормально не экспортнуть и по-другому не обработать. А подход на файликах, будь это dendron или obsidian, он гарантирует что эти файлы могут быть обработаны как угодно ещё. Я бы даже может на dendron перешёл, но у него нет мобильной версии, а для меня это прямо супер критикал.

Так вроде там штук 30 было конкурентов. Notion всякие и т.д.
И разве до сих пор нету какого-то универсального формата обмена данными между подобного рода системами?

нет, и они все разные на самом деле. Те же теги разные, всякие фишки тоже разные. Т.е. экспортнуть текст то можно, но связной базой данных оно уже не будет.

Обидное :-(
Потому я тоже побился лбом о глупости каждой из систем, и запилил свою.

Я ж программист :-)

Loqseq, Tana, VS Code/ Foam, VS Code / Dendron, Archive, ztlk4 - в качестве примеров конкурентов Obsidian для цеттелькастен.

Практически - в Обсе это тоже все есть, если использовать не сами теги, а заметки. Благодаря тому, что у каждой заметки может быть yaml-блок с метаданными, организовать все можно так, как хочется. Я, например, использую теги для отделения разных типов заметок. А те сущности, которые вы выделяете как теги, у меня выступают в виде markdown-заметок c типом MoC.

Синонимы можно прописывать в нативное поле aliases в yaml, они подхватываются самим Обсом и потом при линковании через [[]] поиск ведется и по названию файла, и по алиасам. Для антонимов завести еще одно поле в yaml. Определния тегов, соответственно, можно записывать теперь в саму заметку. К этим заметкам-тегам теперь спокойно линкуются другие заметки, при этом не смешиваясь, потому что для самих атомарных заметок я использую другой тег.

В качестве tag commandera потом прекрасно выступает плагин DataView, который превращает кучу markdown-файлов в аналог NoSQL БД, заодно позволяя строить любые другие выборки по заметкам. Интеграция с Telegram тоже, я уверен, уже кем-то разработана в виде плагина. А если подходящей реализации нет - всегда быстро можно накидать свою.

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

Не критикую вашу реализацию, если вам удобно - супер, но Obsidian - это действительно очень мощный инструмент, который можно сконфигурировать практически под любой сценарий. Где-то это уже может быть троллейбусом из буханки, но это уже совсем другая история :)

Заметки и ссылки в Обсидиане не имеют иерархии. Обсидиановое хранилище вообще плохо к каталогам внутри относится, сваливая картинки в корень. Фича реквест на скрытый каталог для картинок, начинающийся с точки, валяется уже года три. Тэги тоже неиерархичны.

Потыкал я пальцем в это, потыкал... И остался на Bear, который купил в незапамятные времена.

Тут, видимо, вопрос сценариев использования. Я до этого сидел на Эверноуте, как раз выстраивая иерарихию. В итоге получалось так, что я слишком заморачивался с этим, и это только добавляло головной боли. Перешел на такую плоскую систему, и пока ни капли не жалею. Имею в принципе всего четыре папки в Обсе - Notes для самих заметок, References для источников, Templates для шаблонов и Files для всех аттачей. Вся иерархия строится полностью на линках между заметками. Но понимаю, что многим такой вариант не подходит и важна иерархия. Здесь Обс уже заметно проигрывает.

Не понял, почему кому-то религия запрещает структурировать заметки по директориям (или это не иерархия?). Вот с такими настройками вообще перестаёшь заморачиваться и из Zen Mode уже можно не вылазить

Раздражают только включенные Wikilinks из коробки - как бы это не Markdown.

Какой фич-реквест на каталог для картинок? Настройки - Files & Links?

А дополнение Custom Attachment Location позволяет динамически менять Subfolder, например вот настройка при которой поддиректория с ресурсами документа создаётся одноимённой (по аналогии с сохраняемой полностью веб-страницей)

В другом проекте (Vault) для удобного развёртывания в Hugo аттачи сохраняются в директорию с заметкой, а заметку сохраняю как "название статьи/index.md" - так пути не разъезжаются и все материалы переносятся вместе с заметкой

Тэги тоже неиерархичны

Тэги в Obsidian как раз иерархичны, иерархия понимается через слэш:

#my/best/tag

будет найден в т.ч. при фильтрации по #my, #my/best

Заметки не имеют иерархии

Так оно всё про семантику, не про каталог. При этом _явная группировка_ карточек складыванием в папку доступна. А развесистое дерево папочек в общем и целом противоречит идеологии и Цеттелькастена, и Obsidian.

сваливая картинки в корень

Есть такое. Как и прочие блобы это всё хочется хранить где-то отдельно.

Где хранить аттач - вполне настраивается

"Obsidian не интегрирован в Telegram "
Есть плагин позволяющий из Телеграма отправлять сообщения, изображения, файлы (и т.д.) в свой Обсидиан. Сам пользуюсь, удобно.

Так давайте на него ссылку, народу будет интересно!

А что вот это значит: "This plugin is only available for desktops and would never be available on mobile platforms. "
Можно ли с Telegram коммуникатора отослать в свой Obsidian сообщение?

1) Приём сообщения с Телеграма в Обсидиан происходит при запуске Обсидиан на десктопе (на Винде). Сообщения в боте хранятся сутки, т.е. можно отправить сообщение при незапущенном плагине, главное плагин запустить не позже чем через сутки.
И понятно, я думаю, что Обсидиан на смартфоне засинхронизируется с другим вашим Обсидианом и данные будут везде одинаковые.
2) Да. Там принцип, что создаётся телеграм-бот, а потом этому боту отправляешь что угодно и с чего угодно.

Спасибо за интересную статью. Перепробовал разные способы ведения своей базы знаний, долго обдумывал разработку своей программы, но остановился базе знаний, построенной вокруг обычной файловой системы (каталоги, текстовые файлы, иногда - html файлы), как наиболее универсальной для переноса между устройствами и с возможностью доступа без всяких средств, кроме текстового редактора.

Obsidian, Logseq (открытое решение) и VSCode Foam. Если правильно сконфигурить, то всё с чем вы будете работать - текстовые файлы (Markdown) и аттач к ним. Т.е. это работает на любом утюге имеющем хоть какой-то текстовый редактор, просто Logseq и Obsidian более удобны и упрощают некоторые вещи. Синкать можно через что угодно, версионировать и отслеживать изменения - через любую систему контроля версий. Всякие гитлабы, гитхабы этот Markdown ещё и покажут красиво. А если нужно выгнать в сайт-документацию - Hugo в помощь

Мои TODO обс не понимает.... Logseq как то ближе

Отличная статья, не понимаю, почему минусуют. Вероятно, слово Цетелькастен вызывает ассоциации с астрологией.

Наверное, из-за переноса (термин из психологии). Какое-то число народа столкнулось с on-line курсами и испытало из-за этого психологическую травму (и падение своей самооценки). А я тут такой красивый вылез и рассказываю как успешно справиться с такими проблемами. Так получается, что можно было курсы не бросать?

Благо делать это в On-line курсах очень удобно - помечаешь куски текста заинтересовавшие, и копируешь.

Строго говоря - это выстрел в ногу. Писать самому, а тем более переобдумав своими словами (или дополнив из других источников, если в материале курса что-то не очевидно) - более правильный вариант для обучения. Хотя лучше так, чем никак.

Всё никак не прикручу экспорт в Anki из Obsidian (а точнее из Markdown), чтобы иметь вечнозабываемые топики всегда под рукой на телефоне. Ну и Obsidian с синхронизацией через всё что шевелится позволяет не запариваться, на какой ОС, на каком хосте всё это вести.

Бэклог - это больше актуально для работы - по нему потом удобно трекать время

Отсюда вижу, что написана программа на Delphi. Рекомендую поставить более свежий скин, чтоб не выглядело устаревшим решением. Например, темный скин Windows11. Он есть в поставке свежих версий среды, или могу отдельно скинуть, если нужно.

У меня Delphi 10.2, там есть тот, что в архиве. Если у Вас есть более новый, скиньте пожалуйста в личку.

В фаерфоксе ссылка на вашу программу не скачивается, а открывается как текстовый файл. В гугл-хроме все нормально скачалось.

А чем это лучше пресловутых ментальных карт?

Вот типичный пример ментальной карты:

типовая ментальная карта личного развития
типовая ментальная карта личного развития

Вот кусочек Zettel моих On-line курсов:

Пример ZettelKasten по гридам
Пример ZettelKasten по гридам

Согласитесь, абсолютно разные вещи.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий