Taking a well-designed piece of code and, through a series of small, reversible changes, making it completely unmaintainable by anyone except yourself. The term is a humourous play on the term refactoring and was coined by Jason Gorman in a pub in 2002.
Refuctoring techniques include:
Using Pig Latin as a naming convention.
Stating The Bleeding Obvious - writing comments that paraphrase the code (e.g., "declare an integer called I with an initial value of zero").
Module Gravity Well - adding all new code to the biggest module.
Unique Modeling Language - inventing your own visual notation.
Treasure Hunt - Writing code consisting mostly of references to other code and documents that reference other documents.
Rainy Day Module - writing spare code just in case somebody needs it later.