pascendi: (Default)
[personal profile] pascendi
На Хабре наткнулся на статью про Zettelkasten -- метод организации данных, благодаря которому немецкий социолог Никлас Луман написал более 70 книг и 400 научных статей.

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

Вести это тяжкий труд, но пока ковыряешься -- хорошо усваиваешь тему, да и новые свои идеи появляются.

В статье по ссылке подробнее, но главное я сказал.

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

В принципе, ничего нового в этом методе нет. Фасетная классификация через ключевые слова известна много десятилетий (и мне еще в 1990 году случилось ее внедрить в одной могучей полнотекстовой информационно-поисковой системе, где я тупо ввел три уровня: тема, подтема, ключевые слова -- два верхних из них были фиксированными словарями; в результате резко, на порядки, уменьшилось количество шума, который при поиске по тексту зашкаливал).

Сейчас, разумеется, сделать удобное приложение для Цеттелькастена -- как два пальца об асфальт. Потому что довольно простая реляционная БД с довольно простым пользовательским интерфейсом легко реализует практически все нужные функции:

Создание карточки:

Идентификатор — Timestamp()
Название
Общая тема
Ключевые слова (отдельная таблица)
Связанные карточки (отдельная таблица: ид карточки, ид связанной карточки, причина связи)
Ссылки (отдельная таблица)
Содержание
Признак актуальности
Комментарий
Кнопка «Создать тему»
Кнопка «Создать ключевое слово»
Кнопка «Создать связи»
Кнопка «Сохранить»

Создание связей:
Общая тема исходной карточки
Ключевые слова исходной карточки
По нажатию кнопок ключевых слов (множественный выбор) выводится список карточек, имеющих общую тему и выбранные ключевые слова
Если ни одно ключевое слово не выбрано, выводятся все карточки, относящиеся к общей теме
Кнопка «Создать ключевое слово»
Простановка галочек для выбора связываемых карточек
Указание причины связи (произвольный текст)
Кнопка «Сохранить»

Карточка-оглавление темы:
Общая тема
Список входящих карточек: идентификатор, название, ключевые слова
(выводятся все карточки, относящиеся к данной общей теме, в обратно хронологическом порядке)

Карточка-оглавление по ключевым словам:
Ключевые слова
Список входящих карточек: идентификатор, название, общая тема, ключевые слова
(выводятся все карточки, имеющие заданный набор ключевых слов, в обратно хронологическом порядке, отсортированные по общей теме)

Карточка-оглавление общих тем:
Список общих тем: общая тема, количество карточек, ключевые слова

Карточка-общее оглавление:
Список всех карточек в обратно хронологическом порядке: идентификатор, название, общая тема, ключевые слова.

Стартовый экран:
Карточка-оглавление общих тем
Карточка-общее оглавление (пейджинг по 20 карточек)
Кнопка «Создать карточку»

Связующая таблица карточки-ключевые слова:
Идентификатор карточки, ключевое слово

Связующая таблица общие темы-ключевые слова:
Общая тема-ключевое слово


Это без построения графа, отображающего визуально связи между карточками. Говорят, нужная функция. Мне кажется, тоже реализуемая достаточно легко, мне просто влом было сейчас это продумывать.

Интересно, сколько времени понадобится, чтобы сделать такое приложение в LiveCode? Инструмент для этого оптимальный (поскольку построен в идеологии стека карточек), плюс сразу выдает исполняемые модули для винды, линукса, Мака и Андроида. А в платной версии -- для айфона и веба.

Date: 2020-07-08 02:17 pm (UTC)
rotbar: (Default)
From: [personal profile] rotbar
Мудро...

Profile

pascendi: (Default)
pascendi

January 2022

S M T W T F S
       1
23 456 78
91011121314 15
16 171819202122
23242526 2728 29
3031     

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 28th, 2025 09:47 pm
Powered by Dreamwidth Studios