Ask HN: How did you learn proper system design?
Im constantly thinking about what layout of classes and their dependancies/interactions will work best for a new project. Doing some iPhone development right now has the "benefit" of forcing you to use things like the mvc pattern and having to rely heavily on delegates and target/actions but still there is always sub-organizing that takes place. The problem is that I never feel like a working solution is the best way of doing something. Studying design patterns only seems to be part of the equation, I guess im looking for new google keywords or amazon searches...<p>Question could probably be: How did you go from goto and general pasta to well designed beautiful code that made people write articles in your honor?<p>Books? Articles? Down-and-dirty coding? Finding a mentor? Doing open-source? Slaving away as a PhD student in applied mathematics and system design?