Better sync’ing for Printable WeRelate

Printable WeRelate now will synchronize all ‘starting-points’ pages (i.e. any page with a <printablewerelate> element), rather than being required to have just a single page listed on the command-line. This means that a cron job just needs to call sync.php at some interval (maybe nightly? of course, at some unusual number of minutes past the hour), and everything will be brought up to date.

This change is now available on the test site.

I’m now working on the display of the data within the wiki. Including the addition of a notice (maybe just a template call: something like {{WeRelate page}}) to the effect that “this is a copy of a page from and should not be edited. All changes should be made at [url].” to send people back to WeRelate. Probably also actually prevent the editing of the synchronized pages.

Printable WeRelate

Last year I wrote a little script for producing GraphViz graphs, and LaTeX books, from family history data. I’ve been tweaking it a bit now and then, and using it for my mum’s genealogical research. It works, but the more I want to do with it the more I think it needs a good ground-up refactoring. So, I’ve set to work turning it into a MediaWiki extension, so I can use an installation of MediaWiki as the cache (instead of text files), and update this installation in a separate operation to the tree-generation stuff. (I found that I was playing around with regenerating things more often that I wanted to be waiting for downloading modified data, and it was set to check for modifications if it’d been longer than a day since the last check…) The other big advantage of sync’ing into a local MW is that I’ll have a complete, working, backup of all our data.

The basic idea is that the ancestor and descentant lists, which define the starting points for the tree traversal, will be defined in normal wiki pages, and both the syncronisation and the tree-generation processes will read these and do what they need to do.

I’m setting up a test wiki at, if anyone’s interested.

I forgot to mention, a few weeks ago when I set it up, that the family archives now have an online home at It’s for family only, but if that’s you then I will set up your account; just email me. I’m jolly excited about going back to Perth this summer and working on this!

What’s the point?

Oh weary thing! Oh listless drudgery! Oh the stupid work we make for ourselves!! Oh!…

Here I sit, on a cool spring morning, with nothing at all to worry about; I am happy. So why-oh-why-oh-why should I sit down to work at some sloppy, good-for-nothing code that purports to “record, display and analyze genealogical data”?! Why?! This world certainly does not need me to be spending my time in meaningless work that helps no-one. Programming feels at times as though we’re just making up work for ourselves, work that doesn’t — in the Great Scheme Of Things — actually need to be done. Growing food, building houses, having sex, talking to old people: these are fundamental to living. Building Drupal modules is not.

It must be said also, that blogging is not. So I’ll stop now. I do not really think that I was making much sense anyway; sorry.