ivories.org | hacking

On Hacking

Hacking is a mindset. Hacking is wanting to know what this does. Hacking is wanting to know what this can do. Hacking is wanting to know how this is made. Hacking is wanting to know why this was made. And then extend that why and that how to what _could_ this do.

Hacking is rarely purpose driven. Hacking may produce purposeful results. When a four-year-old disassembles a ball point pen, he is hacking. When one goes 40 hours without sleep to see how the world will look at the end of that 40 hours, that is hacking.

Hacking -- remember, it's a way of thinking, not so much an act or group thereof -- can often be broken into a three part process. Not all of these parts will always happen.

  • Curiosity begets investigation of the nature of a given topic
  • Upon gaining some understanding, the investigator works at contorting the topic entity to other designs.
  • [optional] The investigator puts some time and energy to use what he has learned to accomplish specific goal(s) utilizing the topic entity, and may incorporate this into a larger scheme. (This is where the "rarely" part of "Hacking is rarely purpose driven" comes in.)
  • Hacking is computer-associated for a reason. Computers are state-based machines, but the number of possible states often appears to be infinite. Recognizing that there are useful and useless states for a machine, and then realizing that a subset of the apparently useless states are also useful is a hacker realization. It is akin to the ballpoint disassembler recognizing that the empty, hollow plastic tube, while of no practical value from the standpoint of one wishing to put ink to paper, is in fact a perfect tool for spitball propelling. Or whistling. Or stamping tiny pies out of a flat rolled plane of clay.