Mój system notatek — jak to działa i dlaczego tak

Używałem już chyba wszystkiego, co da się używać do robienia notatek — od papierowych zeszytów, przez notatki w plain text, po całą masę aplikacji: Evernote, OneNote, Keep, GoodNotes, Joplin, Notion, Asanę, Apple Notes, Anytype, Logseq i kilka innych.

Próbowałem pisać w Markdownie, w Visual Studio Code, w Neovimie, a nawet w Emacsie. Każdy z tych systemów miał swoje plusy i minusy, swój pomysł na workflow, który dało się mniej lub bardziej dopasować pod siebie.

A jednak — żaden nie został ze mną na dłużej.

Po czasie zrozumiałem czemu: za bardzo próbowałem dopasować siebie do narzędzia, zamiast odwrotnie. Patrzyłem na funkcje, zamiast na to, po co właściwie robię notatki.


Od potrzeb do założeń

Usiadłem więc i pomyślałem, jak to u mnie faktycznie wygląda: co zapisuję, dlaczego to robię, kiedy wracam do notatek i czego wtedy potrzebuję.

Z tego wyszło kilka prostych założeń, które mój system musi spełniać:

  • Markdown – prosty, otwarty format, który mogę otworzyć w czymkolwiek, nawet w notatniku.

  • Local > Online – notatki muszą działać zawsze, nawet bez internetu.

  • Crossplatform – używam Windowsa, Linuxa i iOS, więc wszystko musi się synchronizować między nimi.

  • Możliwość rozbudowy – potrzeby się zmieniają, więc system też musi się dać rozwijać.

  • Backup – lokalnie to fajnie, ale musi być kopia.

Na początku chciałem, żeby to wszystko było open source, ale finalnie wygrała prostota i brak tarcia w codziennym użyciu.

Obsidian jako rdzeń

Jako bazę wybrałem Obsidiana. Nie jest open source, ale spełnia wszystkie najważniejsze rzeczy.

To w gruncie rzeczy rozbudowany edytor Markdown, który zapisuje notatki lokalnie w strukturze katalogów. Dzięki temu wszystko jest czytelne nawet bez samego programu.

Do tego dochodzą wtyczki — i to często open source’owe. Pozwalają zmieniać wygląd, dodawać funkcje, modyfikować zachowanie programu. O mojej konfiguracji napiszę osobno, bo to temat na osobny wpis.

Synchronizacja – Syncthing

Vault (czyli katalog z notatkami) mam na komputerze z Windowsem i laptopie z Linuksem. Trzeba było to jakoś zsynchronizować.

Obsidian ma swoje rozwiązanie — Obsidian Sync. Działa od razu po zalogowaniu, kosztuje kilka dolarów miesięcznie i po prostu działa. Dla wielu osób to idealna opcja.

Ja jednak wolę wiedzieć, co się dzieje pod spodem, więc wybrałem Syncthing.

To otwartoźródłowy program do synchronizacji plików między komputerami. Działa w czasie rzeczywistym, szyfruje wszystko i nie wymaga żadnych VPN-ów. Konfiguracja? Z poziomu przeglądarki — prosto i wygodnie.

Jedyny minus: jeśli napiszę notatkę na jednym komputerze, wyłączę go i odpalę drugi — notatka nie pojawi się, dopóki oba nie będą online. To potrafi czasem zrobić konflikt plików (Syncthing je rozwiązuje, ale lepiej ich unikać).

Rozwiązanie? Trzecie urządzenie, które jest zawsze włączone — mój mały domowy serwer.

Domowy serwer – serce całej synchronizacji

Serwer złożyłem z poleasingowego thin clienta. Zainstalowałem na nim Proxmoxa (system do wirtualizacji oparty na Debianie). Syncthing działa tam jako kontener LXC, który współdzieli katalog vaulta z hostem.

Dzięki temu mam synchronizację, która po prostu działa — a przy okazji mogę dorzucać kolejne kontenery z nowymi funkcjami w przyszłości.

Krótkie notatki – Google Keep

Dłuższe notatki robię tylko na komputerze, ale czasem chcę zapisać coś błyskawicznie – listę zakupów, wymiar szuflady, pomysł z autobusu.

Tutaj najlepiej sprawdza się Google Keep. Szybki, prosty, działa wszędzie.

Mógłbym użyć mobilnego Obsidiana z wtyczkami, ale konfiguracja (szczególnie na iOS) potrafi być irytująca, a po aktualizacjach często coś się wysypuje.

Zamiast tego wykorzystałem serwer z Proxmoxem. Postawiłem tam kontener z prostym skryptem w Pythonie, opartym o gkeepapi – nieoficjalne API do Google Keep.

Co 10 minut skrypt pobiera nowe notatki, zapisuje je w Markdownie i wrzuca do vaulta. Potem resztą zajmuje się Syncthing.

W efekcie — krótkie notatki z telefonu same pojawiają się w moim systemie.

Backup – zasada 3–2–1

Na koniec – backup. Trzymam się klasycznej zasady 3–2–1:

  • 3 kopie danych,

  • 2 różne nośniki,

  • 1 kopia poza domem.

Do tej „zewnętrznej” kopii wykorzystałem Google Drive. Markdown zajmuje mało miejsca, więc to wystarczy.

Na kontenerze z gkeepapi mam rsync, który co jakiś czas wysyła przyrostową kopię vaulta do chmury.

W efekcie mam system lokalny, zsynchronizowany, z backupem i pełną kontrolą nad notatkami.

Na koniec

Nie wiem, czy to rozwiązanie jest idealne. Pewnie nie. Ale działa dokładnie tak, jak chcę – bez zbędnych komplikacji, bez uzależnienia od jednej platformy i z pełną kontrolą nad tym, co zapisuję.

Nie jest to przepis na idealny system. To po prostu mój sposób na to, żeby przestać szukać i zacząć notować.

Ostatnia aktualizacja: