If you thought the original post got into pedantic detail, you should see the counterpoint and rebuttal between me and a few other commenters. This user tries to argue that my situation could be dealt with Lightroom and tethered shooting (connecting the camera to a laptop with a USB cable).
This is ridiculous, because the photographer has Lightroom or Aperture to do this all without writing a single line of code. He then hands his catalog for the shoot along with the hi-res JPGs, which have all been renamed to YYYYMMDDHHmmSS-#.jpg format (where # is the sequence number of the file from the camera).
All the photos have then been tagged with the model name (first name will do), hair color, eye color, and modeling agency. There are also keywords indicating the background, pose, clothing, and props. So now the casting director can winnow 1,000 photos down to 5 or 10 and then look through them for the the ones he/she wants.
This is a fine example of how to solve a problem with code, but it’s a terrible example of how to solve a real-life problem.
Well, besides the cost of any additional software/equipment, I point out that his solution is photographer-centric. That is, a real photographer should have these tools/workflows available rather than needing custom code. Maybe so (I disagree a bit, but see his point), but the point of my original article was to see this from the casting director’s point of view.
Because the casting director is primarily concerned about casting, not photography, she does not have the incentive to hire a full-fledged photographer or own such equipment/workflow herself. The code snippet I provide is written when she can only assume the following:
- She has someone who is operating a digital camera
- She has an assistant with a laptop
And that’s it. She can’t assume that the laptop has Lightroom, tethering software, or that there’s many multiple memory cards to swap in and out. She also has to assume that the flow of models will be fast, so taking more than 2 minutes per model is not sufficient.
Given those constraints, I think my coding solution beats any commercial setup when cost and efficiency is concerned. Most importantly, even if the code fails, the casting director can still do the photo sorting as she has always done it. This is because the code requires only the information that the casting director has traditionally gathered (with the exception of the timestamp, which isn’t too arduous).
Someone can point out that my circumstances seem arbitrary, but they are what I’ve experienced in real life. They may seem arbitrary and contrived to an outside programmer, and that underscores my point: there are more problems and variability in their details that non-professional programmers have a lot to gain from learning a little code.
A reader pointed me to this post, Automating Mass Portraits with QR Codes, which provides Python and PHP to deal with a similar situation. Another programming photographer!