habrahabr

Я построил систему управления жизнью и она Вас шокирует

  • понедельник, 9 июня 2025 г. в 00:00:05
https://habr.com/ru/articles/916346/

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

Я расскажу о системе, к которой шел почти 18 лет, потому что системы GTD для обычных людей у меня не работали. Я пробовал ежедневники, Google Keep, Evernote, Notion, физическую белую доску для маркеров, делал локальный сайт на HTML, писал себе в личные сообщения и в канал в соцсетях и мессенджерах, пока, наконец-то, не дошел до Obsidian.

Предисловие

Представьте, вы приходите с корпоратива, жутко уставшие. Сил нет настолько, что вы даже не можете повесить одежду. Вы её бросаете куда-нибудь, ведь сейчас вам хочется единственного — просто доползти до кровати.

А теперь та же история, но у вас есть муж/жена. Она находит вас около двери и заботливо, снимая вашу одежду:
— Хочешь повешу?
— Д-да...
— Вот сюда?
— Ага...

Запомните эти две истории, далее мы к ним ещё вернемся.

Содержание статьи:

  1. Слишком сложно, до свидания

  2. Система Единого Холста

  3. Из чего состоит система

    3.1. Плагины и файлы
    3.2. Шаблоны Templater
    3.3. Обработка данных и трекинг

  4. Мое видение планирования

  5. Система бесконечного действия

  6. Колесо Баланса

  7. Планы по улучшению системы

  8. Система на дистанции

  9. Заключение

  10. Ссылки

Слишком сложно, до свидания

Все системы, которые я видел в разных приложениях, от разных людей — всегда шли на увеличение количества действий и на усложнение, но практически никогда не шли на избавление от рутины. Ты запускаешь систему и ты должен КАЖДЫЙ РАЗ проходить этот ад:

Так, если я хочу это сделать, то вот тут я должен кликнуть... Вот здесь находится выпадающий список, нельзя забыть изменить... Ах да, у меня же система Zettelkasten, я должен вот тут не забыть добавить этот тег... Точно, это же заметка про мою собачку, надо переместить её в папку домашних животных...

Даже если это не сложная система, а ваша личная, вы должны всё равно напрягаться каждый раз:

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

В первые дни всё идет вполне хорошо, потому что система новая, чувство новизны прибавляет дофамина, но далее интерес идёт на спад. А ведь всё просто — объем рутинных действий увеличился без видимой пользы для мозга. И мозг просто решает перестать выдавать вам дофамин на эти действия.

Выхода из этого два:

  1. Успеть перевести систему в разряд привычки до спада дофамина.

  2. Уменьшить рутину до такой степени, что мозг просто не будет считать это слишком энергозатратным (или будет считать её самым эффективным действием в этом деле, т.е. проще некуда).

Мне не подходил первый пункт (у меня СДВГ, поэтому дофамина, а следовательно и терпения для формирования привычки у меня катастрофически мало), поэтому я решил следовать второму пункту. Да и первый пункт мало кому подходит в современном мире, потому что энергозатратную систему ты сможешь поддерживать только когда твоя энергия перманентно в нормальном состоянии. А если мы берем во внимание, что сама система и должна создавать структуру, чтобы энергия была в нормальном состоянии (формирование привычек, ежедневный анализ своего самочувствия и т.д.), то получается замкнутый круг:

  • Нужна система, которая поддерживает энергию.

  • Нужна энергия, чтобы поддерживать систему.

Этот круг сразу сломается, если хоть что-то из этого списка нарушится.

А теперь взглянем на эту картинку:

Слева — базовый подход к системе управления заметками у большинства людей, которые их ведут. Справа — система, к которой (по моему мнению) необходимо стремиться. И она похоже на мою аналогию с историей про корпоратив и поддержкой от второй половинки — такая система должна задавать вопросы, а вам нужно только отвечать, кивать и мотать головой, пока система будет делать всё сама.

Базовые же подходы работают некоторое время, либо они могут работать на дистанции, если они несложные. Но если вы захотите хоть чуть-чуть их усложнить... То нагрузка на мозг может увеличиться многократно.

Например, вы ведете простые заметки, где просто указываете каждый день, медитировали вы или нет. Максимально простой формат:

И только это. То есть этап заполнения для мышления выглядит так:

  1. Сегодня надо Медитацию оттрекать.

  2. Пишу Медитация и ставлю галочку...

  3. Можно проверить в прошлой заметке формат записи, чтобы точно не ошибиться.

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

Но в определенный момент приходит мысль, что в заметки стоит добавить ещё и трекинг ходьбы:

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

  1. Сегодня надо Медитацию и Ходьбу оттрекать.

  2. Так, добавляю Медитацию и ставлю галочку...

  3. А что было первым в списке? Медитация или Ходьба? Надо проверить прошлые заметки, чтобы точно не ошибиться...

  4. Да, Медитация первая, Ходьба вторая. Добавляем тогда Ходьбу и ставлю галочку...

  5. Медитация и Ходьба, какие у них сходства и различия? Может трекать Медитацию по минутам, а Ходьбу по количеству шагов?

  6. У меня уже есть два пункта, может добавить что-то ещё?

Мы добавили всего-лишь дополнительно один параметр, но количество этапов и разветвлений для полета мысли увеличилось кратно. И значительно увеличилась нагрузка на рабочую память, ведь кроме того, что Вы уже должны два параметра держать в памяти, теперь ещё необходимо выкидывать из головы увеличивающееся количество мыслей из-за этих параметров.

Для меня увеличение нагрузки на рабочую память — ОЧЕНЬ важный негативный аспект, потому что СДВГ негативно влияет на рабочую память (понимание речи, чтение, применение математических способностей, обучение или рассуждение) и визуально-пространственную кратковременную память (часть рабочей памяти, которая удерживает в голове образы [например, формы, цвета, текстуры] и пространственные характеристики [расположение объектов, их движение, ориентацию в пространстве])1. Но также и у молодых поколений сейчас максимально страдает производительность в когнитивных задачах, в том числе и в использовании рабочей памяти2.

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

И именно поэтому я создал свою систему управления жизни, которую назвал FocusCanvas или "Система Единого Холста".

Система Единого Холста

Система визуально стала выглядеть так (после многочисленных изменений):

И для этой системы я разработал правила:

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

  2. Холст должен визуально и как можно проще показывать мне эту информацию. Трекинг финансов, сна и работы — стандартными графиками, трекинг привычек — месячным графиком. Простыми цифрами должны быть показаны доходы и расходы за месяц, среднее время сна и количество часов работы за неделю.

  3. Должен присутствовать игровой элемент. Уровни с системой XP, радарный график (это уже прихоть СДВГ).

  4. Заполнение новых данных должен быть по системе "тронул мышку — проиграл" (я писал об этом статью на habr с примером моего шаблона картотеки, который уже встроен в эту систему). Ну или данные должны собираться практически без моего ведома (об этом я расскажу ниже).

  5. Холст должен отвечать правилу Единого Холста. Вся важная информация уже видна. Я не должен никуда переходить в заметки за ней.

  6. Перехожу в другие заметки я только ради старта работы (рабочие и учебные проекты), просмотра подробных данных о людях (картотека) или изменение данных о них, обработки списков Посмотреть Позже и Отложенных Идей и закрытия Ежедневной Заметки в конце дня рефлексией и Трекингом Привычек. Или это просто блуждание по Базе Данных ради интереса.

  7. Система должна использовать как можно меньшее количество вариаций для добавления данных, чтобы я не переключался постоянно между ними. Поэтому основа трекинга у меня — Telegram-бот, в котором я трекаю активности, финансы, также записываю через него Идеи для последующей обработки, пополняю список Посмотреть Позже. А через кнопки на Холсте у меня можно вызвать все нужные шаблоны.

  8. Если я трачу слишком много усилий для получения или ввода данных — то это не подходит моей системе.

Базой для всей этой системы я выбрал Obsidian, потому что:

  1. Obsidian очень гибок. Если объяснять аналогиями, то Obsidian — это Android, а Notion — это iOS. Не всегда красивый, но свободный.

  2. Я могу работать с ним полностью оффлайн. Опять же, минус для Notion.

  3. Если базовых функций не хватит — есть сторонние плагины от разработчиков. Либо я могу встроить в Obsidian свои скрипты (что я и сделал).

  4. В нем есть Canvas. Очень мощный инструмент, который позволяет собирать всю информацию в одном месте. Да, подобное есть и в Notion, при этом в некоторых случаях там это сделать проще в любых заметках, но свобода самой системы перекрывает все изъяны.

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

Вот как это выглядит в Obsidian:

Из чего состоит система

Плагины и файлы

Под капотом моей системы следующие плагины:
Calendar — плагин для показа календаря и переключения между ежедневными заметками.
Tasks — мощный плагин планирования задач (но я не использую его на полную, иначе это слишком усложнит мою систему, мне хватает только собирать с помощью него задачи через теги и ставить галочки завершения задач).
Dataview — один из важнейших плагинов для сбора и визуализации данных в моей системе, особенно его надстройка Dataviewjs.
ICS — плагин для парсинга данных с Google Календаря (Apple и других) через ICS-ссылку.
Meta Bind — плагин кнопок. С помощью него я сделал запуск шаблонов через клик на основном холсте.
Metadata Menu — плагин удобного изменения метадаты заметок. Через него я сделал изменение статуса работы проектов через выпадающие списки.
QuickAdd — мощный плагин для скриптов и списков, у меня он меняет категорию человека в картотеке (потому что Metadata Menu не позволяет делать списки в списках).
Shell commands — плагин для запуска скриптов через консоль. В нем я запускаю основной свой JS скрипт (о нем ниже).
Templater — мощный плагин для шаблонов заметок. Список этих шаблонов ниже. Также Templater запускает один из шаблонов при старте Obsidian.
Tracker — плагин для визуализации графиков. У меня он визуализирует линейные финансы и активности, а также месячных график привычек. Мне не понравилось оформление легенд графиков и я создал их сам через CSS.
Charts — плагин для визуализации графиков. У меня он визуализирует радарный график (Tracker в него не может). С этим плагином довольно много мороки, у текста вершин был очень мелкий шрифт (который я не мог увеличить) и мне пришлось самому создавать этот текст через CSS.

Файлы, которые лежат в основе системы:
Файл Homepage.canvas — важный файл в моей системе, файл холста, в котором собрано всё.
Файл Homepage.md — файл для блока Сегодня, который меняется каждый раз, как меняется ежедневная заметка. Он не пересоздается, а именно каждый раз меняются блоки (ссылка на сегодняшнюю заметку, сегодняшние задачи и дедлайны), то есть я могу вставить ещё дополнительно туда любой текст и он не изменится спустя дни. Он является основой для блока Сегодня:

CSS-файлы со стилями — холст в Obsidian не будет таким красивым из коробки. У меня отдельные файлы со стилями, которые меняют оформление Canvas (в том числе скрывают меню самого Obsidian, чтобы они появлялись только при наведении) и убирает некоторые баги в определенных темах Obsidian (например отступы багают в разделе папок у нескольких тем). Вот как выглядел бы мой Canvas без этих стилей:

Шаблоны Templater

Start Obsidian — шаблон, который запускается при включении Obsidian. Если сегодняшней заметки нет — переключается на Daily Plan шаблон. Если заметка есть — переключается на Homepage.canvas. Мне пришлось сделать этот шаблон, потому что иначе бы не работало создание ежедневных заметок через Календарь, если бы я попытался алгоритм засунуть в один шаблон.

Daily Plan — шаблон ежедневной заметки. При запуске он сразу требует ввести Главную задачу дня и другие задачи. С утра я обычно включаю Obsidian, шаблон требует ввести меня эти задачи, а я ухожу на кухню думать, что должен запланировать сегодня. После заполнения — добавляются задачи с хештегом #daily, парсятся сегодняшние задачи из Google Календаря и вписываются с хештегом #daily, вписываются ближайшие дедлайны, дни рождения на ближайшие дни и встречи, изменяется файл Homepage.md (в нем вписана ссылка на заметку, задачи #daily и дедлайны), высчитывает XP для уровня и далее переключается на Homepage.canvas (переключение на Canvas особенно важно для дофаминового закрепления).

Daily End — шаблон конца дня, который можно запустить при переходе в любую ежедневную заметку. Заполняется через вопросы — рефлексия прошедшего дня, что получилось, что нет, также трекаются все привычки.

Meeting Template — шаблон встреч. Подробный шаблон для планирования встреч и в нем есть отличительная фишка — линия, которая показывает, что заполнять до встречи, а что во время и после встречи. Основной хештег задач #meeting.

Rolodex Template — шаблон картотеки. Я писал про него в своей статье. В данный момент я переработал этот шаблон, там больше ветвлений по категориям у людей и есть отдельный скрипт, который может эти категории очень легко менять через плагин QuickAdd. Основной хештег задач — #rolodex.

Travel Template — шаблон для путешествий. Не встроен в систему, потому что я мало путешествовал в жизни, поэтому просто не знаю, что важно, а что нет в этом шаблоне. Основной хештег #travel.

Work and Study Template — шаблон проектов для работы, учебы и исследований. Я сделал разветвление для исследований и учебы, потому что учеба — это процесс усвоения уже известных знаний, а исследование — процесс поиска новых знаний, открытий и понимания. Основные хештеги #work, #study и #research. Шаблон также имеет выпадающий список для статуса проекта, потому что холст парсит к себе всё, что не имеет статус Архив, Завершено и Отменено:

Выпадающий список выглядит таким образом:

Конечно, это не все шаблоны, у меня их значительно больше (есть специфические для работы), но внедрены в систему пока только эти.

Обработка данных и трекинг

Скрипт на JavaScript, запускаемый через плагин Shell commands с помощью NodeJS. Этот скрипт — основа всей моей системы. Он запускается во время запуска Obsidian, каждый час, во время отключения Obsidian и по сочетанию клавиш (и конечно, всё это легко меняется). Он читает все сообщения из Telegram-бота, куда я пишу свои идеи, что посмотреть позже и трекаю финансы и активности. И скрипт формирует файлы:

В папке Активности:
YYYY-MM.md — стандартная таблица с активностями, которая является основой для остальных.
YYYY-MM-dv.md — те же данные, но в формате, который понимает Dataview-плагин.
db-full.md — активности за сутки, т.е. сколько часов была каждая активность.
dv-full.md — тоже самое, но в формате Dataview.

У меня 5 видов активностей:

  • #сон

  • #работа

  • #отдых

  • #бодрствование

  • #бессонница

В файлах YYYY-MM бодрствование — это всё, что не является другими активностями, в db-full — это всё время, что не является сном. Чуть более подробнее с картинками про алгоритм формирования файлов я расскажу в одной из глав ниже.

Сами активности я могу трекать через Telegram бота простыми сообщениями. Например это триггер-слова для сна:
"спать|сплю|ушел спать|уснул|засыпаю|сон|sleep|отбой|выключился".

У каждой активности есть от 12 до 40 подобных ключевых фраз (я постарался записать ВСЕВОЗМОЖНЫЕ вариации, как я могу написать разные ключевые фразы, чтобы я даже спросонья не задумывался и не пытался их вспоминать), которые при следующем запуске скрипта прочитаются из Telegram-бота, в таблице создастся необходимая активность со временем Telegram-сообщения с пересчетом на мой часовой пояс.

Но бессонница активируется другим способом, когда я пишу что:
"не спал|не уснул|не могу уснуть|не смог уснуть|не заснул|лежал|ворочался" после того как написал что "ушел спать", то при следующем запуске скрипта он заменит добавленную перед этим активность #сон на #бессонница.

Чтобы начать считать #бодрствование — я просто пишу в Telegram-бота "проснулся|встал". И с момента времени сообщения скрипт будет считать окончание сна и начало бодрствования.

Существует также папка для бюджета:
YYYY-MM.md - основной файл, стандартная таблица с записями доходов и расходов, которую можно изменять и изменятся все другие файлы.
YYYY-MM-dv.md — тоже самое, что и YYYY-MM, но в dataview-формате.
db-full.md — считает все доходы, расходы и общую сумму за каждые сутки.
dv-full.md — такой же файл, как и прошлый, но в формате dataview.

Финансы я также трекаю через Telegram-бота с помощью таких сообщений:
+1000 продал скрипт
-1500 купил продукты

И файл с добавленными данными выглядит так:

И на основе всех этих данных (активностей и финансов) составляются файл 30day.md и 30day-dv.md, где высчитываются данные за последние 30 дней по всем параметрам (ради удобства построения моих графиков для холста).

По поводу Telegram бота: мне не нужно его включать, ставить его на сервер и т.д. Мой скрипт просто чекает последние сообщения от моего ID и всё. Да, данные могут не прочитаться, если я пропущу полные сутки (Telegram сохраняет историю сообщений в боте для запроса до 24 часов). Но в таком случае я могу их продублировать (в моем чате ведь всё остается) и просто подкорректировать потом время. Поэтому я целенаправленно не поднимаю бота, в том числе ради стимула ежедневного запуска своей системы.

Думаю, что трекинг финансов я сделал проще некуда (формат +число и -число можно упростить только если у меня будет доступ к API банковских приложений). Писать каждый день "проснулся", "иду спать" и иногда "не уснул", как будто отчитываешься перед родителями — я не думаю, что это напряжно, чтобы трекать #сон, #бодрствование и #бессонница. Но у меня также есть Android-приложение, которое готово, просто я ещё не внедрил его в свою систему. Оно работает в фоне, сохраняет всю активность в файл и выглядит таким образом:

В нём нет алгоритма обработки активности, он только предоставляет сырые данные. Для обработки я должен ещё продумать, как буду вытаскивать данные (либо отсылать в бота, либо брать данные через adb, либо делать синхронизацию папки) и что будет считаться за #сон. Скорее всего, сном будет считаться всё время, когда нет моей активности за компьютером и телефоном более 5 часов. В других случаях можно будет добавить #сон самостоятельно в базу. Либо я сделаю дополнительно большие кнопки для сна, бодрствования и бессонницы, но тогда нужно будет изменить и формат данных.

Я также могу трекать #работа, #отдых через сообщения в бота, но это безумно нудно, поэтому у меня есть скрипт на Python — он считает всё время, которое я сижу за компьютером (ведь я только за ним и работаю). Он висит в трее, собирает и трекает всё время, которое я сижу за компьютером и когда он простаивает. Я не смог скрипт написать на JS, а попробовал я следующие библиотеки:

  • iohook (была проблема с моей версии NodeJS, да и сама библиотека уже 4 года не обновлялась).

  • robotjs (тоже была проблема из-за версий, репозиторий заброшен также 4 года назад).

  • nut-js (создатели перешли на приватный репозиторий по подписке).

  • node-global-key-listener (поддерживал только клавиатуру).

Но и на Python вышло вполне хорошо (pynput, обычный синхронный код, запуск происходит через обычный батник и pythonw, чтобы работать в фоновом режиме):

Python скрипт чекает минуту движения и клики мышкой, и нажатия клавиш на клавиатуре. Если активность появилась — скрипт сразу уходит на 5 минут в спячку (если последняя активность не #работа — появляется #работа). Если целую минуту ничего нет — тоже уходит в спячку на 5 минут. Если через ещё две попытки по 1 минуте нет активности — с момента первой неактивности ставится #отдых. Скрипт не является точным (расхождения могут быть до 5:59 минут), но мне это не сильно важно, я больше смотрю на свои паузы (в том числе я сделал так, чтобы скрипт был максимально легким и не занимал потоки).

Ну а Telegram-бот и основной JS-скрипт также принимают сообщения подобного вида:

  • глянь %ютуб_ссылка%

  • %ютуб_ссылка% глянь

(и ещё 80 вариаций фразы "глянь").
Скрипт загружает название видео через запрос к og:title.
И "название видео | ссылка" отправляются в файл "Посмотреть Позже YouTube.md" с хештегом #watchYouTube:

Либо:

  • глянь %ссылка%

  • %ссылка% глянь

Ссылка отправляется в файл "Посмотреть Позже.md" с хештегом #watch.
У не-ютубных ссылок я не предзагружаю og:title, потому что не знаю, какие ссылки могу отправить (базовая безопасность).

А также:

  • Любое другое сообщение, которое не является активностью, финансами, ссылкой для просмотра позже и т.д.

Становится идеей с хештегом #idea и отправляется в файл "Идеи.md".

Блок Отложенное на Холсте показывает количество необработанных ссылок и идей:

Соответственно, если я удалю или закрою галочкой что-либо в этих файлах — число уменьшится.

Мое видение планирования

У меня есть отдельный файл, который я заполняю вручную. Он называется "Глобальные Цели" и в нем я вписываю всё, что является моей миссией, глобальной целью и видением на несколько месяцев и лет вперед.

Мой холст же парсит всё с хештегом #global:

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

Зачем вообще мне делать отдельно Глобальные Цели? У меня СДВГ, я очень часто бросаю какие-то планы, забываю или отклоняюсь от своих основных целей, теряю интерес и т.д. Мне необходимо планировать, делать проекты и смотреть параллельно на Глобальные Цели, чтобы ничего из моих действий им не противоречило и не уводило с этими новыми делами в сторону. Но "Заработать 1 миллион рублей" не является Глобальной Целью. "Заработать 1 миллион рублей с помощью продаж футболок на вб" — уже является. Не должно быть расплывчатой интерпретации Глобальных Целей, иначе очередное дело будет заброшено и не закончено до конца. Также я не делаю их тасками (нет квадратного блока для галочки), чтобы не было давления на психику, что я должен закрыть это как можно быстрее. Ведь такая цель может быть и на несколько лет.

В моей системе также нет понятия "долгосрочных целей". Либо я ставлю какое-то напоминание в Google-календарь и она становится "отложенной задачей или целью" (ведь моя система спарсит это в нужный день или напомнит телефон об этой задаче), либо это является частью рабочего/учебного проекта, либо долговременная цель и есть этот проект, либо это внедрение привычки, либо это взаимодействие с людьми, которое будет мозолить мне глаза в своем блоке, пока я её не выполню. Либо это заменяется понятием "Глобальная Цель".

Я не мыслю "задачами на год", "задачами на неделю". Я мыслю "проектами", "мероприятиями" и одиночными задачами. Если бы не проблемы с дофамином, то, скорее всего, система планирования на недели и на год мне бы понравилась. И у меня не парсятся задачи из проектов в холст, ссылки на проект (предпросмотр проекта при наведении на ссылку, кстати, работает) и процента выполнения уже достаточно:

В моей системе также не получится внедрить одновременно более 3 привычек за сутки. Это связано, во-первых — из-за ограничения плагина Tracker (более трех эмодзи под датами в месячном графике красиво не вмещаются), во-вторых — из-за моего СДВГ. Внедрение привычек прямо зависит от уровня дофамина, поэтому цифра 3 — для меня, в данном вопросе, потолок:

У меня был спор с моими друзьями, которым не понравился визуал моей системы: "Слишком перегружено".
В Canvas в Obsidian есть классные сочетания клавиш:
Shift + 1 — во весь экран.
Shift + 2 — приблизить выбранный блок.

Благодаря этим горячим клавишам никакого перегруза не будет. Ну а то, что всё должно быть обязательно на одном экране — потому что я не пользуюсь вторыми экранами даже на своём Android. Я не хочу держать само знание о втором экране в голове, помнить что на нём присутствует и ради чего я должен переключаться на этот экран. Ведь иначе мне нужно будет вспоминать об этом каждый раз, когда я включаю телефон и тратить на это свою энергию.

Также в папке База Знаний у меня есть знания и какие-то мысли, но они не работают с моей системой и они могут быть построены как угодно. Почему? У меня есть ответ в формате истории. Моя бабушка активно дарила мне блокноты, делала это каждое моё день рождения. Я заполнял несколько первых страниц и забрасывал их через некоторое время. Но при этом из всей этой кучи у меня есть три блокнота, которые полностью исписаны. И у этих исписанных блокнотов есть существенное отличие — записи там были не связаны с целями, задачами и ежедневными заметками. Эти записи не имели повторяющейся структуры, а только имели идею — сохранить какое-то знание в любой форме.

Ну и самое важное: моя система — про планирование, трекинг и визуализацию жизни, а не про управление личными знаниями (Zettelksten и т.д). У меня нет системы, внедренной в Единый Холст с различными промежуточными данными, из которых потом уже поставятся цели, создадутся планы и проекты (данные с хештегом #idea — это предэтап перед этими данными). И в мою систему не внедрены простые данные для сохранения какого-то знания. Всё там итак работает и без моей системы. Ведь всё просто — там много творчества и мало рутины. Но да, имеющие хоть какую-то сложности данные там имеют свои шаблоны и структуру.

Система бесконечного действия

Хочу более подробно рассказать про систему активностей, которую я разработал для своей системы. Я её называю "Система бесконечного действия" и оно имеет несколько правил:

  1. Последняя активность всегда имеет незакрытый вид (нет конечного времени и высчитанной длительности).

  2. Не может быть двух одинаковых активностей подряд. Первая активность остается, снизу неё повторы удаляются.

  3. Активность автоматически продлевается до начала следующей активности (даже если она в следующем месяце). Не должно быть пустот между активностями.

Вот как это выглядит в файле YYYY-MM.md:

Не обращайте внимания, что первый и третий столбцы (Дата и Начало) у меня имеют одинаковые даты. Я уже не помню, чем руководствовался, но, судя по всему, это имело смысл для логов, тогда я думал что даты будут разными. В этом файле мне достаточно менять только первый и второй столбец, остальное высчитывается сразу после запуска скрипта. В том числе меняется файл YYYY-MM-dv.md:


Если вы хотите вытаскивать данные для Dataview плагина — необходимо будет делать данные подобного формата, потому что Dataview видит либо YAML-данные, либо хештеги, либо текст формата выше. И если бы я не делал столбец "Конец" (четвертый) в таблице, то вытащить данные с помощью плагина из следующей строки и связать их с прошлой — было бы адом, поверьте.

30day файл выглядит таким образом (это просто собранные данные из db-full файлов активностей и финансов, но за последние 30 дней):

Соответственно 30day-dv:

Колесо Баланса

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

Вот некоторая часть кода (это код для плагина dataviewjs):

IDEAL_SLEEP_RANGE — диапазон времени, сколько идеально часов спать в сутки. Если я сплю меньше — штраф, если сплю больше — тоже штраф. Но недосып штрафуется сильнее.
IDEAL_WORK_RANGE — идеальный диапазон времени работы в неделю. Переработка штрафуется сильнее.
IDEAL_BEDTIME_RANGE — диапазон идеального времени отхода ко сну (в десятичных числах, то есть 22.5 - это 22:30). Уйти позже спать штрафуется сильнее, чем уйти раньше.
LIFE_BALANCE_WEIGHTS — веса при расчете значения Баланса Жизни. Количество сна — самое важное, 0.4, остальные (бессонница, работа, отход ко сну) по 0.2.
MAX_INCOME — значение заработка за месяц, которое будет считать идеальным в текущий момент. Т.е. можно сказать, что этот заработок — 10 из 10.
MAX_EXPENSE_RATIO — потолок затрат. Я до конца не решил, стоит ли это делать в процентах или в конкретных числах, но пока остановился на процентах от заработка.
INCOME_K — штрафной коэффициент для заработка. Линейно высчитывать баллы за финансы (например 100к — 10, 10к — 1 балл) я подумал, что будет глупо, поэтому ввел коэффициент, что если заработок становится линейно меньше — то штраф по баллам идёт значительно сильнее с коэффициентом.
HABITS — список привычек и их веса для расчета финального значения. У меня наоборот, в данный момент, вес ходьбы — 0.5, вес медитации — 0.2.
HABIT_PENALTY_FACTOR — штрафной коэффициент за невыполненные привычки. 21 выполненная привычка за 7 дней — это 10, но чем дальше от идеала — тем балл значительно ниже.
IDEAL_SOCIAL_TOTAL — идеальное количество выполненных социальных задач за неделю. Это выполненные задачи с хештегами #rolodex и #meeting. Я ввел такой параметр, потому что будь моя воля — я бы вообще ни с кем не общался (это проявление одного из симптомов СДВГ).
MEETING_WEIGHT — вес прошедшей встречи на этой неделе (это не задача, а именно встреча).
TASK_WEIGHT — вес выполненной задачи тасок с хештегами #meeting и #rolodex за прошедшую неделю. Таски, конечно же, имеют меньший вес, нежели встречи.
SOCIAL_PENALTY_FACTOR — штрафной коэффициент для высчитывания балла коммуникации.
PRODUCTIVITY_PENALTY_FACTOR — штрафной коэффициент для балла продуктивности.
EMPTY_DAY_PENALTY — штраф за день без задач.
IDEAL_WORK_TASKS_PER_DAY — идеальное количество выполненных тасок за день (#daily, #work). Здесь нет #study и #research (хотя их тоже стоит добавить, но, скорее всего, с пониженным весом).
MISSING_SLEEP_PENALTY — если нет данных по времени за сутки, то сна за этот день нет. Значение сна будет нулём. Это довольно жестко, но это стимул добавлять сон ежедневно.
MISSING_BEDTIME_PENALTY — если нет времени отхода ко сну, то ставится значение 3 ночи, как самое наказуемое.
MISSING_DAY_PENALTY_FACTOR — за каждый пропущенный день идет штраф при высчитывании. Возможно, это избыточно, потому что это примерно за это же штрафуется в прошлых пунктах, но, всё же, нужны полные данные.

Планы по улучшению системы

Чего ещё не хватает в моей системе (и это в планах внедрения):

  • Стартовый финансовый баланс (чтобы на основе него высчитывать остаток).

  • Возможность брать и давать в долг (связь с rolodex-заметками, где будет показываться кто, кому и сколько должен).

  • Другие валюты и криптовалюты. Пока всё считается в одной валюте.

  • Возможность трекать кредиты и ипотеку.

  • Учет подписок и регулярных платежей.

  • Перенос невыполненных задач на следующие дни.

  • Здоровье и всё, что с этим связано. Пока за это отвечают ежедневные задачи и проекты.

  • Трекинг сна и бодрствования через приложение, уже полностью без моего участия.

  • Внедрение путешествий (хоть шаблон и есть, но он не до конца продуман).

  • Радарный график должен показывать сравнение с прошлыми значениями.

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

  • Я нашел плагин Codescript Toolkit, который позволяет подключать модули Node и запускать JS скрипты. Есть надежда запустить скрипт на мобильном устройстве без дополнительного приложения. Но будут свои нюансы: все require обязаны быть async для мобильного устройства и built-in библиотеки (fs, os), к сожалению, на мобильном устройстве не запустятся.

По поводу мобильной версии — я сам не фанат планирования через телефон или планшет и считаю это дико неудобным из-за неудобства ввода любых данных. Но, думаю, что всё равно стоит это расширить систему и под мобильные устройства. В данный момент только мой основной скрипт не запускается на телефоне, хотя всё остальное у меня работает.

Что я хотел сделать ещё, но у меня не получилось:

  • Трекинг шагов (данные Google Fit) с минимальным моим участием.

У Google есть приложение Health Connect (с 14 версии Android встроена в систему), через которое можно получить данные физической активности. Я думал, что могу легко сделать приложение для своего личного пользования, которое будет получать данные, сохранять на телефоне и потом я их смогу как-либо обработать. Но Health Connect может отдавать данные только приложениям из Google Play и дополнительно нужно получать согласие от самого Google. Запросы от любых других приложений даже не обрабатываются (запроса даже не появляется на экране). В том числе отпадают также и данные от каких-либо умных часов, так как API у многих из них закрыты, либо используют Health Connect (есть, конечно, приложение, которое может получать эти данные через Bluetooth напрямую, но для меня это всё слишком усложняет мою систему). Google Fit API я решил даже не трогать, потому что в 2026 году оно перестанет поддерживаться.

Система на дистанции

Почему системы, подобные моей, должны работать на дистанции? Всё довольно просто:

  • Система вбирает в себя практически все аспекты жизни, таким образом не будет распыления на кучу систем. Да, у меня есть использование Google Календаря (либо мог быть и Calendar от Apple), но он работал с моей системой ещё до того, как я её создал (половину моего экрана телефона всегда будет занимать виджет Календаря).

  • Система действительно облегчает жизнь и уменьшает энергозатраты, поэтому мозг начинает делать ставку на неё, взамен прошлых стратегий по планированию жизни. У многих часто происходит другой опыт. Создается сложная система, человек получает удовольствие от её проектирования и забрасывает её через время. Ведь система, на самом деле, увеличила энергозатраты, а не уменьшила их.

  • Системы учитывает мои проблемы с рабочей памятью. Если я вбил человека в картотеку, но не записал его день рождения — она укажет мне это. Если я организовал встречу, но не заполнил данные после встречи — она будет мозолить глаза, что мне необходимо это сделать.

  • Система прямо указывает на мои ошибки: визуально, текстом и т.д. К примеру, я четко вижу, когда я сбил режим сна по графику (больше 16 часов бодрствования). Я четко вижу, что в этом месяце я заработал недостаточно или когда я пропустил внедрение привычек.

  • "Зачем тебе столько данных?" Вполне резонный вопрос, но если получение данных практически не тратит моего времени — пусть они лучше будут, как их обработать я придумаю потом. Но если данные будут добываться сложно — лучше я от них откажусь, так как это противоречит философии моей системы.

Я описал огромную статью по своей системе, но, на самом деле, использовать её очень просто — я запустил трекер активностей, запустил Obsidian, шаблон попросил ввести меня задачи, всё визуализировалось перед моими глазами и всё прекрасно, с этим работать одно удовольствие.

Заключение

А теперь коротко в цифрах:

  • 11 плагинов Obsidian.

  • 7 шаблонов Templater (+3 дополнительно измененных под кнопки).

  • 23 файла для визуализации.

  • 21 блок на холсте.

  • 2 CSS-файла.

  • 1 JS-скрипт на NodeJS для сбора и обработки информации.

  • 1 Python-скрипт для трекинга работы.

  • 1 Android-приложение для мониторинга экрана.


Я веду Telegram-канал, где описываю лайфхаки по управлению жизнью (для СДВГшников и помешанных на личной эффективности) и делюсь своими разработками. В том числе там можно будет узнать больше и об этой системе: https://t.me/sdvghack

Ссылки

1 Kofler MJ, Singh LJ, Soto EF, Chan ESM, Miller CE, Harmon SL, Spiegel JA. Working memory and short-term memory deficits in ADHD: A bifactor modeling approach. Neuropsychology. 2020 Sep;34(6):686-698. DOI: 10.1037/neu0000641

2 Firth J, Torous J, Stubbs B, Firth JA, Steiner GZ, Smith L, Alvarez-Jimenez M, Gleeson J, Vancampfort D, Armitage CJ, Sarris J. The "online brain": how the Internet may be changing our cognition. World Psychiatry. 2019 Jun;18(2):119-129. DOI: 10.1002/wps.20617