You can do crazy hack A, or you can do crazy hacks B through Z, but put any two of them in the same space and they'll fight each other. Examples: * RVM vs. any other shell tricks. Since rvm affects basic shell pieces, such as the `cd` command, it's likely that you'll run into odd with other tricky shell invocations. For example, running `:!something` in vim isn't smooth. * Metaprogramming. Usually you can get away with it cleanly for one or two things, but it's going to get crowded pretty fast. See: StumblingBlocksForDomainSpecificLanguages * Pentadactyl is a wonderful, but invasive UI change to Firefox. It works very well, that is until you visit a site that attempts to make an invasive UI text widget (such as http://jsfiddle.net ). Two wizards. Same room. Big fight. * AspectOrientedTheHardWay when somebody else in the same process is also doing it. Hope you both got the binary patching protocol exactly right. "The plural of wizard is war." --TerryPrachet