Alsuren

December 2, 2010

Synchronisation

Filed under: collabora — alsuren @ 7:52 pm

I’ve been looking for a task-management app which could sync with my phone for *months* now without much luck. I tried making GTG sync with RememberTheMilk, and using nolazy for a while, but it was mostly just annoying and got in my way so I gave up.

I’d seen a lot of the guys in the office using Tomboy to organise their thoughts/todo lists, and being pretty effective at keeping on top of their lives, but I didn’t want to adopt a solution that would leave me helpless when I didn’t have my laptop with me. A great thing about Maemo is that there are a lot of ports/clones of desktop apps available, so I set about planning a few of my projects using Tomboy on the desktop and Conboy on my phone.

Then it came to the problem of syncing the two. Conboy suggests that it has the ability to sync notes with your desktop via Ubuntu One, but I decided against that solution. Also, I found out that Tomboy and Conboy use the same format for their notes, so you can sync the files without the help of either application.

The guide I found to sync the files uses a dedicated sync program called unison, which isn’t packaged for maemo, and sounds a bit dubious. Also, I use git to sync files between multiple computers *all the time* for my day-to-day job, so why can’t I just use that instead? It turns out that git *is* available for the n900 (yes: Maemo is awesome) but it is designed for more complicated workflows than “sync these files between here and here”, so I had to hack up a little script to make the job a bit easier.

At the moment it’s more “proof-of-concept” than anything production quality, so I don’t know if it will be useful to anyone who doesn’t already know how to use git, but the idea is there for people to try out and improve on as they see fit.

Current obvious limitations are:
* It just complains loudly and leaves you in the hands of git-rebase if there are any conflicts (should probably fire up mergetool in a temporary directory if I want to handle conflicts *properly*).
* You have to use git init . in both places to set up the git repositories before you try to sync (might add a –init option at some point, but haven’t done so yet).

Advertisements

9 Comments »

  1. Modifying *.note files while Tomboy is running is not supported unless you enable the NoteDirectoryWatcher add-in. The add-in has some bugs though, so please report any issues you run into. If you don’t use the add-in, you will absolutely lose note data.

    Another choice you have instead of U1 is to set up a Snowy server or join the Tomboy Online alpha.

    Comment by Sandy — December 2, 2010 @ 9:15 pm

  2. I think I trust git more than I would trust some misc pile of python, django and apache. There are far too many moving parts there if you ask me.

    I like the elegance of using git for everything. I’d be happy to use it for my calendar too if it was easy enough. If someone wanted to write a mergetool that’s tailored to tomboy notes or ical files then they’d have my support.

    Comment by alsuren — December 2, 2010 @ 10:16 pm

  3. I hope you also trust the developers of the software you’re using. 😉

    Comment by Sandy — December 2, 2010 @ 11:34 pm

  4. I mostly use Toodledo when not using pen and paper, because it does daily email reminders of your pending tasks. On the phone, the mobile interface is reasonably usable – http://www.toodledo.com/slim

    Comment by Arun Raghavan — December 3, 2010 @ 8:56 am

    • @Sandy: I realise that I may have been a bit insulting/dismissing of your project there. Sorry. I did take a look at Snowy, but I didn’t like the idea of shoving extra load onto our sysadmins, and I’m a bit paranoid about data that isn’t mine. I try to avoid considering anything about myself “private”, so I have no problems with using web services for my own personal data, but other people’s privacy and secrecy are things that I am very careful about (something I plan to write a blog post about at some point). I’d hope that if Tomboy/Conboy were leaking notes to some third party then it would become obvious from looking at the source code, and would have made it to the front page of LWN by now. Unfortunately, it’s impossible to make any such assertions about any kind of web app that isn’t under your control. This was a contributing factor in me dropping RememberTheMilk. Please don’t take it personally.

      @Arun: I found the reminder messages from remember the milk really annoying, but I think that’s because I was using them for too many tasks. I’ve settled on using events in my calendar for tasks that need to be done by a certain date, because I look at the calendar widget on my n900 regularly enough to see them approaching a few days off, and then when I’ve done them and they’re still on my calendar I get to feel good about myself (rather than tasks disappearing as soon as I’ve done them).

      I love how everyone has a different approach to task management, and they’re all equally valid. I have always used paper for solving complicated problems in the short-term, but I’ve never had much luck using it as a long-term memory aid. I think that Tomboy is the closest thing to paper notes that I’ve found (it doesn’t try to be clever and get in your way like gtg et al do). Once you add Conboy to the mix, you get something with the portability of paper that’s impossible to lose and actually legible (unlike my handwriting).

      Comment by alsuren — December 3, 2010 @ 10:48 am

      • @alursen I should have been a bit more clear. I only meant you should trust me with regard to the dangers of syncing *.note files directly. I totally agree that setting up a web app is a big maintenance burden, and trusting a third-party service with your data is not always acceptable (that’s why we’re working on client-side encryption for web sync).

        Comment by Sandy — December 3, 2010 @ 12:52 pm

  5. FWIW, I’ve tried Tomboy, RTM and Toodledo and not really liked any of them for my own task management. I (try to) use a fairly complete, traditional form of GTD, incidentally. Toodledo has everything I need in theory but I didn’t get on with the UI much, especially the ‘slim’ version (on a Nokia 5800 it’s not really usable).

    If you think finding decent task management on a Maemo phone is hard, try finding a task manager for Symbian! I’ve reverted to pen and paper now – a (fake) moleskine notebook which lives in my manbag at all times. Until I get a better phone this is what I’ll be sticking with – my handwriting’s terrible too, but that doesn’t actually matter in practice.

    YMMV of course – as you said, everyone has a right to their own workflow.

    Comment by Stuart — December 4, 2010 @ 1:08 pm

  6. Cool. I’m a big git fan, but I’ll planning to drop my temporary Unison hack soon once I get Snowy set up, to sync using the actually Tomboy sync mechanism. There are some minor differences between the way Tomboy and Conboy writes out to file, which haven’t caused any data loss, but some annoyances for sure.

    Comment by Blaise Alleyne — December 6, 2010 @ 11:13 pm

    • @Blaise: I’ve noticed a few of these annoyances that you speak of:

      The most pointless diferences that I’ve found are the UTF vs utf at the top of the file, and the timestamps at the bottom. I think that the solution to these problems would be to write a git filter (smudge and clean ftp://ftp.kernel.org/pub/software/scm/git/docs/gitattributes.html) to ignore these changes.

      There is also a crazy bug where one of my notes is not visible in Conboy, but still exists in Tomboy and on the filesystem. Any ideas what might be causing that?

      @Sandy: I also noticed that the tomboy Note Directory Watcher causes changes to be written to the working directory in the middle of a rebase (which breaks *everything*) so I decided to do ignore performance the merge in a temporary directory.

      @Blaise: @Sandy: If you have any other hints that might be useful in helping me to write a git filter, please tell me. It will probably take me a few weeks to get around to it, so no rush (git mergetool seems to be pretty easy to use now that I’ve resigned myself to using a tmpdir, so I don’t have much motivation to fix it properly).

      Comment by alsuren — March 1, 2011 @ 4:54 pm


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: