So today I started programing Nomical.

Nomical is, for those who haven’t seen the robot infested web page, the idea of a centrally based PIM whereby everything can be connected to everything else. This is causing me a couple of headaches, and may not be entirely obvious, so an example.

On the 26th January 2003, there is a party, which is an Event in the database, it has a start point, an end point, a title, and an ID. Linked to that is a Location which contains the address of the pub where it starts; the Location of the restaurant we’re going to afterwards; A Person who is organising the party; a Group of People who are at the party, some of which have Email Addresses linked to them, or URLs, and Locations of where they live (…which may contain info such as Lat. and Long), and also more People in the form of family members and such. Also attached to the party location are a few Notes on directions, and the URL of a review of it in the paper (which in turn is linked to the Person who sent it to me).

It’s all very intertwingly/, but has caused me a few problems (Such as where repeating sets of dates come into this? Are they one Event which repeats, or several Events lasso’d together? And in that case, where does the data about how often they repeat get stored?, that sort of thing). The first version works using web-services (in this case XML-RPC via Simon’s Library) which has necessitated me learning a new skillset, which was fun.

The system in itself is nowhere near even /useable/. It can just about accept new users, but the backend has been slowly thought though over the last several months, and I now know roughly how it will work. The point is that being a centralised web-service, the actual client can be in anything, from Python to C++ or Java. The original one will be in PHP, simply because that’s what I know well, but the server doesn’t care what’s talking to it – Mac, Linux, Windows, C64 – so long as it sends the right data. This is The Dream: To have multiple clients for Nomical.

Then, as I down-tools and see what I missed in WeblogWorld, I see (via Aquarius) that Mitch Kapor is planing a cross-platform PIM, which worried me for a couple of minutes until I realised they are doing something totally different, in that they want a desktop application, whereas I’m going for a fully networked, more multi-user thing. I think. Okay, it’s still worrying me. Won’t stop me, but continues to worry.