Somehow, i'm not sure if i like the word "pattern". Patterns are something which can be used generally and repeatedly. I think that's sort of scary. For example: I've learned factory usage while doing twisted and it came naturally how and why this was used. But somehow i feel that with all those books and courses about "design patterns" new programers are missing out how to find a solution. It's like "here are your tools, MVC, factories and observers, try to solve your problems with those". This can be dangerous when a programer first looks how he can mold his problem to be solved with some pattern, whereas he should first analyse the problem and use patterns carefully where they fit naturally. I'm scared of a programming world where every bit is solved by factories of factories of metafactories ;)