I once read a blog post by John Resig that exposed me to sand mandalas, which are a Tibetan Buddhist tradition where works of art are made out of colored sand. These mandalas are exquisite in detail, requiring weeks of effort by a team of monks. The most interesting part of the tradition, though, is that after the mandalas are finished and displayed, they are ceremonially destroyed. This destruction is meant "to symbolize the Buddhist doctrinal belief in the transitory nature of material life".
It floored me to think that such amazing art would ultimately be demolished, with the effort to create the art seemingly for naught. However, I think the spirit of the sand mandalas leads to a good lesson about programming. I sometimes become too attached to code that I've written, making me hesitant to change or remove it. But software should be transitory in nature. Good software results from constant refactoring, and unneeded code should be removed. Thus I should avoid becoming enamored with my original implementation and adopting a narrow-mindedness that ultimately harms the product I'm creating. Instead, I should be open to making changes when they result in a better design and more maintainable code. And though the effort to write my original code may seem like a waste, it really isn't, as it ultimately led me to better code.
December 31, 2009
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment