“Make everything as simple as possible, but not simpler.”
In the world of software development, there are always religious arguments being made as to which method is best. Most people agree that Agile-based methods are the most appropriate for software development, but we stop short of saying this is always true. I have always felt the type of problem being solved and the personnel involved should dictate the method. Planning, constraints, and preliminary design should be tailored to the level of complexity and uncertainty of the problem, as well as the composition and maturity of the team involved.
At Don’t Panic Labs, we tread our own path based on the task at hand instead of getting wrapped up in dogmatic adherence to one particular method. Our teams are a great mix of senior and junior software engineers that bring various traits and abilities to the table. As each of our teams deal with unique problems and varying requirements, we utilize methods that help get us to the finish line accurately and efficiently. We don’t have time to burden ourselves with self-imposed rules of development. In short, we don’t let the process get in the way of productivity.
Not that what we do is revolutionary or groundbreaking but, much like our environment, it is unique.
This article, written by Michael ‘Monty’ Montgomery and published on IDesign’s website, does a great of job explaining the essence of our methodology and the “voodoo we do” (to borrow a phrase from the article) here at Don’t Panic Labs.