mark-eichin-blogspot-com: Thu Mar 3 19:20:00 2011

Thu Mar 3 19:20:00 2011

Tool Building

I've put what is probably an unreasonable amount of time into building my own software tools - not particularly novel tools, necessarily, just glue to create support my own idiosyncratic ways of working. For example, back in 2003 I had a Sony Clié; as a way of attempting to understand what the big deal about blogging was, I put together a working mobile-photoblog with a .forward file and 50 lines of shell script - I could take a picture from the Clié, add text and a title to an email message which would go to my posting address. Even had a handful of readers. About the same time I started turning my README files into blog input (I was already doing plenty of writing, so why change my habits when I could build tools around them?) This led to some kind of gross ad-hoc parsers for the kind of text-shorthand I used, which at least worked as a way of getting them on the web.

These days, I've come to believe it's worth some amount of effort to use the tools other people come up with, rather than inventing everything from scratch, satisfying though that is. For example, MarkDown syntax appeared in 2004, is close enough to what I was doing already that simply hand-re-writing my README files into it would be trivial, and gets me away from having spent 7 years on and off tweaking regular expressions to generate what I have now. Of course I can argue that spending that time is why I now know that MarkDown is what I wanted in the first place, and it was a good playground in which to develop skills with various bits of Python... but it's getting in the way more than it is helping, at this point. I've actually got a prototype that takes the RSS of this blog, upgrades it to MarkDown with some extensions, and generates the corresponding page on my own site... eventually this will point there instead, and "gadgets and tech" will go back to being a category and not an entirely separate project.

This isn't the only bit of consolidation I've been doing - I finally have all of my photography in one collection, a single 33M KPhotoAlbum XML file with tags and metadata for over 80 thousand pictures. There are still a bunch of older captions (from bins, the old perl gallery tool, and from some ad-hoc software of my own) that need to be folded in, but not an enormous number of them. This has allowed me to dig up a few interesting things from my earliest photographic efforts, so it hasn't just been a filing exercise; it has also been a good way to see the progress in both camera tech and personal skill over a decade.

Pycon 2011 is in Atlanta, GA, next week, and while I hope to do a bunch of coding while I'm there, I don't want to build up quite as much of a backlog of future projects and wishful thinking as I have in the past - while by habit I do seem to be a builder of infrastructure, it's primarly bespoke personal infrastructure, and doesn't really increase my development velocity that much - I want to make things happen. We'll see if I actually pull that off :-)