Chris Hunter asked the above question - in a more polite way - in the first ever comment to this blog. It was one I was reserving for when I wasn't feeling inspired to write about what I was doing, and hadn't posted for a while. But it wouldn't be fair to leave it unanswered until then.
In short, it's stalled at the alpha-test version: three selected people - experts at breaking Web CanalplanAC (WCAC from now on) were sent disks and asked to do their worst. They sent me lots of comments, and gave me lots to think about.
Then my only Windows machine went belly-up the way only a Windows machine can, and I've not got round (or, frankly, felt justified in chucking several hundred pounds of the family silver at Standalone CanalplanAC (SCAC) development - as that's the only thing I'd need it for) to replacing it. My spare time over the last year has been like Chapter 13 of a Jasper Fford novel.
That put an immediate hold on things. In the meantime, three other developments took place, all of which deserve - and will eventually get - articles of their own. The first of these was the addition of Google Ads to WCAC; this funded a broadband connection which in turn lead me into the wonderful world of Google Maps - the second new development. The third was my licensing of POI data to improve the database.
Now all of those provide arguments against me putting effort into SCAC. The first is a far nicer way to earn money from the site than selling the software, the second won't work without a broadband Internet connexion, and distributing the data behind the third would break my licensing conditions.
There are so many nice things about developing on-line software like WCAC, and so many horrible things about developing stand-alone software like SCAC. Here are the first that spring to mind:
- Release cycles. Stand-alone software needs to be nicely packaged, stable, without experimental features or egregious bugs (obligatory anti-Microsoft joke omitted). Web software can be the opposite: if you break it, never mind - you can fix it tomorrow. You can put a half-baked idea up and see what happens.
- Support. The web software is free. If it doesn't do what you want, then that's fine - you've lost nothing but a bit of time. If I sell software I'll feel a moral obligation to support people, send out patches for bugs etc (oa-Mjo).
- Peeking behind the scenes. You can do really cool things when the site is live and you own it. For example, every time the placefinder kicks in and suggests a match this is logged. At intervals I pour over the logs, then dry them out and tweak the auto-match code to make it actually reflect what people are doing.
- Consistency. You are developing for a single system. You have to deal with a collection of web browsers, but that's all you have to deal with. You're not dealing with the niceties of SP2, home v professional, Windows 95, 98, 2000, XP, Vista, whatever. None of which you have, and all of which you have near religious objections to paying money for.
- Independence. SCAC relies on the Abyss webserver. I've just heard that Aprelium have released a new version, and (surprise!) the patching of the configuration file that CanalplanAC's installation does fails miserably. I'ts not their fault - they don't know I'm relying on them, and even if I were, so what? But it just sums up the complexities of putting things on other machines with other software, rather than on your own server.
What it ulitmately boils down to is
fun. This isn't what I do for a living and probably isn't what I want to. I get very little reward for it (and don't want too much - as long as I can justify all my income from the software on expenditure on hardware I can keep the taxman from taking his hunk out of it). Hacking together a new feature, throwing it out, watching it break, fixing it, getting nice comments from people (keep them coming - they really do inspire me to keep working) and getting "wouldn't it be nice if it did
this) is a great way to spend your time. Working your way systematically down a list of known bugs and misfeatures, fixing them
and not touching anything else interesting at the same time, regression testing the whole lot, etc, etc is the right way to do it if you're getting paid for it. But it's not much of a hobby.
I'm not saying I'm giving up the idea of ever releasing a stand-alone version. But I think it would need a major shift in something before I did. And a stand-alone would never be as featureful, data-rich, up-to-date or responsive as the web site.