Mozilla is a good example of a heavily pre-designed and highly modular piece of software. Mozilla.org had an interesting competiton a few years back where participants were asked to spot design patterns in use in the code, although I never got to see the results.
Want something to belt out a quick hack? I believe in using the right tools for the job: Visual Basic, Perl and Python fill this niche nicely.
Serious programming? Give me Java or C# anyday. I'm prepared to sacrifice flexibility and control for safety. IMHO, strong static type systems are a godsend for aiding in writing correct code.
