||The lead section of this article may need to be rewritten. (March 2014)|
Out of hacker culture, and especially the artificial intelligence community at MIT, there have sprung a number of humorous short stories about computer science dubbed hacker koans; most of these are recorded in an appendix to the Jargon File, where they are called AI Koans. Most do not fit the usual pattern of koans, but they do tend to follow the form of being short, enigmatic, and often revealing an epiphany.
- "What are you doing?", asked Minsky.
- "I am training a randomly wired neural net to play Tic-tac-toe", Sussman replied.
- "Why is the net wired randomly?", asked Minsky.
- "I do not want it to have any preconceptions of how to play", Sussman said.
- Minsky then shut his eyes.
- "Why do you close your eyes?" Sussman asked his teacher.
- "So that the room will be empty."
- At that moment, Sussman was enlightened.
Similar to traditional Zen koans, this koan has a possible concrete and correct answer: just as the room is not really empty when Minsky shuts his eyes, neither is the neural network really free of preconceptions when it is randomly wired. The network still has preconceptions, they are simply random now, and from a random rather than a human source.
This particular koan seems to have been closely based on a real incident; the following text extract is from Hackers: Heroes of the Computer Revolution (chapter 6):
|“||So Sussman began working on a program. Not long after, this odd-looking bald guy came over. Sussman figured the guy was going to boot him out, but instead the man sat down, asking, "Hey, what are you doing?" Sussman talked over his program with the man, Marvin Minsky. At one point in the discussion, Sussman told Minsky that he was using a certain randomizing technique in his program because he didn't want the machine to have any preconceived notions. Minsky said, "Well, it has them, it's just that you don't know what they are." It was the most profound thing Gerry Sussman had ever heard. And Minsky continued, telling him that the world is built a certain way, and the most important thing we can do with the world is avoid randomness, and figure out ways by which things can be planned. Wisdom like this has its effect on seventeen-year-old freshmen, and from then on Sussman was hooked.||”|
—Steven Levy, HACKERS: Heroes of the Computer Revolution
- A student was playing a handheld video game during a class.
- The teacher called on the student and asked him what he was doing.
- The student replied that he was trying to master the game.
- The teacher said, "There exists a state in which you will not attempt to master the game, and the game will not attempt to master you."
- The student asked, "What is this state?"
- The teacher said, "Give me your video game, and I will show you."
- The student gave him the game, and the teacher threw it to the ground, breaking it into pieces. The student was enlightened.
A very similar story exists in the The Tao of Programming.
- A novice was trying to fix a broken Lisp machine by turning the power off and on.
- Knight, seeing what the student was doing, spoke sternly: "You cannot fix a machine by just power-cycling it with no understanding of what is going wrong."
- Knight turned the machine off and on.
- The machine worked.
- It is recorded that once, when Master Foo was iterating along a beach, he came upon two of his disciples arguing by a computer processor.
- "It is subtracting positive 1", declared the first.
- "No; it is adding negative 1", asserted the other.
- Master Foo answered them thus: "Not incrementing, not decrementing — Equalizing!" whereupon both were enlightened.
Emacs and Bolio
This particular koan is sometimes punningly referred to as an “ice cream koan”, though that term also refers to an ice cream koan in The Dharma Bums. This koan refers to AI Lab tools that predate the GNU project:
- A cocky novice once said to Stallman: “I can guess why the editor is called Emacs, but why is the justifier called Bolio?” Stallman replied forcefully: “Names are but names, ‘Emack & Bolio's’ is the name of a popular ice cream shop in Boston-town. Neither of these men had anything to do with the software.”
- His question answered, yet unanswered, the novice turned to go, but Stallman called to him: “Neither Emack nor Bolio had anything to do with the ice cream shop, either.” (The store is named after two homeless men.)
A possible interpretation is that this is about the arbitrariness of identifiers in computer code—the names of variables do not affect the function of the code.
Eric S. Raymond compiled the original AI Koans into a collection as part of his work on the Hacker's Jargon Dictionary. Inspired by them, he has written several pastiches, in toto entitled the Rootless Root (a reference to the koan collection The Gateless Gate). Raymond notes that Danny Hillis invented the AI koan while a student at MIT.
A different collection of fables, based on corporate software engineer culture instead of unix hacker culture, written in the style or spirit of Zen koans, is The Codeless Code. It features purely fictional characters (mostly masters and monks) in a quasi-Far-Eastern setting. The stories explore topics related to modern software development. The name for this site is also a reference to The Gateless Gate.