My Philosophy on Software Design

I like to think of software design as cracking a code.  You keep working on the design over and over until you’ve finally cracked the code and an elegant design emerges.  I believe the solution exists out “there” and I just have to find it.  Albeit there is more than one solution but some are…

4