Co musisz wiedzieć
Ten wpis nie został opublikowany, a już mocno się zestarzał — jak żaden inny wpis na blogu.
W jednym tygodniu korzystałem z vikunji, następnie przeskoczyłem do własnej wersji Nextclouda. Ostatecznie wylądowałem u wujka Google. To tak w dużym skrócie.
W ciągu kilku ostatnich tygodni zebrało się sporo notatek. Z tego powodu zastanawiałem się, w jakiej formie to opublikować. Skoro zestarzało się, to myślę, że nie ma sensu rozbijać na odcinki a jedynie co, to wprowadziłem oznaczenia typu T:XX
gdzie xx
to nr tygodnia.
Dorzucam też spis treści, co było łatwiej nawigować po długim wpisie ;)
Spis treści
Rozwiń
Geneza (T:10-11)
W lutym tego roku nieświadomie zawaliłem sprawę z przedłużeniem rocznej subskrypcji Todoist. Do niedawna płaciłem rocznie 36 USD i dalej bym płacił, gdybym nie ignorował końca ważności karty płatniczej (taki prepaid ).
Okazało się, że w międzyczasie Todoist podniosło cenę do $48, co skłoniło mnie do zastanowienia się nad ponownym wykupienie wersji PRO.
Czy wciąż potrzebuję Todoist ?
Wydatek nie jest wielki, mając na uwadze przydatność narzędzia, ale była to okazja do zadawania następujących pytań:
Czy dalej potrzebuje premium? Jeśli tak, to dlaczego? Czy może wystarczy darmowa wersja?
Tendencyjne pytania i troszkę niezrozumiałe dla osoby, która korzysta od lat z Todoista, testując po drodze Nozbe ↗, ClickUp1 czy Notion ↗.
Te pytania są zasadne, gdyż od pewnego czasu miałem wrażenie, ze Todoist strasznie mentalnie mnie ciążył. Niechętnie podejmowałem się zaplanowanych zadań, chociaż i tak działałem na tzw. autopilocie.
Cechy, które lubię w Todoist
W Todoist spodobało mi się wiele rzeczy, których na próżno było znaleźć u konkurencji, głównie rozpoznanie kontekstu w języku polskim. Wystarczyło napisać codziennie w dni robocze o 8
a utworzyły się zadania cykliczne w dni robocze o 8:00. W zadaniach z łatwością można było nadawać priorytety (p1, p2, p3, p4
), przypisać etykiety (tagi) (@
), dodać do projektów (#
) a od niedawna określić blok czasowy.
Jakie zadania miałem?
W wolnym czasie przeanalizowałem wszystkie aktywne i archiwalne projekty oraz zadania (i pod-zadania), usuwając po drodze nadmiarowe / bezsensowne pozycje. Spora grupa zadań ma charakter cykliczny (co miesięczny / co roczny), pełniącej rolę przypominajek i te jako tako można przenieść jako wydarzenia do kalendarzy.
Druga grupa to tzw. zadania projektowe, które są unikalne i w zależności od widoku, albo były zamknięte albo przenoszone między kolumnami (klasyczne GTD czy tez ZTD).
Trzecia grupa to taki Inbox
, do którego wrzucałem wszelkie pomysły / linki / zadania, które podlegały co tygodniowym przeglądom 2
Rozwiązania open-source
Na rynku jest sporo opcji do wyboru (sam wymieniłem wyżej) i … podszedłem do tego nieco ambitnie i eksperymentalnie.
Mając okazję raz na kilka(-naście) lat, postanowiłem przetestować rozwiązania open-source oraz self-hosting3. Znaleźć taką alternatywę na wzór Todoist nie było łatwym zadaniem (projektem?).
Po przejrzeniu Awesome Selfhosted ↗ wybrałem Vikunja ↗ jako pierwsze, funkcjonalnością mocno zbliżone do Todoist. Posiada importer projektów i zadań z Todoist, co jest ewenementem (co prawda poprawnie działa tylko na gałęzi rozwojowej).
Vikunja
Kilka istotnych cech:
- Vikunja pozwala na organizowanie zadań w projektach, podprojektach i hierarchicznie grupowanie powiązanych elementów;
- Vikunja pozwala na powtarzalne zadania (recurring tasks)
- Umożliwia współdzielenie projektów z innymi użytkownikami lub zespołami
- umożliwia przypisywanie zadań,
- ułatwia śledzenie postępów
- Można wyświetlać zadania w klasycznym widoku listy, wykresie Gant ta, tabeli lub na tablicy Kanban, w zależności od potrzeb
- Posiada usługę
webDAV
dzięki czemu jest możliwość synchronizacji między serwerem a klientami.- W tym przypadku Vikunja jest takowym serwerem (oraz klientem w wersji web)
- Klientami są aplikacje Thunderbird ↗, GNOME Calendar ↗, tasks.org ↗ czy Errands ↗
Uruchomiłem projekt na dockerze 4, zaimportowałem zadania z Todoista (po wielu podejściach) i zacząłem testować. O ile mobilny Tasks.org sprawdza sie rewelacyjnie, o tyle wersja web Vikunji — abstrahując od wyglądu — mocno mnie rozczarowała.
Jest sporo błędów zarówno w UI jak i przy UX (np. ustawiasz datę — podstawia ci dzień 00-00-0000), przez co nie mam do niej zaufania.
Zdaję sobie sprawę, że to rozwojowy projekt, dlatego całkowicie nie porzucam go i będę obserwował kolejne update’y. A z racji, że jest to open-source
, to może sam dołożę cegiełkę.
Nextcloud Tasks + Nextcloud Desk
Grzegorz podsunął pomysł z użyciem Nextcloud Tasks ↗, przy którym zatrzymałem się na dłużej, ponieważ sam mam kilka instancji, które do tej pory traktowałem bardziej testowo / eksperymentalnie.
Tym razem podszedłem nieco poważniej, wydzielając fragment domowego serwera na tego typu zabawę. Było trochę kombinacji, zrobiłem research w kilku kwestiach i otrzymałem pewien obraz.
Tydzień temu pisałem tak ↗:
Od kilku godzin testuję nextcloud + tasks.org jako zamiennik Todoist.
Wszystko jest w porządku i elegancko, ale jest problem z powtarzaniem zadań.
Nextcloud na froncie tego nie obsługuje, ale w aplikacji Tasks.org możesz utworzyć to jako zadanie cykliczne. Problem z tym, że te zdarzenia w Nextcloud są traktowane jako zadania i kiedy oznaczę je jako ukończone, już się nie powtarzają.
Po GitHubie zorientowałem się, że ktoś poruszył temat powtarzających się zadań, ale utknął na PR. Możliwe, że temat ruszy jeszcze w tym roku.
Pojawił się jeden problem: brak obsługi załączników, które dodaję z poziomu mobilnego tasks.org. Sam NXC Tasks nie obsługuje (jeszcze) takich akcji.
Testy z Nextcloud
Od dłuższego czasu chciałem zaprzyjaźnić się z Nextcloudem i wdrożyć go w kilku procesach automatyzacji (tak, da się ;-)).
To był właściwy moment, żeby podstawić kropkę nad i, optymalizując swój productivity
system.
- Cykliczne zadania z Todoist przerobiłem na wydarzenia w kalendarzu.
- Zrobiłem to dość prosto: poprzez import
*.ics
kalendarza Todoist, dodanego w kalendarzu Google’a do kalendarza w Nextcloud.
- Zrobiłem to dość prosto: poprzez import
- Projektowe zadania dodałem do Nextcloud Desk.
- Pozostałe zostawiłem w formie listy zadań do dalszej weryfikacji.
Nie jest to intuicyjne rozwiązanie, ale zobaczymy, jak się sprawdzi w codziennych sprawach. Nie ukrywam faktu, ze czuję lekki niepokój związany z brakiem stabilnego i sprawdzonego systemu. Z drugiej strony to musiało się tak stać; nudząca rutyna, ta niechęć do podejmowania zadań spraw czy zadań.
Zawsze mogę wrócić ze skulonym ogonem do Todoist, który przestawiłem na tryb wakacyjny i czeka z pełną listą zadań do zrobienia.
Problemy z Nextcloud 28 (T:12)
Początek tygodnia nr 12 przywitał mnie wymuszonym restartem domowego ThinPC po 200+ dniach działania bez przerwy. Sytuacja była o tyle dziwna, że nie mogłem zatrzymać kłopotliwego kontenera LXC ani dokonać re-boota z poziomu systemu; jedynie hard restart pomógł.
Gdy wszystkie kontenery wstały wraz z usługami, początkowo nie zwróciłem uwagi na problem z Nextcloud. Na drugi dzień przeglądam kalendarz a tam puste wpisy. Podobnie jest z zewnętrznymi kalendarzami, które korzystają z protokołu calDav
. No pięknie, nigdzie nie ma informacji. Mógłbym przywrócić backup, którego nie zdążyłem zrobić a miałem zaplanowane w tym konkretnym dniu.
Domowa instancja
Technicznie, domowa instancja Nextcloud działała od tygodnia na bazie dockera z wystawionymi portami i volumenami. Baza danych raczej działała, pliki fizycznie istniały.
Coś się popsuło po restarcie, próba dodawania nowych wydarzeń kończyła się niepowodzeniem. Po kolejnym restarcie samo się naprawiło
- można było zrobić nowe wydarzenie ale wciąż nie było wcześniej utworzonych.
Na nextcloudowym pulpicie jest widżet z nadchodzącymi wydarzeniami i tam wszystko co do jednego było dostępne. Zalogowałem sie do bazy i rekordy wciąż tam były. Pozostałe moduły (Task / Desk) działały bez większych problemów.
Przejrzałem logi i nic niepokojącego nie znalazłem. Nie mam pojęcia co się mogło stać.
Domowa instancja była eksperymentem, szukaniem właściwych rozwiązań do moich potrzeb (np. zapis waznych plików, przychodzących mailem - faktury, rozliczenia) bez udziału pośredników. Doszła też zabawa z migracją zadań i wydarzeń w kalendarzu, co dodatkowo wpisała się w trend degoogling
.
Testy z Kalendarzem Google
Znów znalazłem się w kropce. Rozwiązania, które były w pewnym stopniu alternatywą, okazały się średnie. Nie pozostało mi nic innego, jak przetestowanie rozwiązań, które miałem pod ręką, a nie chciałem z nich korzystać.
Jako użytkownik Androida i Pixela, do dyspozycji miałem konto Google z całym pakietem. Po dłuższym czasie uznałem, że Kalendarz Google’a działa tak, jak powinien i nie mam zastrzeżeń.
Zadania w Google
Za to dużym zaskoczeniem były Zadania Google’a, na które dotąd nie zwracałem uwagi a praktycznie wypełniają lukę, jaka powstała po “zawieszeniu współpracy” 5 z Todoist.
To, czego brakowało w Nextcloud Tasks a są w Zadaniach Google, to możliwość ustawiania powtarzalnych zadań.
Wprawdzie nie ma możliwości ustawiania priorytetów, obsługi załączników czy dodania tagów (konteksty), to mimo wszystko recurring
jest niezwykle istotnym ficzerem.
Tworzenie zadania jest bardzo proste:
- z poziomu kalendarza google można dodać jako nowe wydarzenie i wybrać typ
zadanie
- Na androidzie można dodać widget i z jego poziomu można tworzyć nowe taski
- W webowym kalendarzu jest sidebar z prawej strony, z tego poziomu można zarządzać zadaniami oraz z górnego paska przełączyć widok
Kalendarz <> Zadania
Synchronizacja w Ubuntu
Na co dzień korzystam z Ubuntu (GNOME), więc aplikacje są dedykowane pod tą dystrybucję. Jak na Google przystało, to nie ma dedykowanych aplikacji do zarządzania wydarzeniami i zadaniami.
GNOME Calendar + Endeavour
Na szczęście jest opcja synchronizacji (zapewne po API) dzięki Konta Online
, które synchronizują zarówno wydarzenia (systemowy GNOME Kalendarz) jak i zadania (Endeavour ↗ czyli taki GNOME Todo). To w zupełności wystarczy.
Gnome Shell: Task Widget
Dodatkowo dzięki rozszerzeniu Gnome Shell Task Widget ↗ możemy wyświetlać utworzone wcześniej zadania. Aby z niego skorzystać, trzeba doinstalować ↗ pakiety:
sudo apt install gir1.2-edataserver-1.2 gir1.2-ecal-2.0 gir1.2-ical-3.0
Zasadniczo jest jedna wada: brak możliwość tworzenia zadań z poziomu tego dodatku.
Projekty w Obsidian.md
Przy okazji projektów, postanowiłem przetestować jeszcze jedno rozwiązanie, na które natknąłem jakiś czas temu.
Dzięki wtyczce Kanban ↗
- jest możliwość transformacji notatki w tablicę kanbanową i dodawanie do nich zadań
- każde zadanie może być oddzielną podlinkowaną zwykłą notatką (w oparciu o szablony)
Co ciekawe, nie ma tutaj żadnych działających usług w tle, wszystko opiera się na plikach markdown. Kazdy taki plik zawiera sekcję metadanych czyli frontmatter
, znajdująca sie na początku pliku, oddzielona od reszty wpisów 3 myślnikami ---
Do tej pory działałem w Todoist, wykorzystując widok board
z dostępnych list
, board
a od niedawna calendar
.
Zdarzało się, ze często gubiłem wątki / notatki między różnymi, nie wiedząc gdzie właściwie znaleźć informacje. Sporo pracuję, tworząc notatki mocno robocze do wielu tematów zawodowych czy prywatnych.
Zatem wtyczka Kanban powinna pomóc przy ogarnięciu bałaganu informacyjnego.
Taką mam nadzieję.
Jedyny mankament to brak możliwości ustawiania powiadomień o zbliżającym się deadline. Nie jest to jednak priorytet dla mnie.
Podsumowanie
Piszę podsumowanie z perspektywy kilkutygodniowych testów — w głównej mierze opartych na rozwiązaniach Google.
Okazuje się, ze Zadania Google działają bardzo dobrze w stosunku do tego, co oferuje Nextcloud Tasks. To dobra i zła wiadomość. Dobra, bo jest to dość solidna alternatywa, dostępna za darmo 6 zarówno z domyślnego konta gmail jak i korporacyjnych Workspace. Zła — bo zamiast degooglingu, mamy powrót do bazy.
Najprościej byłoby pozostać przy Todoist, zapłacić za wersję PRO i nie przejmować się z innymi alternatywami. Szczególnie że przez prawie dekadę pracy z Todoist nie było żadnych problemów. Tyle to, co już wspomniałem na początku:
Todoist strasznie mentalnie mnie ciążył. Niechętnie podejmowałem się zaplanowanych zadań, chociaż i tak działałem na tzw. autopilocie
Szukałem sposobu na odświeżenie rutyn związanych z zadaniami i projektami.
To był dobry moment na:
- w pierwszej kolejności przeprowadzenie gruntownej restrukturyzacji wszystkich otwartych tematów, projektów;
- organizacja nowej przestrzeni na zadania, powtarzalne wydarzenia oraz projekty
Co dalej?
Pomimo niechęci względem Nextcloud Tasks, w przyszłości dam jeszcze jedną szansę. W międzyczasie zainstalowałem wersję NextcloudPI - dedykowane dla Proxmox - nieco odbiegająca od wersji dockerowej. Być może jest to rozwiązanie dużo bardziej stabilne? Pokrywałoby to z sugestią Grzegorza ↗ odnośnie instalacji Nextcloud poprzez sudo snap install nextcloud
.
Dostałem także sugestię ponownego testowania Nozbe, które przeszło sporo zmian od ostatniej wizyty. NO i klasyczna zachęta do ponownego testowania Clickupa, który posiada wszystko to, co bym potrzebował - łącznie z tym, czego nie chcę ;-).
Wyszła całkiem niezła analiza podjętych prób i błędów, których nie chciałem ale (nie)stety popełniłem.
Czy warto było przepalić czas na takie zabawy? I tak i nie. Nie, bo to kolejne rzeczy, które raczej nie przydadzą się w mojej karierze zawodowej (chociaz kto to wie?). Tak, bo jeszcze bardziej wkręciłem się w świat własnego homelaba, bycia sysadminem czy też podbicia skillsów jako devops / analityk / tester - zwał jak zwał :).
Podobny dylemat miałem rok temu - po podwyżkach Stravy ↗. Wtedy słusznie uznałem że przepłacałem za coś, z czego faktycznie nie korzystałem. Do dziś - poza nielicznymi wyjątkami - podtrzymuję decyzję, mimo korzystnych zmian cennika dla przeciętnego polskiego Kowalskiego.
Footnotes
-
Nie pisałem o tym na blogu, będę musiał kiedyś wrócić do nich. ↩
-
Załóżmy, że takowe przeglądy robię raz na miesiąc. ↩
-
Selfhosting polega hostowaniu i zarządzaniu aplikacjami na własnych serwerach, zamiast korzystania z dostawców usług typu SaaS, co jest świetną zabawą ↩
-
Jak będzie okazja, to opublikuję swoją wersję
docker-compose.yml
↩ -
Jeśli tak można ująć chęć znalezienia alternatywy ↩
-
Nie jest to do końca prawdą, bo Google lubi handlować danymi. ↩