musicmatzes blog


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 khard, khal, 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
    • wiki
    • notes
    • diary
    • 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 data.
  • 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

Some people always tell me that “mailinglists are so 1990” or something. And yes, of course, email is an old protocol and everything. But that does not mean that it is bad.

Here is why I love mailinglists

I get a lot mail. About 1k mails per day, whereas most of them are mailinglists. Actually, the most of them are from the linux kernel mailinglist and I automatically drop them into a folder where I do not look at that often. But when I need to, I can.

But that's not the point of this post, actually. This post is about why I love mailinglists and think mailinglists are a better way of communication compared to, for example, the IRC chat.

When writing in IRC, you have to type quickly, depending on how many people are in the room and talking at this moment. You can hold discussions with several other people, but as soon as several people talk at the same moment but about different topics, things get nasty. That's not the case on a mailing list.

A discussion often starts with a question, a suggestion or maybe an announcement. Then, people comment on it, the discussion beginns. Because mails are persistent in a way chats will never be, one can talk his time to formulate a response. Discussions are seperated in subthreads, which is way more convenient than talking in IRC, getting from one point to another but never beeing focused on the discussion as one discussion but a chain of.

Also, on mailing lists one can focus on single points others make in their statements by quoting them in a really convenient manner. One can remove parts of the statements of others when replying, which forces everyone to focus on the actual points and not the stuff around it, which may be relevant, but often is not. When people talk over a mailinglist, you can read that afterwards to get a clue what is going on. I often search mailinglists for solutions of my problems rather than wikis or something, where problems are generalized and often do not match with my actual problems.

And, of course, if a mailinglist is open, one can post to it without beeing subscribed, which is really a good thing if you want to solve a problem which occours once but never again. Example: I try to configure my mail client at the moment, my offlineimap configuration, actually. I had several issues (related to eachother, of course), so I posted on the mailinglist for offlineimap, where people help me. After the problem is solved (it is not by now...) I will forget this mailinglist again, as I'm not subscribed to it. I don't care afterwards about offlineimap, because it should just work for me and that's it.

So, these are my points why mailinglists are a great tool for getting problems solved, doing discussions and the like. Please note that I do not think the IRC should be abandoned in favour of mailinglists. I love writing with people in IRC, too. But for solving problems, mailinglists are way better for me.

tags: #mail #mailinglists #social #irc #chat