May 29, 2006
I completed my first full-fledged Python application today. I needed a smooth, simple way to “close the loop” on my Flickr upload process. My RAW processor (Bibble) likes to output files with a so-called ‘job code’ and a sequence number specific to that job. This feature has worked great for my professional photoshoots, but doesn’t fit very well with the random photos I take on a given day. Enter flickrup.
For flickrup, I wanted to be able to do the following:
- Display a quick preview of the image I’m working with.
- Prompt for Title, Description, and Tags (supporting tag strings with spaces)
- Upload the photo using the Flickr API.
- Allow for renaming of the phyiscal JPEG on disk based on the Flickr title I chose for the image. (e.g. My Image, 2 => my_image_2.jpg)
Everything but item #4 is complete, and the last bit should be trivial. I’ve also added EXIF parsing support, so I can define ways to map EXIF data to tags in the uploaded image. This is great, since I want to be able to easily grep through my images based on EXIF params (e.g. ISO speed, f number, etc.). Now my images will automatically have ‘ISO XXX’ and ‘f/xx’ tags defined for them.
The real enjoyment is not from the new automation in my Flickr process; I have picked up the basics of a new programming language, wrote new classes, harnessed its API / modules, and developed a full-fledged command-line application that fits the bill. Hooray!