Brett's Law of Reusability...

"Any sufficiently complex bit of code is hard to make easily reusable without abstracting it to a level in which it is essentially useless."