Matt Gray

Snake Charming

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:

  1. Display a quick preview of the image I’m working with.
  2. Prompt for Title, Description, and Tags (supporting tag strings with spaces)
  3. Upload the photo using the Flickr API.
  4. 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!

← Previous Post Next Post →