все, наверное, знают классическую цитату
Some people, when confronted with a problem, think “I know, I'll use regular expressions.” Now they have two problems.
Товарищ Avva (
http://avva.livejournal.com/2351761.html) развил тему (кидаю сюда, т.к. у многих ЖЖ на работе закрыт):
* You have a problem and decide to use recursion.
Now you have a problem.
* You have a problem and decide to use Java.
Now you have a ProblemFactory.
* You have a problem and decide to use Python.
Now you don't know what you have. Could be an int, a string, a list or a problem.
* You have a problem and decide to use threads.
Two now problems have you.
* You have a problem and decide to use Lisp.
Now you have a list of problems.
* You have a problem and decide to use locks.
Now you have
* You have a problem and decide to use delegation.
Now your problem is your problem's problem.
* You have a problem and decide to use anagrams.
Now you have lamb rope.
...И мой (в смысле, avva) любимый вариант...
* You have a problem and decide to dissolve it in water.
Now you have a solution.