Last year I wrote that Instructional Design Needs More Agility, saying that it’s time that the training industry develop its own agile approach or risk becoming redundant. Continuing on the theme of faster and more flexible development, Daniel Lemire thinks that programming could use the greedy algorithm as a basis to manage projects. I mentioned on Twitter that I thought that a “greedy approach” was similar to agile programming and Daniel replied:
@hjarche greedy here means: don’t think globally, make the best choice locally, and the end result will be ok. So, yes, it is agile.
My experience in larger projects is that we spend too much time in planning and then freeze that process once we start development, even if the plan is no longer relevant. In smaller projects planning can be almost non-existent, with a quick decision on what model/approach to use and then it’s off to meet whatever was stated in the contract. Building in agility or the greedy algorithm at the onset seems to give more options to the development team, who now have the responsibilty of confirming that they are on course as they continue to refine the product.