Charles Darwin said it was not the strongest of the species that survived, nor the most intelligent, but the one most responsive to change.
Yea, yea, yea… this is a photography blog and a DIY one at that. Why are you bothering us with biology?
As I mentioned at the last fun @ the pool collection, I recently attended the Agile 2008 conference and the fast and relentless stream of Agility opened my eyes to the way photography can (or already is) become Agile.
What Is Agility?
Agility as you may have figured from the opening line of this post is one’s ability to respond to change. Software wise Agile began with the forming of the Agile Manifesto, which you will see is very easy to swallow. One side of the coin is that the manifesto is rooted in a collection of software development practices that are also easy to swallow. The other side of the coin is that the manifesto drives those practices in the industry.
My reading of the agile practices and values says that: To make a long story short my read of the Agile concept is that (A) one must deliver results of good and improving quality. (B) He must do so while focusing on the people involved in the process. (C) He must be able to make a shift in plan to accommodate some new requirements / ideas / knowledge and he (D) must be able to produce the same high level results over and over again.
Now, I am not saying that the reading above is the only way to be Agile, I am also not saying that my view is the complete Agile view rolled into one paragraph. I am saying that this is how I perceive that important core of Agility.
Oh, you don’t have to be Agile. In fact you don’t have to even know about Agile. But I believe that digital photography has brought Agility to all digital photographers even if there are unaware of it. I also believe that applying Agile concepts t photography can improve one’s photography dramatically. And I am not taking about the business side (although this side can benefit from Agility as well) I am talking camera control, composition and lighting. The old Photography core.
So, if you are all into DIY and converting pipes into diffusion screens feel free to skip this one.
Chimp, Chimp and Chimp Again
At the core of Agility lies the shot feedback loop. In software it means that you can test you small piece of software the minute you write it, Because you have tested your small piece of software you know that you will not hurt the big software when you are adding your piece. (This methods is know as Test Driven Development or TDD)
How can we apply TDD to photography?
The best way to make sure you are shooting good pictures is to chimp. Chimping, along with histogram reading allows you to verify that your exposure, lighting and composition choices are correct. If any of your choices is wrong, you can stop, correct it and keep shooting.
If It Is Good, Make It Better – Go Kaizen
Kaizen is the Japanese word for improvement, in the context of Agile, Kaizen means constant improvement. It means that you deliver a working product fast and shortly after deliver another version which is better, with fewer bugs and more features. The secret is to go with small steps. You make something good, you release it to customers, they start using it and gain value. Now you make some improvements, add features and release again. More value. And so on.
The first delivery is good enough to start gaining value and the subsequent frequent deliveries add more value as you go along. This may sound trivial but in the old days, you had the developers sit in a basement for two years, plan, code and release, only to discover that the designs they made two years ago are no longer relevant to the customer.
How can we apply Kaizen to photography?
This made me think about lighting, although it can be applied to other aspect of a picture as well.
When setting up lighting for a photograph, each light need to contribute to the overall lighting of the image. This does not mean, however, that the image does not have to look good on the first shot, the one with minimal lighting.
Look at this video by Jim Talkinton. The first image rocks. Then Jim adds a reflector to make it better. Then he adds a strobe on a softbox. Each step producing a better image. Remember we talked about chimping, see how Jim chimps big time on the covered laptop.
The World of YAGNI
YAGNI stands for Ya Aint Gonna Need It. It origins from the sources of Agile manufacturing. The problem was that then the engineers that made a part tried to comply with all the requirements, it took them a long, long time to make part. And guess what. Most of the requirements were not even needed. This is when they decided to go Lean.
That means that if there is no real need for a requirement, the part does not need to comply with that requirement.
“But wait, what if we missed something“, said the marketing guys.
“Well, this is why we do Kaizen. If you missed it now, you can shortly introduce it again for the next release” said the smug engineer.
So in short, YAGNI means don’t do what you don’t have to. If you really have to and you missed it, you’ll get it for the next release.
How can we apply YAGNI to photography?
OK, this is easy -“less gear, more brains, better light” – David is the master of cheap hacks, inexpensive-earned-by-hard-labor-gear. If you are just starting your way into lighting, you can start small. By using just a few speedlites and some DIY hack you can (almost) eliminate the need for big expensive equipment. Do you really need a 15000 W/S strobe for 90% of your shots? I don’t think so.
One of the Agile practices I value the most is called paired programming. It means that two developers are sitting together staring at the same monitor and using only one keyboard work together to get some piece of code done.
Some managers consider this as waste – I mean the work is not going to be don in half of the time right? Well there are correct. It takes more then half of the time to complete the code when working together.
But here is the trick – The code is better. Because two people write it together, they help each other avoid mistakes, help each other to stay away from false directions and help each other to have more fun while working. So in the end, when you go and test the code, you find less bugs and the total development time is actually shorter.
How can we apply paired programming to photography?
There are lots of ways to do photographic collaborative work, starting from getting and giving comments and critique. But you can also do a photowalk with a friend. Try to explore a photography subject and more.
Your photographer friend will help you (and you will help him) see a different angle of things, offer new ideas and approaches and direct attention to important aspects of your experience.
I’d love to hear your thoughts about Agile and Photography. Are there Agile practices you find valuable when going for a photography session? Are there Agile values you consider great to apply to photography?