I have a Master Degree in CS but programming mostly is self taught by reading other people's code, good code and ugly code. I know about design patterns only enough to avoid them like shit. It is just easier to hide shit under a shinning cover. There is a saying for writers : "every word tells". My principle is "every line counts". However, this is almost impossible in a team environment, so I still think that best code is one man job.