How do you do your Personal Information Management? Or, more specific:
How do you organize your contacts over multiple devices, how do you organize
your calendar, todo lists, notes, wiki, diary, browser bookmarks, shopping
list, mails, news feeds,...
Do you use Google for all this? Maybe you do. Don't you want to uncouple from
Google? Well, then... I have to tell you about the sad state of PIM for nerds.
If you want to organize your personal information without google and host
everything on your own, you will soon meet tools like owncloud, emacs orgmode
or similar tools. Sadly, all these things are not what I want. OwnCloud is
getting more buggy with every release and it is already slow as hell. orgmode
needs emacs, which is a huge tool itself and you have to learn a whole new
ecosystem. If you are a vim user like me, you don't want to use emacs.
But I'm not talking about editors here. I'm talking about PIM tools. What I do
right now: Owncloud with
vdirsyncer for contacts and
calendar organization. As said, OwnCloud is buggy and sometimes calendar
entries cannot be synced to all my devices. On Android, I use Apps to sync my
contacts and calendar as well, and they fail as well, sometimes.
I use taskwarrior, which has a sync server available. Sadly, it doesn't work
yet on NixOS, but well, that's my issue and I'm working on a solution.
Nevertheless, the Android client (Mirakel) is badly supported and does not
work that good as well.
For news, I use ttrss, which works fine and the appropriate Android App works
good, too, so no issue here. For a Wiki, I use Gollum, which works but is a
bit annoying to use because it is not that customizable. I do not use
note-taking tools at all, because they simply suck. There's no good
note-taking tool available for commandline use which integrates with the other
tools. Mails work fine with mutt, of course, but they cannot be integrated in
the wiki, todolist tools or the other tools I just mentioned. I do not use
browser bookmarks at all, because there is no CLI tool available for them.
Same goes for shopping lists.
What I want
What I want is simple: One tool, which integrates
- Personal wiki
- Personal todolist
- Personal notes
- Personal mail indexing
- Personal Calendars
- Personal Contact management
- Personal News Feeds (RSS/Atom mostly)
- Personal Bookmarks
- Personal Shopping list
- Personal Diary
in the following ways:
- I can use whatever
- text editor
- mail reader, sender, receiver
- rss reader
I want to use
- I can synchronize everything to all devices, including Android smartphones
or my Toaster
- Everything is done with open standards. Means
- vcard for contacts
- ical for calendar
- markdown for
- shopping list
- maybe YAML for todolist
- mbox or Maildir for mails
- normal Atom/RSS for news stuff
- for bookmarks, YAML or JSON would be appropriate, I guess.
- I can access all my data in the system with a text editor, if I have to
- a clean and polished (+fast) Android Application to access and modify this
- I can move/link data from one system to another. For example:
- I can link an Email from my notes
- I can link a entry from my RSS, notes, calendars to (for example) my Wiki
- I can send a shopping list from my mail client to a contact and attach a
calendar entry which links to the shopping list
- ... and so on
- All the things are encrypted (optionally)
As everything should be plain text, git would be fine for synchronization.
The sync should be decentralized at least, so I don't have to host a server at
home and cannot sync if I'm on the go. A web-hosted entity should be optional
and so should be a web interface. Having a web-UI like owncloud has is nice,
but not that critical for me.
A full encryption of the content would be nice as well, but would be kinda hard
for the Android devices, at least if the device gets lost. Anyways, my drives
are encrypted and that should be enough for the first step.
It is, for me, really important that these tools interact well with eachother.
The feature that I can send a mail to a contact and attach for example a
shopping list, which itself has a calendar entry (which gets attached as well,
if I want to), is a real point for me. Same goes for attaching a RSS entry to
a wiki article or todo item.
Another requirement would be that the tool is fast and stable, of course. Open
Source (and at best also free software) would be a crucial point to me as
well. GPLv2 would be the thing.
Do it yourself, then!
Well, developing such a tool would be a monstrous huge amount of work. I'd
love to have time for all this, especially as student. But I think I have not.
I have a lot of opinions how such a tool should work and also a lot of ideas
how to solve a certain problem which may arise, though I absolutely have no
time to do this.
I, personally, would develop such a tool in Rust. Simply because it gives you
so much power to your hands while remaining a really fast language in manner
of execution speed (speaking of zero-cost abstractions here). Though, there
would be the need for a lot of external libraries, for example for git, vcard,
ical, yaml, json, markdown, configuration parsing, etc etc. While some of
these things might be available already, others are clearly not.
Sadly, such a tool is not available. Maybe I can find time until I'm 35 years
old to develop such a thing. Maybe someone else has done so until then. Maybe
I just inspired you to develop it? Would be neat!
tags: #life #linux #mail #media #open source #programming #software #rust #tools #vim #wiki