I recently read a brilliant article over at the Troll and Flame. This brought into play how the practices and procedures one uses in software development shape and impact both running games and designing games. I highly recommend anyone with even a passing knowledge of software development read it. The parallels are great.
Being a developer in all stages of application development, this article brings up many points on my own views of how the two mesh. As anyone with much knowledge of software development knows, good software is a skeleton that is indirect, highly generalized, and not rigid or unalterable. These factors make re-usability exceedingly high and allow for the modular nature of custom application development (my bread and butter was, for along time, doing SME custom software from scratch). Even in larger software corporations successful software is one that allows you the general tools to do whatever you need. Excel for instance is just a giant customizable tool to sort data in whatever weird format you need.
Good game design concepts are like software:
Indirect, highly generalist and easy to re-arrange components. This can be then molded to suit individual needs by rearranging components and setting firm values to create a very direct and high specific product.
I instinctively use these concepts when I try and clean up the rough ideas I first spit out in game design. A good example of that would be the "dot" inventory system, and how easily it blends into other areas.
Welcome to your doom
8 hours ago