Clarke Ching has been working in public on his book, Rolling Rocks Downhill, for quite a while. I've read at least one version of it. Last week, he posted an update of one of the chapters where one of the ideas of the book come together: That (software) developers are creating recipes for a cake, rather than baking the same cake over and over. This implies one should be careful about applying manufacturing concepts in such a world.
Here is a quote from Where it all went wrong:
'Okay. Here's the bit that puzzled me. Development teams in other industries start iterating - and therefore testing, since testing is an intrinsic part of iterating - very early in their development processes. They cook version 1 of the cake, test it, tweak the recipe, then cook version 2, and so on. They test throughout the entire development process, but you computer people don't start testing - or iterating - until mid way through a project. Why is that?'
Why do (software) developers act as if the recipe is fixed, when it clearly is not?
Dave Snowden has written and talked about a parallel to this problem many times in the context of knowledge management. Are we asking people to simply pick up an item from a knowledge repository and re-use it (like we might see from someone following a recipe)? Or do we want people to develop enough expertise and understanding to be able to see the key bits of many recipes and create their own (the chef)?