• Skip to content
Mapping Nozbe
Mekk's programming notes
  • Start
  • About
  • Archive
  • Contact

Mapping Nozbe

November 26, 2008 | Nozbe2XMind | View Comments

I recently decided to try GTD (Getting Things Done) to make my life more organized. As I use 3 different computers, web application seemed to be a logical choice. After reading a few reviews, and briefly testing five sites, I finally settled on Nozbe, mainly because it seemed as a place which may help me to learn GTD instead of just making it possible to use it.

It is too early for any conclusions, but in general I like Nozbe while I am collecting my tasks and checking my ToDo's. But since I put noticeable number of tasks there, I find it difficult to do a solid review. No way to see the whole thing (and it is not only a Nozbe problem, other sites also do not seem to offer much help here).

So I wrote a tool which helps me to see all my projects and tasks together and at once.

What it does

The script I wrote downloads all projects and tasks (of a given user) from Nozbe and saves them as a mind map.

I picked XMind format as XMind is freely available, crossplatform and just cool (especially the drill-down feature is very handy). This way I get pleasant graphical representation of everything I have pending on my Nozbe account.

Here is how does it look like (texts are cloaked as those are my true projects):

projects_shot.png

Start marks flag next actions, checkmarks flag done actions, remaining marks signal contexts (there is e legend on the bottom which shows which mark means which context).

Projecs contain links to their pages on Nozbe, so one can easily open them while viewing the map:

projects_browser_shot.png

In the future I hope to write the reverse part - the tool which would let me modify such a mind map, and upload to Nozbe the changes (in particular I'd like to be able to move actions between projects inside XMind). Nozbe lacks some necessary APIs, but I hope to see them implemented.

Installation

Installation is a bit geeky at the moment. If there is a noticeable interest, I may try to create the binary distribution.

Prerequisities: you must have Python2.5 (2.4 won't work, 2.6 may work but I have not tested it yet) with setuptools and lxml. I test my script on Linux and Windows but it should work everywhere if you get Python and lxml working.

If it looks like a black magic to you, just:

  1. Download Python 2.5.2 from this page and install it (there is a Windows installer).

  2. Download SetupTools for Python 2.5 from this page (download links are on the bottom, again there is a Windows installer).

  3. Make sure both the Python installation directory and its scripts subdirectory are in your PATH (on Windows open Control Panel, pick System, visit Advanced tab and pick Environment variables, find PATH and edit it adding C:Python25;C:Python25Scripts to it.
    Or remember about point 5.

  4. Open the console (simplest Windows way: Start/Run and enter "cmd")

  5. Unless you configured your PATH, type

    PATH=C:Python25;C:Python25Scripts;%PATH%

  6. Type:

    easy_install lxml==2.1.3

(this version is not strictly required, it just has binary Windows build available)

Having done this (or having those components already installed), install my script by:

easy_install http://mekk.waw.pl/download/nozbe2xmind/mekk.xmind-0.1.0-py2.5.egg
easy_install http://mekk.waw.pl/download/nozbe2xmind/mekk.nozbe2xmind-0.1.3-py2.5.egg

Finally, install XMind.

Usage

In the console, issue the following command

python -m mekk.nozbe2xmind.run --key=*your-api-key* --out=c:\mynozbe.xmind --verbose

Your api key can be found on the bottom of the Nozbe Extras page. Note that this key is secret (it works as your password), do not give it to anybody, do not post it to forums etc. You can omit --verbose if you don't want to see which requests are made.

When the script finishes (it may take a minute or two if you have many projects), open the created file (here - c:\mynozbe.xmind) in XMind and play with it.

That's all.

Future

Not yet determined. But I consider the following improvements:

  • fine-tuning the content of a map (maybe adding project tags, maybe using colors, maybe reorganizing the map somehow - ideas welcome, the current view is just a first attempt),

  • creating simple GUI to avoid command line,

  • writing xmind2nozbe part (so you could edit the mind map, save it, then run this script to have changes you made on the map transferred back to Nozbe).

Remarks?

Related entries:
Mapping Nozbe update - better looking map
Bitbucket-ing some of my projects
From Serendipity to Blogofile and Disqus
Yet another Python client for RememberTheMilk

« How to write a FICS bot - part V, chatting | What my blog software is doing for me »
blog comments powered by Disqus
  • © 2008-2011, Marcin Kasperski, All rights reserved.