In my work I additionally find it useful to break “magic” itself down into categories:
magic: It’s part of the tool’s intended problem domain, but you can’t use it this way without a thorough understanding of precisely how it functions.
black magic: This is not part of the tool’s intended problem domain, but your thorough understanding of both the problem and the tool’s internals lets you use it for this. (Playing music on a floppy drive for example)
voodoo: It’s not what the tool was made for, you don’t know why or how it works, you have no idea what range of inputs will produce acceptable outputs. You just know that having the clock open in the top right corner of your screen keeps your word processor from crashing...
The fact that there is no “real” magic reminds people that there is a rational explanation, and the categories convey information about how deep the pond is likely to be to anyone considering diving for answers.
In my work I additionally find it useful to break “magic” itself down into categories:
magic: It’s part of the tool’s intended problem domain, but you can’t use it this way without a thorough understanding of precisely how it functions.
black magic: This is not part of the tool’s intended problem domain, but your thorough understanding of both the problem and the tool’s internals lets you use it for this. (Playing music on a floppy drive for example)
voodoo: It’s not what the tool was made for, you don’t know why or how it works, you have no idea what range of inputs will produce acceptable outputs. You just know that having the clock open in the top right corner of your screen keeps your word processor from crashing...
The fact that there is no “real” magic reminds people that there is a rational explanation, and the categories convey information about how deep the pond is likely to be to anyone considering diving for answers.