This chapter draws on the similarities and parallels between movie making and software development. I will be stretching the limits of artistic license since I am certainly more familiar with one than I am with the other. In fact, I know very little about the intricacies of the movie making process, and the research that I have done is a poor substitute for experience. However, that said, there are broad themes that seem to apply to both, and in particular, I believe that the art of software development, is just that, art.
Software development is art with technological underpinnings just as movie making is art with technological underpinnings. Both are complex, creative, expensive and risky story telling vehicles. Despite the similarities that exist between the two, due to the nature of the creative processes required for both, it is the parallels between the economics and the organizational dynamics that I find fascinating and relevant.
Consider the players in the movie making process. Not only do you have the big name players: the producer, the director, and the actors; you have a small army of little name players that all make significant contributions: writers, costume designers, cinematographers, sound engineers, editors, musicians, animators, stunt men and women, hair dressers and so on.
No producer or director in their right mind would consider working with anyone who is not at the top of their game in any one of these disciplines. Movie making is risky business and you cannot afford to work with amateurs when even the best of the best often get it wrong. In order to recruit this small army of top talent you have to deal with the numerous agencies that represent them. Pulling together the talent required to make a major movie is a monumental project management task.
Consider the players involved in the software development process. Not only do you need developers and visionary leaders; you need the services of an entire supporting cast: architects, database specialists, network specialists, technical writers, domain experts, content creators, copy editors, web designers, usability experts, graphics and multi-media experts, sales and marketing and so on. All of these players are required to tell a story in software.
What are the chances that at XYZ Corporation, which is not in the software business per se, you will find all the top talent you need to tell the story in house? If the story you are currently creating is mission critical and will costs in the millions, can you afford to work with amateurs in any one of these disciplines?
Within XYZ’s current software state of affairs the probabilities are high that your supporting cast will not be ready for prime time. For many supporting cast members this may be the first time they tell a story in software. The supporting cast is likely to be both talented and full of potential, but these characteristics are no substitute for experience. Chances are that both quality and time-to-market will suffer.