Wednesday, April 28, 2004

Priorities

A software development project can sometimes be a lot like a movie production. There are lots of people working together to create something that's never existed before. On schedule. Within budget constraints. To do this successfully and repeatedly you have to keep your priorities straight.

I just got an email from my manager on this. He included a quote from filmmaker John Sayles's book Thinking in Pictures: The Making of the Movie Matewan.
It's 1:45 in the afternoon and lunch is scheduled for 2:00. You're three shots behind what was planned for the morning. You're in the middle of an exterior shot and it looks like it might start raining in an hour or so. The actress is in the next shot scheduled as well, but she'll need a change of hair and clothes that will take 45 minutes. The one you're in now is very emotional, and it's taking quite a while to get her face back in shape after each take. The crew went into overtime last night, it's late in the week and they're tired and hungry. The only cover set if it does rain is an interior that needs an hour or more prep by the art and props people, but you need them here for the next two shots. Another actor supposed to shoot in the afternoon has a plane to catch at 7:00, taking him to another movie commitment that will keep him away for a full two weeks. The leaves on the trees in the background, acres and acres of them, are supposed to all change color in the next day or so. The first shot tomorrow needs to be at sunrise and if you go into overtime tonight there won't be enough turnaround time to make it. The last take convinced you the shot would be better with a wider lens, but a wider lens will reveal the production trucks and craft services table set up at the other end of town, and the unit manager's walkie talkie is on the blink, and a decision has to be made in the next ten minutes whether to rent a crane for the that dawn shot tomorrow or not.

[...]

The number of variables and pressures that figure into a shooting day are like those word problems in math, only there is no correct answer. Each decision you make brings a whole new set of variables into play. This makes it doubly important to have your priorities set before you start shooting. Which sequences, which shots, are the most important? How far behind schedule can you afford to get? What comes next and how does what you're doing now affect it?
Individually as software developers we probably aren't ever under the same level of pressure as a movie director but I think this passage really nails the importance of keeping your priorities straight. Focus. Where are we now? What needs to be done? Make decisions.