Neden durduk yere open-source todo uygulaması geliştirdim?
Hepimiz bir şekilde todo list ya da takvim/planner uygulamaları kullanıyoruz. Oldukça uzun bir süre popüler, underground, open-source demeden tüm uygulamaları denedim, ancak teknik co-founder ve geliştirici olarak kendime yeni bir tane yazmaya karar verdim. Çünkü neden olmasın?
Her şeyden önce: Gizlilik
En temel motivasyonum, iş ya da özel hayatıma ait planlarımı yazdığım bir yerin gizli olmasına dair takıntım var. En azından üçüncü kişilerle paylaşılmadığının garantisi olmasını isterim.
Şu ana kadar kullandığım tüm uygulamalar GCP, AWS ya da belli başlı cloud providerlarda barınıyor. Bu iyi. Ancak uygulama içindeki SDK’lar, pluginler, Marketing & Analytics scriptleri oldukça fazla veri topluyor ya da bu verileri bir şekilde bu şirketler first-party olarak toplamadıkları için, doğrudan bu platformlara (üçüncü taraf) göndermiş oluyorlar.
Örnek:
Evet, bu örnek biraz ekstrem ve paranoyakça. Ancak event tıklamalarındaki element verilerinin, bu platformlara gönderilebilmemesi için de hiç bir sebep yok. Yoksa kim ne yapsın benim köpeğimin şampuanını?
Dolayısıyla yazacağım uygulama kesinlikle kendime ait bir veritabanı olmalı.
Mucize tool: Kağıt ve Kalem
Kağıt kalem ile geleneksel not tutmayı ve planlamayı seviyorum, dolayısıyla el yazımın kötü olmasından dolayı hiç bir işe yaramıyor.
Ivy Lee Metodu
Tüm bu geleneksel iş yapış alışkanlıklarımda kullandığım yöntemin Ivy Lee methodu olduğunu farkettim. Birebir aynısı. Sistem özetle şöyle işliyor.
- Kendinize günlük en fazla 6 (evet, altı) ana task verin.
- Görevler önem sırasına göre listelenmeli
- Bitiremediğiniz taskları her zaman bir gün sonrasına atın.
Ive Lee Methodu da aslında sadece bundan ibaret. Önce boş bir şablon hazırlıyorsunuz, Şekil A.
Daha sonra da taskları önem sırasına göre listeleyip, bitmeyenleri de bir sonraki güne alıyorsunuz, Şekil B.
- Diğer motivasyonum ise çok fazla cihaz kullanıyorum. Dolayısıyla hepsinin senkronize (cross-device) çalışabilmesi lazım. Bu da OK.
- Genelde plaint texte satır satır ve haftalık olarak (Week 1, Week 2…) şeklinde yazdığımı farkettim. Yani tüm sistem haftalık olmalıydı.
- Deep Work ve The Stoic Mind kitapları iş takip ve üretkenlik açısından beni en çok etkileyen kitaplar. Dolayısıyla tüm sistemi dikkat dağıtıcı tüm öğelerden arındırarak yapmalıydım. Taskların reminderı, ek sub taskları vs olmamalıydı.
Mevcut toolların sorunu neydi be nankör kedi?
Uzunca bir süredir Obsidian’ından Apple Notes’una kadar tüm kullanım alışkanlıklarıma bakalım:
Obsidian
Tam olarak advanced ve markdown formatında not tutmak için mükemmel. Open-source.
Buradaki en büyük sorun Apple Cloud ile kullanıldığında, Vault’larda cihazlar arası senkronizasyon kayıyor ve dosyaları overwrite edebiliyor.
Notion
Database yapısı harika. Templateler ile güzel bir proje oluşturulabilir. Şirket için kullanıma da gayet uygun. Burası da Cron’u satın aldıklarından sonra takvim bağlantılarıyla, yeni adıyla Notion Calendar birlikte asla sistematik çalışmıyor. Yani basit bir haftalık planlama için, Google Calendar bağlantısı + Notion Database + Todo Template ve sürüsüne column (kolon) ve properties kurmak zorundasınız.
Ya da doğrudan hazır olanlardan seçebilirsiniz ama bunlar da biraz basit.
Ayrıca bir şeylerin Kanban ya da Tablo görünümünde yapılabiliyor oluşu, onu üretken kılmaz.
Apple Notes
Amatörü eğlendirir diye düşünmeyin, Reminder ve Calendar ile birlikte harika çalışıyor. Şaka şaka, reminder, calendar ve notes arasında bağlantı kurabilmek için Shortcuts ya da automation yapmanız gerekiyor.
Google Tasks
Bu gerçekten de amatörü eğlendirir. Google Calendar ile uyumluluğu, hızlı task açma/kapama özellikleri şahane.
Fakat en büyük problemi: Search yok. Evet, tasklarda arama yapılmıyor. Ve insan gerçekten hayret ediyor.
Yani temelde bir search engine şirketinin productivity toolunda böylesine basit bir feature, -eminim bir bildikleri olduğunan eklenmemiştir — oldukça ironik.
Tweek.so
Bu tam olarak aradığım şeydi, fakat burada da taskların altındaki subtask yapılanması işleri bozdu.
Çünkü subtasklar işe yaramaz, overwhelming yaratır.
Tasklar basit ve yapılacak işi belirlemeli. Versionlama, subtask, milestone yapmak istesem zaten Git ile de yapabilirdim. Aynı durum Apple Notes için de geçerli.
Bu yüzden Next JS, Supabase ve ShadCN kullanarak tüm problemlerime çözüm sunan bir weekly planner/ajanda ve günlük task karışımı bir open-source uygulama ortaya çıktı: Eggenda 🍳
En temel özellikler:
- Open-source
- Task havuzundan haftalık planlarınıza göre dağılım yapabiliyorsunuz
- Tamamlanmamış taskları bir sonraki güne atayabiliyorsunuz.
- Mobil için PWA odaklı tasarım (Cihazlar arası kullanım)
- Keyboard friendly
- Taska doğrudan URL yapıştırdığınızda, websitenin başlığını otomatik task başlığına dönüştürüyor. Bu en çok ihtiyacım olan şeydi. Nedense Pocket gibi read it later uygulamalarında bu tam olarak olmuyordu.
Bu yaklaşıma ‘Dikey Hiyerarşi’ adını verebiliriz:
Nihayetinde geleneksel todo uygulamalarından farklı olarak, subtask yapısı yerine yorum bazlı bir sistem tercih ettim. Bu yaklaşım:
- Görevleri parçalamak yerine bütünsel görmeyi sağlıyor
- Overwhelm/burnout olma riskini azaltıyor
- Geleneksel kağıt-kalem + dikey yorum deneyimi
- Github Linki
- LinkedIn → linkedin.com/in/raufsamestone