= Z =

, Previous:

Yow!

, Up:

= Y =

yoyo moden.

The state in which the system is said to be when it rapidly alternates several times between being up and being down. Interestingly (and perhaps not by coincidence), many hardware vendors give out free yoyos at Usenix exhibits.

Sun Microsystems gave out logoized yoyos at SIGPLAN '88. Tourists staying at one of Atlanta's most respectable hotels were subsequently treated to the sight of 200 of the country's top computer scientists testing yo-yo algorithms in the lobby.

Node:

Yu-Shiang Whole Fish

, Next:

zap

, Previous:

yoyo mode

, Up:

= Y =

Yu-Shiang Whole Fish/yoo-shyang hohl fish/ n. obs.

The character gamma (extended SAIL ASCII 0001001), which with a loop in its tail looks like a little fish swimming down the page. The term is actually the name of a Chinese dish in which a fish is cooked whole (notparsed) and covered with Yu-Shiang (or Yu-Hsiang) sauce. Usage: primarily by people on the MIT LISP Machine, which could display this character on the screen. Tends to elicit incredulity from people who hear about it second-hand.

Node:

= Z =

, Previous:

= Y =

, Up:

The Jargon Lexicon

Node:

zap

, Next:

zapped

, Previous:

Yu-Shiang Whole Fish

, Up:

= Z =

zap

1. n. Spiciness. 2. vt. To make food spicy. 3. vt. To make someone `suffer' by making his food spicy. (Most hackers love spicy food. Hot-and-sour soup is considered wimpy unless it makes you wipe your nose for the rest of the meal.) Seezapped. 4. vt. To modify, usually to correct; esp. used when the action is performed with a debugger or binary patching tool. Also implies surgical precision. "Zap the debug level to 6 and run it again." In the IBM mainframe world, binary patches are applied to programs or to the OS with a program called `superzap', whose file name is `IMASPZAP' (possibly contrived from I M A SuPerZAP). 5. vt. To erase or reset. 6. Tofrya chip with static electricity. "Uh oh -- I think that lightning strike may have zapped the disk controller."

Node:

zapped

, Next:

Zawinski's Law

, Previous:

zap

, Up:

= Z =

zappedadj.

Spicy. This term is used to distinguish between food that is hot (in temperature) and food that isspicy-hot. For example, the Chinese appetizer Bon Bon Chicken is a kind of chicken salad that is cold but zapped; by contrast,vanillawonton soup is hot but not zapped. See alsooriental food,laser chicken. Seezap, senses 1 and 2.

Node:

Zawinski's Law

, Next:

zbeba

, Previous:

zapped

, Up:

= Z =

Zawinski's Law

"Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can." Coined by Jamie Zawinski (who called it the "Law of Software Envelopment") to express his belief that all truly useful programs experience pressure to evolve into toolkits and application platforms (the mailer thing, he says, is just a side effect of that). It is commonly cited, though with widely varying degrees of accuracy.

Node:

zbeba

, Next:

zen

, Previous:

Zawinski's Law

, Up:

= Z =

zbeban.

[USENET] The word `moron' inrot13. Used to describe newbies who are behaving with especial cluelessness.

Node:

zen

, Next:

zero

, Previous:

zbeba

, Up:

= Z =

zenvt.

To figure out something by meditation or by a sudden flash of enlightenment. Originally applied to bugs, but occasionally applied to problems of life in general. "How'd you figure out the buffer allocation problem?" "Oh, I zenned it." Contrastgrok, which connotes a time-extended version of zenning a system. Comparehack mode. See alsoguru.

Node:

zero

, Next:

zero-content

, Previous:

zen

, Up:

= Z =

zerovt.

1. To set to 0. Usually said of small pieces of data, such as bits or words (esp. in the construction `zero out'). 2. To erase; to discard all data from. Said of disks and directories, where `zeroing' need not involve actually writing zeroes throughout the area being zeroed. One may speak of something being `logically zeroed' rather than being `physically zeroed'. Seescribble.

Node:

zero-content

, Next:

Zero-One-Infinity Rule

, Previous:

zero

, Up:

= Z =

zero-contentadj.

Syn.content-free.

Node:

Zero-One-Infinity Rule

, Next:

zeroth

, Previous:

zero-content

, Up:

= Z =

Zero-One-Infinity Ruleprov.

"Allow none offoo, one offoo, or any number offoo." A rule of thumb for software design, which instructs one to not placerandomlimits on the number of instances of a given entity (such as: windows in a window system, letters in an OS's filenames, etc.). Specifically, one should either disallow the entity entirely, allow exactly one instance (an "exception"), or allow as many as the user wants - address space and memory permitting.

The logic behind this rule is that there are often situations where it makes clear sense to allow one of something instead of none. However, if one decides to go further and allow N (for N > 1), then why not N+1? And if N+1, then why not N+2, and so on? Once above 1, there's no excuse not to allow any N; hence,infinity.

Many hackers recall in this connection Isaac Asimov's SF novel "The Gods Themselves" in which a character announces that the number 2 is impossible - if you're going to believe in more than one universe, you might as well believe in an infinite number of them.

Node:

zeroth

, Next:

zigamorph

, Previous:

Zero-One-Infinity Rule

, Up:

= Z =

zeroth/zee'rohth/ adj.

First. Among software designers, comes from C's and LISP's 0-based indexing of arrays. Hardware people also tend to start counting at 0 instead of 1; this is natural since, e.g., the 256 states of 8 bits correspond to the binary numbers 0, 1,..., 255 and the digital devices known as `counters' count in this way.

Hackers and computer scientists often like to call the first chapter of a publication `Chapter 0', especially if it is of an introductory nature (one of the classic instances was in the First Edition ofK&R). In recent years this trait has also been observed among many pure mathematicians (who have an independent tradition of numbering from 0). Zero-based numbering tends to reducefencepost errors, though it cannot eliminate them entirely.

Node:

zigamorph

, Next:

zip

, Previous:

zeroth

, Up:

= Z =

zigamorph/zig'*-morf/ n.

1. Hex FF (11111111) when used as a delimiter orfencecharacter. Usage: primarily at IBM shops. 2. [proposed] n. The Unicode non-character U+FFFF (1111111111111111), a character code which is not assigned to any character, and so is usable as end-of-string. (Unicode is a 16-bit character code intended to cover all of the world's writing systems, including Latin, Greek, Cyrillic, Chinese, hiragana, katakana, Devanagari, Thai, Laotian and many other scripts - support forelvishis planned for a future release).

Node:

zip

, Next:

zipperhead

, Previous:

zigamorph

, Up:

= Z =

zipvt.

[primarily MS-DOS] To create a compressed archive from a group of files using PKWare's PKZIP or a compatible archiver. Its use is spreading now that portable implementations of the algorithm have been written. Commonly used as follows: "I'll zip it up and send it to you." Seetar and feather.

Node:

zipperhead

, Next:

zombie

, Previous:

zip

, Up:

= Z =

zipperheadn.

[IBM] A person with a closed mind.

Node:

zombie

, Next:

zorch

, Previous:

zipperhead

, Up:

= Z =

zombien.

[Unix] A process that has died but has not yet relinquished its process table slot (because the parent process hasn't executed await(2)for it yet). These can be seen inps(1)listings occasionally. Compareorphan.

Node:

zorch

, Next:

Zork

, Previous:

zombie

, Up:

= Z =

zorch/zorch/

1. [TMRC] v. To attack with an inverse heat sink. 2. [TMRC] v. To travel, with v approaching c [that is, with velocity approaching lightspeed --ESR]. 3. [MIT] v. To propel something very quickly. "The new comm software is very fast; it really zorches files through the network." 4. [MIT] n. Influence. Brownie points. Good karma. The intangible and fuzzy currency in which favors are measured. "I'd rather not ask him for that just yet; I think I've used up my quota of zorch with him for the week." 5. [MIT] n. Energy, drive, or ability. "I think I'llpuntthat change for now; I've been up for 30 hours and I've run out of zorch." 6. [MIT] v. To flunk an exam or course.

Node:

Zork

, Next:

zorkmid

, Previous:

zorch

, Up:

= Z =

Zork/zork/ n.

The second of the great early experiments in computer fantasy gaming; seeADVENT. Originally written on MIT-DM during 1977-1979, later distributed with BSD Unix (as a patched, sourceless RT-11 FORTRAN binary; seeretrocomputing) and commercialized as `The Zork Trilogy' byInfocom. The FORTRAN source was later rewritten for portability and released to Usenet under the name "Dungeon". Both FORTRAN "Dungeon" and translated C versions are available at many FTP sites. See alsogrue.

Node:

zorkmid

, Previous:

Zork

, Up:

= Z =

zorkmid/zork'mid/ n.

The canonical unit of currency in hacker-written games. This originated inZorkbut has spread tonethackand is referred to in several other games.

(Lexicon Entries End Here)

Node:

Appendix A

, Next:

Appendix B

, Previous:

The Jargon Lexicon

, Up:

Top

This appendix contains several legends and fables that illuminate the meaning of various entries in the lexicon.

Node:

The Meaning of Hack

, Next:

TV Typewriters

, Previous:

Appendix A

, Up:

Appendix A

"The wordhackdoesn't really have 69 different meanings", according to MIT hacker Phil Agre. "In fact,hackhas only one meaning, an extremely subtle and profound one which defies articulation. Which connotation is implied by a given use of the word depends in similarly profound ways on the context. Similar remarks apply to a couple of other hacker words, most notablyrandom."

Hacking might be characterized as `an appropriate application of ingenuity'. Whether the result is a quick-and-dirty patchwork job or a carefully crafted work of art, you have to admire the cleverness that went into it.

An important secondary meaning ofhackis `a creative practical joke'. This kind of hack is easier to explain to non-hackers than the programming kind. Of course, some hacks have both natures; see the lexicon entries forpseudoandkgbvax. But here are some examples of pure practical jokes that illustrate the hacking spirit:

In 1961, students from Caltech (California Institute of Technology, in Pasadena) hacked the Rose Bowl football game. One student posed as a reporter and `interviewed' the director of the University of Washington card stunts (such stunts involve people in the stands who hold up colored cards to make pictures). The reporter learned exactly how the stunts were operated, and also that the director would be out to dinner later.While the director was eating, the students (who called themselves the `Fiendish Fourteen') picked a lock and stole a blank direction sheet for the card stunts. They then had a printer run off 2300 copies of the blank. The next day they picked the lock again and stole the master plans for the stunts -- large sheets of graph paper colored in with the stunt pictures. Using these as a guide, they made new instructions for three of the stunts on the duplicated blanks. Finally, they broke in once more, replacing the stolen master plans and substituting the stack of diddled instruction sheets for the original set.The result was that three of the pictures were totally different. Instead of `WASHINGTON', the word ``CALTECH' was flashed. Another stunt showed the word `HUSKIES', the Washington nickname, but spelled it backwards. And what was supposed to have been a picture of a husky instead showed a beaver. (Both Caltech and MIT use the beaver -- nature's engineer -- as a mascot.)After the game, the Washington faculty athletic representative said: "Some thought it ingenious; others were indignant." The Washington student body president remarked: "No hard feelings, but at the time it was unbelievable. We were amazed."

While the director was eating, the students (who called themselves the `Fiendish Fourteen') picked a lock and stole a blank direction sheet for the card stunts. They then had a printer run off 2300 copies of the blank. The next day they picked the lock again and stole the master plans for the stunts -- large sheets of graph paper colored in with the stunt pictures. Using these as a guide, they made new instructions for three of the stunts on the duplicated blanks. Finally, they broke in once more, replacing the stolen master plans and substituting the stack of diddled instruction sheets for the original set.

The result was that three of the pictures were totally different. Instead of `WASHINGTON', the word ``CALTECH' was flashed. Another stunt showed the word `HUSKIES', the Washington nickname, but spelled it backwards. And what was supposed to have been a picture of a husky instead showed a beaver. (Both Caltech and MIT use the beaver -- nature's engineer -- as a mascot.)

After the game, the Washington faculty athletic representative said: "Some thought it ingenious; others were indignant." The Washington student body president remarked: "No hard feelings, but at the time it was unbelievable. We were amazed."

This is now considered a classic hack, particularly because revising the direction sheets constituted a form of programming.

Here is another classic hack:

On November 20, 1982, MIT hacked the Harvard-Yale football game. Just after Harvard's second touchdown against Yale, in the first quarter, a small black ball popped up out of the ground at the 40-yard line, and grew bigger, and bigger, and bigger. The letters `MIT' appeared all over the ball. As the players and officials stood around gawking, the ball grew to six feet in diameter and then burst with a bang and a cloud of white smoke.The "Boston Globe" later reported: "If you want to know the truth, MIT won The Game."The prank had taken weeks of careful planning by members of MIT's Delta Kappa Epsilon fraternity. The device consisted of a weather balloon, a hydraulic ram powered by Freon gas to lift it out of the ground, and a vacuum-cleaner motor to inflate it. They made eight separate expeditions to Harvard Stadium between 1 and 5A.M., locating an unused 110-volt circuit in the stadium and running buried wires from the stadium circuit to the 40-yard line, where they buried the balloon device. When the time came to activate the device, two fraternity members had merely to flip a circuit breaker and push a plug into an outlet.This stunt had all the earmarks of a perfect hack: surprise, publicity, the ingenious use of technology, safety, and harmlessness. The use of manual control allowed the prank to be timed so as not to disrupt the game (it was set off between plays, so the outcome of the game would not be unduly affected). The perpetrators had even thoughtfully attached a note to the balloon explaining that the device was not dangerous and contained no explosives.Harvard president Derek Bok commented: "They have an awful lot of clever people down there at MIT, and they did it again." President Paul E. Gray of MIT said: "There is absolutely no truth to the rumor that I had anything to do with it, but I wish there were."

The "Boston Globe" later reported: "If you want to know the truth, MIT won The Game."

The prank had taken weeks of careful planning by members of MIT's Delta Kappa Epsilon fraternity. The device consisted of a weather balloon, a hydraulic ram powered by Freon gas to lift it out of the ground, and a vacuum-cleaner motor to inflate it. They made eight separate expeditions to Harvard Stadium between 1 and 5A.M., locating an unused 110-volt circuit in the stadium and running buried wires from the stadium circuit to the 40-yard line, where they buried the balloon device. When the time came to activate the device, two fraternity members had merely to flip a circuit breaker and push a plug into an outlet.

This stunt had all the earmarks of a perfect hack: surprise, publicity, the ingenious use of technology, safety, and harmlessness. The use of manual control allowed the prank to be timed so as not to disrupt the game (it was set off between plays, so the outcome of the game would not be unduly affected). The perpetrators had even thoughtfully attached a note to the balloon explaining that the device was not dangerous and contained no explosives.

Harvard president Derek Bok commented: "They have an awful lot of clever people down there at MIT, and they did it again." President Paul E. Gray of MIT said: "There is absolutely no truth to the rumor that I had anything to do with it, but I wish there were."

The hacks above are verifiable history; they can be proved to have happened. Many other classic-hack stories from MIT and elsewhere, though retold as history, have the characteristics of what Jan Brunvand has called `urban folklore' (seeFOAF). Perhaps the best known of these is the legend of the infamous trolley-car hack, an alleged incident in which engineering students are said to have welded a trolley car to its tracks with thermite. Numerous versions of this have been recorded from the 1940s to the present, most set at MIT but at least one very detailed version set at CMU.

Brian Leibowitz has researched MIT hacks both real and mythical extensively; the interested reader is referred to his delightful pictorial compendium "The Journal of the Institute for Hacks, Tomfoolery, and Pranks" (MIT Museum, 1990; ISBN 0-917027-03-5). The Institute has a World Wide Web page athttp://hacks.mit.edu/Hacks/Gallery.html. There is rumored to be a sequel entitled "Is This The Way To Baker Street?". The Caltech Alumni Association has published two similar books titled "Legends of Caltech" and "More Legends of Caltech".

Finally, here is a story about one of the classic computer hacks.

Back in the mid-1970s, several of the system support staff at Motorola discovered a relatively simple way to crack system security on the Xerox CP-V timesharing system. Through a simple programming strategy, it was possible for a user program to trick the system into running a portion of the program in `master mode' (supervisor state), in which memory protection does not apply. The program could then poke a large value into its `privilege level' byte (normally write-protected) and could then proceed to bypass all levels of security within the file-management system, patch the system monitor, and do numerous other interesting things. In short, the barn door was wide open.Motorola quite properly reported this problem to Xerox via an official `level 1 SIDR' (a bug report with an intended urgency of `needs to be fixed yesterday'). Because the text of each SIDR was entered into a database that could be viewed by quite a number of people, Motorola followed the approved procedure: they simply reported the problem as `Security SIDR', and attached all of the necessary documentation, ways-to-reproduce, etc.The CP-V people at Xerox sat on their thumbs; they either didn't realize the severity of the problem, or didn't assign the necessary operating-system-staff resources to develop and distribute an official patch.Months passed. The Motorola guys pestered their Xerox field-support rep, to no avail. Finally they decided to take direct action, to demonstrate to Xerox management just how easily the system could be cracked and just how thoroughly the security safeguards could be subverted.They dug around in the operating-system listings and devised a thoroughly devilish set of patches. These patches were then incorporated into a pair of programs called `Robin Hood' and `Friar Tuck'. Robin Hood and Friar Tuck were designed to run as `ghost jobs' (daemons, in Unix terminology); they would use the existing loophole to subvert system security, install the necessary patches, and then keep an eye on one another's statuses in order to keep the system operator (in effect, the superuser) from aborting them.One fine day, the system operator on the main CP-V software development system in El Segundo was surprised by a number of unusual phenomena. These included the following:Tape drives would rewind and dismount their tapes in the middle of a job.Disk drives would seek back and forth so rapidly that they would attempt to walk across the floor (seewalking drives).The card-punch output device would occasionally start up of itself and punch alace card. These would usually jam in the punch.The console would print snide and insulting messages from Robin Hood to Friar Tuck, or vice versa.The Xerox card reader had two output stackers; it could be instructed to stack into A, stack into B, or stack into A (unless a card was unreadable, in which case the bad card was placed into stacker B). One of the patches installed by the ghosts added some code to the card-reader driver...after reading a card, it would flip over to the opposite stacker. As a result, card decks would divide themselves in half when they were read, leaving the operator to recollate them manually.Naturally, the operator called in the operating-system developers. They found the bandit ghost jobs running, andgunned them...and were once again surprised. When Robin Hood was gunned, the following sequence of events took place:!X id1id1: Friar Tuck... I am under attack!  Pray save me!id1: Off (aborted)id2: Fear not, friend Robin!  I shall rout the Sheriffof Nottingham's men!id1: Thank you, my good fellow!Each ghost-job would detect the fact that the other had been killed, and would start a new copy of the recently slain program within a few milliseconds. The only way to kill both ghosts was to kill them simultaneously (very difficult) or to deliberately crash the system.Finally, the system programmers did the latter -- only to find that the bandits appeared once again when the system rebooted! It turned out that these two programs had patched the boot-time OS image (the kernel file, in Unix terms) and had added themselves to the list of programs that were to be started at boot time (this is similar to the way MS-DOS viruses propagate).The Robin Hood and Friar Tuck ghosts were finally eradicated when the system staff rebooted the system from a clean boot-tape and reinstalled the monitor. Not long thereafter, Xerox released a patch for this problem.It is alleged that Xerox filed a complaint with Motorola's management about the merry-prankster actions of the two employees in question. It is not recorded that any serious disciplinary action was taken against either of them.

Motorola quite properly reported this problem to Xerox via an official `level 1 SIDR' (a bug report with an intended urgency of `needs to be fixed yesterday'). Because the text of each SIDR was entered into a database that could be viewed by quite a number of people, Motorola followed the approved procedure: they simply reported the problem as `Security SIDR', and attached all of the necessary documentation, ways-to-reproduce, etc.

The CP-V people at Xerox sat on their thumbs; they either didn't realize the severity of the problem, or didn't assign the necessary operating-system-staff resources to develop and distribute an official patch.

Months passed. The Motorola guys pestered their Xerox field-support rep, to no avail. Finally they decided to take direct action, to demonstrate to Xerox management just how easily the system could be cracked and just how thoroughly the security safeguards could be subverted.

They dug around in the operating-system listings and devised a thoroughly devilish set of patches. These patches were then incorporated into a pair of programs called `Robin Hood' and `Friar Tuck'. Robin Hood and Friar Tuck were designed to run as `ghost jobs' (daemons, in Unix terminology); they would use the existing loophole to subvert system security, install the necessary patches, and then keep an eye on one another's statuses in order to keep the system operator (in effect, the superuser) from aborting them.

One fine day, the system operator on the main CP-V software development system in El Segundo was surprised by a number of unusual phenomena. These included the following:

Naturally, the operator called in the operating-system developers. They found the bandit ghost jobs running, andgunned them...and were once again surprised. When Robin Hood was gunned, the following sequence of events took place:

!X id1id1: Friar Tuck... I am under attack!  Pray save me!id1: Off (aborted)id2: Fear not, friend Robin!  I shall rout the Sheriffof Nottingham's men!id1: Thank you, my good fellow!

Each ghost-job would detect the fact that the other had been killed, and would start a new copy of the recently slain program within a few milliseconds. The only way to kill both ghosts was to kill them simultaneously (very difficult) or to deliberately crash the system.

Finally, the system programmers did the latter -- only to find that the bandits appeared once again when the system rebooted! It turned out that these two programs had patched the boot-time OS image (the kernel file, in Unix terms) and had added themselves to the list of programs that were to be started at boot time (this is similar to the way MS-DOS viruses propagate).

The Robin Hood and Friar Tuck ghosts were finally eradicated when the system staff rebooted the system from a clean boot-tape and reinstalled the monitor. Not long thereafter, Xerox released a patch for this problem.

It is alleged that Xerox filed a complaint with Motorola's management about the merry-prankster actions of the two employees in question. It is not recorded that any serious disciplinary action was taken against either of them.


Back to IndexNext