Skip to content

Chapter D: C. Power Lab n (15)

Text size

[ITS] A display hack originally due to Bill Gosper. Many convergent lines are drawn on a color monitor in such a way that every pixel struck has its color incremented. The lines all have one endpoint in the middle of the screen; the other endpoints are spaced one pixel apart around the perimeter of a large square. The color map is then repeatedly rotated. This results in a striking, rainbow-hued, shimmering four-leaf clover. Gosper joked about keeping it hidden from the FDA (the U.S.'s Food and Drug Administration) lest its hallucinogenic properties cause it to be banned.

Node:smoot, Next:SMOP, Previous:smoking clover, Up:= S =

smoot /smoot/ n.

[MIT] A unit of length equal five feet seven inches. The length of the Harvard Bridge in Boston is famously 364.4 smoots plus or minus an ear (the ear stands for epsilon). This legend began with a fraternity prank in 1958 during which the body length of Oliver Smoot (class of '62) was actually used to measure out that distance. It is commemorated by smoot marks that MIT students repaint every few years; the tradition even survived the demolition and rebuilding of the bridge in the late 1980s. The Boston police have been known to use smoot markers to indicate accident locations on the bridge.

Node:SMOP, Next:smurf, Previous:smoot, Up:= S =

SMOP /S-M-O-P/ n.

[Simple (or Small) Matter of Programming] 1. A piece of code, not yet written, whose anticipated length is significantly greater than its complexity. Used to refer to a program that could obviously be written, but is not worth the trouble. Also used ironically to imply that a difficult problem can be easily solved because a program can be written to do it; the irony is that it is very clear that writing such a program will be a great deal of work. "It's easy to enhance a FORTRAN compiler to compile COBOL as well; it's just an SMOP." 2. Often used ironically by the intended victim when a suggestion for a program is made which seems easy to the suggester, but is obviously (to the victim) a lot of work.

Node:smurf, Next:SNAFU principle, Previous:SMOP, Up:= S =

smurf /smerf/ n.

1. [from the _soc.motss_ newsgroup on Usenet, after some obnoxiously gooey cartoon characters] A newsgroup regular with a habitual style that is irreverent, silly, and _cute_. Like many other hackish terms for people, this one may be praise or insult depending on who uses it. In general, being referred to as a smurf is probably not going to make your day unless you've previously adopted the label yourself in a spirit of irony. Compare old fart. 2. [techspeak] A ping packet with a forged source address sent to some other network's broadcast address. All the machines on the destination network will send a ping response to the forged source address (the victim). This both overloads the victim's network and hides the location of the attacker.

Node:SNAFU principle, Next:snail, Previous:smurf, Up:= S =

SNAFU principle /sna'foo prin'si-pl/ n.

[from a WWII Army acronym for `Situation Normal, All Fucked Up'] "True communication is possible only between equals, because inferiors are more consistently rewarded for telling their superiors pleasant lies than for telling the truth." -- a central tenet of Discordianism, often invoked by hackers to explain why authoritarian hierarchies screw up so reliably and systematically. The effect of the SNAFU principle is a progressive disconnection of decision-makers from reality. This lightly adapted version of a fable dating back to the early 1960s illustrates the phenomenon perfectly:

In the beginning was the plan,

and then the specification;

And the plan was without form,

and the specification was void.

And darkness

was on the faces of the implementors thereof;

And they spake unto their leader,

saying:

"It is a crock of shit,

and smells as of a sewer."

And the leader took pity on them,

and spoke to the project leader:

"It is a crock of excrement,

and none may abide the odor thereof."

And the project leader

spake unto his section head, saying:

"It is a container of excrement,

and it is very strong, such that none may abide it."

The section head then hurried to his department manager,

and informed him thus:

"It is a vessel of fertilizer,

and none may abide its strength."

The department manager carried these words

to his general manager,

and spoke unto him

saying:

"It containeth that which aideth the growth of plants,

and it is very strong."

And so it was that the general manager rejoiced

and delivered the good news unto the Vice President.

"It promoteth growth,

and it is very powerful."

The Vice President rushed to the President's side,

and joyously exclaimed:

"This powerful new software product

will promote the growth of the company!"

And the President looked upon the product,

and saw that it was very good.

After the subsequent and inevitable disaster, the suits protect themselves by saying "I was misinformed!", and the implementors are demoted or fired. Compare Conway's Law.

Node:snail, Next:snail-mail, Previous:SNAFU principle, Up:= S =

snail vt.

To snail-mail something. "Snail me a copy of those graphics, will you?"

Node:snail-mail, Next:snap, Previous:snail, Up:= S =

snail-mail n.

Paper mail, as opposed to electronic. Sometimes written as the single word `SnailMail'. One's postal address is, correspondingly, a `snail address'. Derives from earlier coinage `USnail' (from `U.S. Mail'), for which there have even been parody posters and stamps made. Also (less commonly) called `P-mail', from `paper mail' or `physical mail'. Oppose email.

Node:snap, Next:snarf, Previous:snail-mail, Up:= S =

snap v.

To replace a pointer to a pointer with a direct pointer; to replace an old address with the forwarding address found there. If you telephone the main number for an institution and ask for a particular person by name, the operator may tell you that person's extension before connecting you, in the hopes that you will `snap your pointer' and dial direct next time. The underlying metaphor may be that of a rubber band stretched through a number of intermediate points; if you remove all the thumbtacks in the middle, it snaps into a straight line from first to last. See chase pointers.

Often, the behavior of a trampoline is to perform an error check once and then snap the pointer that invoked it so as henceforth to bypass the trampoline (and its one-shot error check). In this context one also speaks of `snapping links'. For example, in a LISP implementation, a function interface trampoline might check to make sure that the caller is passing the correct number of arguments; if it is, and if the caller and the callee are both compiled, then snapping the link allows that particular path to use a direct procedure-call instruction with no further overhead.

Node:snarf, Next:snarf & barf, Previous:snap, Up:= S =

snarf /snarf/ vt.

1. To grab, esp. to grab a large document or file for the purpose of using it with or without the author's permission. See also BLT. 2. [in the Unix community] To fetch a file or set of files across a network. See also blast. This term was mainstream in the late 1960s, meaning `to eat piggishly'. It may still have this connotation in context. "He's in the snarfing phase of hacking -- FTPing megs of stuff a day." 3. To acquire, with little concern for legal forms or _politesse_ (but not quite by stealing). "They were giving away samples, so I snarfed a bunch of them." 4. Syn. for slurp. "This program starts by snarfing the entire database into core, then...." 5. [GEnie] To spray food or programming fluids due to laughing at the wrong moment. "I was drinking coffee, and when I read your post I snarfed all over my desk." "If I keep reading this topic, I think I'll have to snarf-proof my computer with a keyboard condom." [This sense appears to be widespread among mundane teenagers --ESR]

Node:snarf & barf, Next:snarf down, Previous:snarf, Up:= S =

snarf & barf /snarf'n-barf`/ n.

Under a WIMP environment, the act of grabbing a region of text and then stuffing the contents of that region into another region (or the same one) to avoid retyping a command line. In the late 1960s, this was a mainstream expression for an `eat now, regret it later' cheap-restaurant expedition.

Node:snarf down, Next:snark, Previous:snarf & barf, Up:= S =

snarf down v.

To snarf, with the connotation of absorbing, processing, or understanding. "I'll snarf down the latest version of the nethack user's guide -- it's been a while since I played last and I don't know what's changed recently."

Node:snark, Next:sneaker, Previous:snarf down, Up:= S =

snark n.

[Lewis Carroll, via the Michigan Terminal System] 1. A system failure. When a user's process bombed, the operator would get the message "Help, Help, Snark in MTS!" 2. More generally, any kind of unexplained or threatening event on a computer (especially if it might be a boojum). Often used to refer to an event or a log file entry that might indicate an attempted security violation. See snivitz. 3. UUCP name of _snark.thyrsus.com_, home site of the Jargon File versions from 2.*.* on (i.e., this lexicon).

Node:sneaker, Next:sneakernet, Previous:snark, Up:= S =

sneaker n.

An individual hired to break into places in order to test their security; analogous to tiger team. Compare samurai.

Node:sneakernet, Next:sniff, Previous:sneaker, Up:= S =

sneakernet /snee'ker-net/ n.

Term used (generally with ironic intent) for transfer of electronic information by physically carrying tape, disks, or some other media from one machine to another. "Never underestimate the bandwidth of a station wagon filled with magtape, or a 747 filled with CD-ROMs." Also called `Tennis-Net', `Armpit-Net', `Floppy-Net' or `Shoenet'; in the 1990s, `Nike network' after a well-known sneaker brand.

Node:sniff, Next:snivitz, Previous:sneakernet, Up:= S =

sniff v.,n.

1. To watch IP packets traversing a local network. Most often in the phrase `packet sniffer', a program for doing same. 2.Synonym for poll.

Node:snivitz, Next:'Snooze, Previous:sniff, Up:= S =

snivitz /sniv'itz/ n.

A hiccup in hardware or software; a small, transient problem of unknown origin (less serious than a snark). Compare glitch.

Node:'Snooze, Next:SO, Previous:snivitz, Up:= S =

'Snooze /snooz/ [FidoNet] n.

Fidonews, the weekly official on-line newsletter of FidoNet. As the editorial policy of Fidonews is "anything that arrives, we print", there are often large articles completely unrelated to FidoNet, which in turn tend to elicit flamage in subsequent issues.

Node:SO, Next:social engineering, Previous:'Snooze, Up:= S =

SO /S-O/ n.

1. (also `S.O.') Abbrev. for Significant Other, almost invariably written abbreviated and pronounced /S-O/ by hackers. Used to refer to one's primary relationship, esp. a live-in to whom one is not married. See MOTAS, MOTOS, MOTSS. 2. [techspeak] The Shift Out control character in ASCII (Control-N, 0001110).

Node:social engineering, Next:social science number, Previous:SO, Up:= S =

social engineering n.

Term used among crackers and samurai for cracking techniques that rely on weaknesses in wetware rather than software; the aim is to trick people into revealing passwords or other information that compromises a target system's security. Classic scams include phoning up a mark who has the required information and posing as a field service tech or a fellow employee with an urgent access problem. See also the tiger team story in the patch entry.

Node:social science number, Next:sock puppet, Previous:social engineering, Up:= S =

social science number n. //

[IBM] A statistic that is content-free, or nearly so. A measure derived via methods of questionable validity from data of a dubious and vague nature. Predictively, having a social science number in hand is seldom much better than nothing, and can be considerably worse. As a rule, management loves them. See also numbers, math-out, pretty pictures.

Node:sock puppet, Next:sodium substrate, Previous:social science number, Up:= S =

sock puppet n.

[Usenet: from the act of placing a sock over your hand and talking to it and pretending it's talking back] In Usenet parlance, a pseudo through which the puppeteer posts follow-ups to their own original message to give the appearance that a number of people support the views held in the original message.

Node:sodium substrate, Next:soft boot, Previous:sock puppet, Up:= S =

sodium substrate n.

Syn salt substrate.

Node:soft boot, Next:softcopy, Previous:sodium substrate, Up:= S =

soft boot n.

See boot.

Node:softcopy, Next:software bloat, Previous:soft boot, Up:= S =

softcopy /soft'kop-ee/ n.

[by analogy with `hardcopy'] A machine-readable form of corresponding hardcopy. See bits, machinable.

Node:software bloat, Next:software hoarding, Previous:softcopy, Up:= S =

software bloat n.

The results of second-system effect or creeping featuritis. Commonly cited examples include ls(1), X, BSD, Missed'em-five, and OS/2.

Node:software hoarding, Next:software laser, Previous:software bloat, Up:= S =

software hoarding n.

Pejorative term employed by members and adherents of the GNU project to describe the act of holding software proprietary, keeping it under trade secret or license terms which prohibit free redistribution and modification. Used primarily in Free Software Foundation propaganda. For a summary of related issues, see GNU.

Node:software laser, Next:software rot, Previous:software hoarding, Up:= S =

software laser n.

An optical laser works by bouncing photons back and forth between two mirrors, one totally reflective and one partially reflective. If the lasing material (usually a crystal) has the right properties, photons scattering off the atoms in the crystal will excite cascades of more photons, all in lockstep. Eventually the beam will escape through the partially-reflective mirror. One kind of sorcerer's apprentice mode involving bounce messages can produce closely analogous results, with a cascade of messages escaping to flood nearby systems. By mid-1993 there had been at least two publicized incidents of this kind.

Node:software rot, Next:softwarily, Previous:software laser, Up:= S =

software rot n.

Term used to describe the tendency of software that has not been used in a while to lose; such failure may be semi-humorously ascribed to bit rot. More commonly, `software rot' strikes when a program's assumptions become out of date. If the design was insufficiently robust, this may cause it to fail in mysterious ways. Syn. `code rot'. See also link rot.

For example, owing to endemic shortsightedness in the design of COBOL programs, a good number of them succumbed to software rot when their 2-digit year counters underwent wrap around at the beginning of the year 2000. Actually, related lossages often afflict centenarians who have to deal with computer software designed by unimaginative clods. One such incident became the focus of a minor public flap in 1990, when a gentleman born in 1889 applied for a driver's license renewal in Raleigh, North Carolina. The new system refused to issue the card, probably because with 2-digit years the ages 101 and 1 cannot be distinguished.

Historical note: Software rot in an even funnier sense than the mythical one was a real problem on early research computers (e.g., the R1; see grind crank). If a program that depended on a peculiar instruction hadn't been run in quite a while, the user might discover that the opcodes no longer did the same things they once did. ("Hey, so-and-so needs an instruction to do such-and-such. We can snarf this opcode, right? No one uses it.")

Another classic example of this sprang from the time an MIT hacker found a simple way to double the speed of the unconditional jump instruction on a PDP-6, so he patched the hardware. Unfortunately, this broke some fragile timing software in a music-playing program, throwing its output out of tune. This was fixed by adding a defensive initialization routine to compare the speed of a timing loop with the real-time clock; in other words, it figured out how fast the PDP-6 was that day, and corrected appropriately.

Compare bit rot.

Node:softwarily, Next:softy, Previous:software rot, Up:= S =

softwarily /soft-weir'i-lee/ adv.

In a way pertaining to software. "The system is softwarily unreliable." The adjective **`softwary' is not used. See hardwarily.

Node:softy, Next:some random X, Previous:softwarily, Up:= S =

softy n.

[IBM] Hardware hackers' term for a software expert who is largely ignorant of the mysteries of hardware.

Node:some random X, Next:sorcerer's apprentice mode, Previous:softy, Up:= S =

some random X adj.

Used to indicate a member of class X, with the implication that Xs are interchangeable. "I think some random cracker tripped over the guest timeout last night." See also J. Random.

Node:sorcerer's apprentice mode, Next:SOS, Previous:some random X, Up:= S =

sorcerer's apprentice mode n.

[from Goethe's "Der Zauberlehrling" via Paul Dukas's "L'apprenti sorcier" the film "Fantasia"] A bug in a protocol where, under some circumstances, the receipt of a message causes multiple messages to be sent, each of which, when received, triggers the same bug. Used esp. of such behavior caused by bounce message loops in email software. Compare broadcast storm, network meltdown, software laser, ARMM.

Node:SOS, Next:source, Previous:sorcerer's apprentice mode, Up:= S =

SOS /S-O-S/

n.,obs. An infamously losing text editor. Once, back in the 1960s, when a text editor was needed for the PDP-6, a hacker crufted together a quick-and-dirty `stopgap editor' to be used until a better one was written. Unfortunately, the old one was never really discarded when new ones came along. SOS is a descendant (`Son of Stopgap') of that editor, and many PDP-10 users gained the dubious pleasure of its acquaintance. Since then other programs similar in style to SOS have been written, notably the early font editor BILOS /bye'lohs/, the Brother-In-Law Of Stopgap (the alternate expansion `Bastard Issue, Loins of Stopgap' has been proposed).

Node:source, Next:source of all good bits, Previous:SOS, Up:= S =

source n.

[very common] In reference to software, `source' is invariably shorthand for `source code', the preferred human-readable and human-modifiable form of the program. This is as opposed to object code, the derived binary executable form of a program. This shorthand readily takes derivative forms; one may speak of "the sources of a system" or of "having source".

Node:source of all good bits, Next:space-cadet keyboard, Previous:source, Up:= S =

source of all good bits n.

A person from whom (or a place from which) useful information may be obtained. If you need to know about a program, a guru might be the source of all good bits. The title is often applied to a particularly competent secretary.

Node:space-cadet keyboard, Next:spaceship operator, Previous:source of all good bits, Up:= S =

space-cadet keyboard n.

A now-legendary device used on MIT LISP machines, which inspired several still-current jargon terms and influenced the design of EMACS. It was equipped with no fewer than seven shift keys: four keys for bucky bits (`control', `meta', `hyper', and `super') and three like regular shift keys, called `shift', `top', and `front'. Many keys had three symbols on them: a letter and a symbol on the top, and a Greek letter on the front. For example, the `L' key had an `L' and a two-way arrow on the top, and the Greek letter lambda on the front. By pressing this key with the right hand while playing an appropriate `chord' with the left hand on the shift keys, you could get the following results:

L

lowercase l

shift-L

uppercase L

front-L

lowercase lambda

front-shift-L

uppercase lambda

top-L

two-way arrow (front and shift are ignored)

And of course each of these might also be typed with any combination of the control, meta, hyper, and super keys. On this keyboard, you could type over 8000 different characters! This allowed the user to type very complicated mathematical text, and also to have thousands of single-character commands at his disposal. Many hackers were actually willing to memorize the command meanings of that many characters if it reduced typing time (this attitude obviously shaped the interface of EMACS). Other hackers, however, thought having that many bucky bits was overkill, and objected that such a keyboard can require three or four hands to operate. See bucky bits, cokebottle, double bucky, meta bit, quadruple bucky.

Note: early versions of this entry incorrectly identified the space-cadet keyboard with the `Knight keyboard'. Though both were designed by Tom Knight, the latter term was properly applied only to a keyboard used for ITS on the PDP-10 and modeled on the Stanford keyboard (as described under bucky bits). The true space-cadet keyboard evolved from the first Knight keyboard.

Node:spaceship operator, Next:SPACEWAR, Previous:space-cadet keyboard, Up:= S =

spaceship operator n.

The glyph <=>, so-called apparently because in the low-resolution constant-width font used on many terminals it vaguely resembles a flying saucer. Perl uses this to denote the signum-of-difference operation.

Node:SPACEWAR, Next:spaghetti code, Previous:spaceship operator, Up:= S =

SPACEWAR n.

A space-combat simulation game, inspired by E. E. "Doc" Smith's "Lensman" books, in which two spaceships duel around a central sun, shooting torpedoes at each other and jumping through hyperspace. This game was first implemented on the PDP-1 at MIT in 1962. In 1968-69, a descendant of the game motivated Ken Thompson to build, in his spare time on a scavenged PDP-7, the operating system that became Unix. Less than nine years after that, SPACEWAR was commercialized as one of the first video games; descendants are still feeping in video arcades everywhere.

Node:spaghetti code, Next:spaghetti inheritance, Previous:SPACEWAR, Up:= S =

spaghetti code n.

Code with a complex and tangled control structure, esp. one using many GOTOs, exceptions, or other `unstructured' branching constructs. Pejorative. The synonym `kangaroo code' has been reported, doubtless because such code has so many jumps in it.

Node:spaghetti inheritance, Next:spam, Previous:spaghetti code, Up:= S =

spaghetti inheritance n.

[encountered among users of object-oriented languages that use inheritance, such as Smalltalk] A convoluted class-subclass graph, often resulting from carelessly deriving subclasses from other classes just for the sake of reusing their code. Coined in a (successful) attempt to discourage such practice, through guilt-by-association with spaghetti code.

Node:spam, Next:spam bait, Previous:spaghetti inheritance, Up:= S =

spam vt.,vi.,n.

[from "Monty Python's Flying Circus"] 1. To crash a program by overrunning a fixed-size buffer with excessively large input data. See also buffer overflow, overrun screw, smash the stack. 2. To cause a newsgroup to be flooded with irrelevant or inappropriate messages. You can spam a newsgroup with as little as one well- (or ill-) planned message (e.g. asking "What do you think of abortion?" on _soc.women_). This is often done with cross-posting (e.g. any message which is crossposted to _alt.rush-limbaugh_ and _alt.politics.homosexuality_ will almost inevitably spam both groups). This overlaps with troll behavior; the latter more specific term has become more common. 3. To send many identical or nearly-identical messages separately to a large number of Usenet newsgroups. This is more specifically called `ECP', Excessive Cross-Posting. This is one sure way to infuriate nearly everyone on the Net. See also velveeta and jello. 4. To bombard a newsgroup with multiple copies of a message. This is more specifically called `EMP', Excessive Multi-Posting. 5. To mass-mail unrequested identical or nearly-identical email messages, particularly those containing advertising. Especially used when the mail addresses have been culled from network traffic or databases without the consent of the recipients. Synonyms include UCE, UBE. 6. Any large, annoying, quantity of output. For instance, someone on IRC who walks away from their screen and comes back to find 200 lines of text might say "Oh no, spam".

The later definitions have become much more prevalent as the Internet has opened up to non-techies, and to most people senses 3 4 and 5 are now primary. All three behaviors are considered abuse of the net, and are almost universally grounds for termination of the originator's email account or network connection. In these senses the term `spam' has gone mainstream, though without its original sense or folkloric freight - there is apparently a widespread myth among lusers that "spamming" is what happens when you dump cans of Spam into a revolving fan.

Node:spam bait, Next:spamblock, Previous:spam, Up:= S =

spam bait n.

Email addresses included in, or comprising the entirety of, a usenet message so that spammers mining a newsgroup with an address harvester will collect them. These addresses can be people who have offended or annoyed the poster, or who are included so that a spammer will spam an official, thereby causing himself trouble. One particularly effective form of spam bait is the address of a teergrube.

Node:spamblock, Next:spamhaus, Previous:spam bait, Up:= S =

spamblock /spam'blok/ n.

[poss. by analogy to sunblock] Text inserted in an email address to render it invalid and thus useless to spammers. For example, the address `[email protected]' might be transformed to `[email protected]'. Adding spamblock to an address is often referred to as `munging' it (see munge)-. This evasion tactic depends on the fact that most spammers collect names with some sort of address harvester on volumes too high to de-mung by hand, but individual humans reading an email message can readily spot and remove a spamblock in the from address.

Note: This is not actually a very effective tactic, and may already be passing out of use in early 1999 after about two years of life. In both mail and news, it's essentially impossible to keep a smart address harvester from mining out the addresses in the message header and trace lines. Therefore the only people who can be protected are third parties mentioned by email address in the message - not a common enough case to interest spammers.

Node:spamhaus, Next:spamvertize, Previous:spamblock, Up:= S =

spamhaus spam'hows n.

Pejorative term for an internet service provider that permits or even encourages spam mailings from its systems. The plural is `spamhausen'. There is a web page devoted to tracking spamhausen.

The most notorious of the spamhausen was Sanford Wallace's Cyber Promotions Inc., shut down by a lawsuit on 16 October 1997. The anniversary of the shutdown is celebrated on Usenet as Spam Freedom Day, but lesser imitators of the Spamford still infest various murky corners of the net. Since prosecution of spammers became routine under the junk-fax laws and statues specifically targeting spam, spamhausen have declined in relative importance; today, hit-and-run attacks by spammers using relay rape and throwaway accounts on reputable ISPs seem to account for most of the flow.

Node:spamvertize, Next:spangle, Previous:spamhaus, Up:= S =

spamvertize v.

To advertise using spam. Pejorative.

Node:spangle, Next:spawn, Previous:spamvertize, Up:= S =

spangle n.

[UK] The singular of bells and whistles. See also spungle.

Node:spawn, Next:special-case, Previous:spangle, Up:= S =

spawn n.,vi.

1. [techspeak] In UNIX parlance, to create a child process from within a process. Technically this is a `fork'; the term `spawn' is a bit more general and is used for threads (lightweight processes) as well as traditional heavyweight processes. 2. In gaming, meant to indicate where (`spawn-point') and when a player comes to life (or `re-spawns') after being killed. Opposite of frag.

Node:special-case, Next:speedometer, Previous:spawn, Up:= S =

special-case vt.

To write unique code to handle input to or situations arising in a program that are somehow distinguished from normal processing. This would be used for processing of mode switches or interrupt characters in an interactive interface (as opposed, say, to text entry or normal commands), or for processing of hidden flags in the input of a batch program or filter.

Node:speedometer, Next:spell, Previous:special-case, Up:= S =

speedometer n.

A pattern of lights displayed on a linear set of LEDs (today) or nixie tubes (yesterday, on ancient mainframes). The pattern is shifted left every N times the operating system goes through its main loop. A swiftly moving pattern indicates that the system is mostly idle; the speedometer slows down as the system becomes overloaded. The speedometer on Sun Microsystems hardware bounces back and forth like the eyes on one of the Cylons from the wretched "Battlestar Galactica" TV series.

Historical note: One computer, the GE 600 (later Honeywell 6000) actually had an analog speedometer on the front panel, calibrated in instructions executed per second.

Node:spell, Next:spelling flame, Previous:speedometer, Up:= S =

spell n.

Syn. incantation.

Node:spelling flame, Next:spider, Previous:spell, Up:= S =

spelling flame n. //

[Usenet] A posting ostentatiously correcting a previous article's spelling as a way of casting scorn on the point the article was trying to make, instead of actually responding to that point (compare dictionary flame). Of course, people who are more than usually slovenly spellers are prone to think any correction is a spelling flame. It's an amusing comment on human nature that spelling flames themselves often contain spelling errors.

Node:spider, Next:spider food, Previous:spelling flame, Up:= S =

spider

The Web-walking part of a search engine that collects pages for indexing in the search engine's database. Also called a bot. The best-known spider is Scooter, the web-walker for the Alta Vista search engine.

Node:spider food, Next:spiffy, Previous:spider, Up:= S =

spider food n.

Keywords embedded (usually invisibly) into a web page to attract search engines (spiders). The intended result of including spider food in one's web page is to insure that the page appears high on the list of matching entries to a search engine query. There are right and wrong ways to do this; the right way is a discreet `meta keywords' tag, the wrong way is to embed many repeats of a keyword in comments (and many search engines now detect and ignore the latter).

Node:spiffy, Next:spike, Previous:spider food, Up:= S =

spiffy /spi'fee/ adj.

1. Said of programs having a pretty, clever, or exceptionally well-designed interface. "Have you seen the spiffy X version of empire yet?" 2. Said sarcastically of a program that is perceived to have little more than a flashy interface going for it. Which meaning should be drawn depends delicately on tone of voice and context. This word was common mainstream slang during the 1940s, in a sense close to 1.

Node:spike, Next:spin, Previous:spiffy, Up:= S =

spike v.

To defeat a selection mechanism by introducing a (sometimes temporary) device that forces a specific result. The word is used in several industries; telephone engineers refer to spiking a relay by inserting a pin to hold the relay in either the closed or open state, and railroaders refer to spiking a track switch so that it cannot be moved. In programming environments it normally refers to a temporary change, usually for testing purposes (as opposed to a permanent change, which would be called hardwired).

Node:spin, Next:spl, Previous:spike, Up:= S =

spin vi.

Equivalent to buzz. More common among C and Unix programmers. See the discussion of `spinlock' under busy-wait.

Node:spl, Next:splash screen, Previous:spin, Up:= S =

spl /S-P-L/

[abbrev, from Set Priority Level] The way traditional Unix kernels implement mutual exclusion by running code at high interrupt levels. Used in jargon to describe the act of tuning in or tuning out ordinary communication. Classically, spl levels run from 1 to 7; "Fred's at spl 6 today" would mean that he is very hard to interrupt. "Wait till I finish this; I'll spl down then." See also interrupts locked out.

Node:splash screen, Next:splat, Previous:spl, Up:= S =

splash screen n.

[Mac users] Syn. banner, sense 3.

Node:splat, Next:splat out, Previous:splash screen, Up:= S =

splat n.

1. Name used in many places (DEC, IBM, and others) for the asterisk (*) character (ASCII 0101010). This may derive from the `squashed-bug' appearance of the asterisk on many early line printers. 2. [MIT] Name used by some people for the # character (ASCII 0100011). 3. The feature key on a Mac (same as alt, sense 2). 4. obs. Name used by some people for the Stanford/ITS extended ASCII circle-x character. This character is also called `blobby' and `frob', among other names; it is sometimes used by mathematicians as a notation for `tensor product'. 5. obs. Name for the semi-mythical Stanford extended ASCII circle-plus character. See also ASCII.

Node:splat out, Next:spod, Previous:splat, Up:= S =

splat out v.

[Usenet] To partially obscure a potentially provocative word by substituting splat characters for some of its letters (usually, but not always, the vowels). The purpose is not to make the word unrecognizable but to make it a mention rather than a use, so that no flamewar ensues. Words often splatted out include N*z* (see Godwin's Law), *v*l*t**n (anywhere fundamentalists might be lurking), *b*rt**n, and g*n c*ntr*l. Compare UN*X.

Node:spod, Next:spoiler, Previous:splat out, Up:= S =

spod n.

[UK] 1. A lower form of life found on talker systems and MUDs. The spod has few friends in RL and uses talkers instead, finding communication easier and preferable over the net. He has all the negative traits of the computer geek without having any interest in computers per se. Lacking any knowledge of or interest in how networks work, and considering his access a God-given right, he is a major irritant to sysadmins, clogging up lines in order to reach new MUDs, following passed-on instructions on how to sneak his way onto Internet ("Wow! It's in America!") and complaining when he is not allowed to use busy routes. A true spod will start any conversation with "Are you male or female?" (and follow it up with "Got any good numbers/IDs/passwords?") and will not talk to someone physically present in the same terminal room until they log onto the same machine that he is using and enter talk mode. Compare newbie, tourist, weenie, twink, terminal junkie, warez d00dz. 2. A backronym for "Sole Purpose, Obtain a Degree"; according to some self-described spods, this term is used by indifferent students to condemn their harder-working fellows. Compare the defiant adoption of the term `geek' in the mid-1990s by people who would previously have been stigmatized by it (see computer geek). 3. [obs.] An ordinary person; a random. This is the meaning with which the term was coined, but the inventor informs us he has himself accepted sense 1.

Node:spoiler, Next:spoiler space, Previous:spod, Up:= S =

spoiler n.

[Usenet] 1. A remark which reveals important plot elements from books or movies, thus denying the reader (of the article) the proper suspense when reading the book or watching the movie. 2. Any remark which telegraphs the solution of a problem or puzzle, thus denying the reader the pleasure of working out the correct answer (see also interesting). Either sense readily forms compounds like `total spoiler', `quasi-spoiler' and even `pseudo-spoiler'.

By convention, articles which are spoilers in either sense should contain the word `spoiler' in the Subject: line, or guarantee via various tricks that the answer appears only after several screens-full of warning, or conceal the sensitive information via rot13, spoiler space or some combination of these techniques.

Node:spoiler space, Next:sponge, Previous:spoiler, Up:= S =

spoiler space

[also `spoiler spoo'] A screenful of blank lines (and, often, form-feeds) deliberately inserted in a message following a spoiler warning, so the actual spoiler can't be seen without hitting a key.

Node:sponge, Next:spoof, Previous:spoiler space, Up:= S =

sponge n.

[Unix] A special case of a filter that reads its entire input before writing any output; the canonical example is a sort utility. Unlike most filters, a sponge can conveniently overwrite the input file with the output data stream. If a file system has versioning (as ITS did and VMS does now) the sponge/filter distinction loses its usefulness, because directing filter output would just write a new version. See also slurp.

Node:spoof, Next:spool, Previous:sponge, Up:= S =

spoof vi.

To capture, alter, and retransmit a communication stream in a way that misleads the recipient. As used by hackers, refers especially to altering TCP/IP packet source addresses or other packet-header data in order to masquerade as a trusted machine. This term has become very widespread and is borderline techspeak.

Node:spool, Next:spool file, Previous:spoof, Up:= S =

spool vi.

[from early IBM `Simultaneous Peripheral Operation On-Line', but is widely thought to be a backronym] To send files to some device or program (a `spooler') that queues them up and does something useful with them later. Without qualification, the spooler is the `print spooler' controlling output of jobs to a printer; but the term has been used in connection with other peripherals (especially plotters and graphics devices) and occasionally even for input devices. See also demon.

Node:spool file, Next:spungle, Previous:spool, Up:= S =

spool file n.

Any file to which data is spooled to await the next stage of processing. Especially used in circumstances where spooling the data copes with a mismatch between speeds in two devices or pieces of software. For example, when you send mail under Unix, it's typically copied to a spool file to await a transport demon's attentions. This is borderline techspeak.

Node:spungle, Next:square tape, Previous:spool file, Up:= S =

spungle n.

[Durham, UK; portmanteau, spangle + bungle] A spangle of no actual usefulness. Example: Roger the Bent Paperclip in Microsoft Word '98. A spungle's only virtue is that it looks pretty, unless you find creeping featurism ugly.

Node:square tape, Next:squirrelcide, Previous:spungle, Up:= S =

square tape n.

Mainframe magnetic tape cartridges for use with IBM 3480 or compatible tape drives; or QIC tapes used on workstations and micros. The term comes from the square (actually rectangular) shape of the cartridges; contrast round tape.

Node:squirrelcide, Next:stack, Previous:square tape, Up:= S =

squirrelcide n.

[common on Usenet's _comp.risks_ newsgroup.] (alt. `squirrelicide') What all too frequently happens when a squirrel decides to exercise its species's unfortunate penchant for shorting out power lines with their little furry bodies. Result: one dead squirrel, one down computer installation. In this situation, the computer system is said to have been squirrelcided.

Node:stack, Next:stack puke, Previous:squirrelcide, Up:= S =

stack n.

The set of things a person has to do in the future. One speaks of the next project to be attacked as having risen to the top of the stack. "I'm afraid I've got real work to do, so this'll have to be pushed way down on my stack." "I haven't done it yet because every time I pop my stack something new gets pushed." If you are interrupted several times in the middle of a conversation, "My stack overflowed" means "I forget what we were talking about." The implication is that more items were pushed onto the stack than could be remembered, so the least recent items were lost. The usual physical example of a stack is to be found in a cafeteria: a pile of plates or trays sitting on a spring in a well, so that when you put one on the top they all sink down, and when you take one off the top the rest spring up a bit. See also push and pop.

At MIT, PDL used to be a more common synonym for stack in all these contexts, and this may still be true. Everywhere else stack seems to be the preferred term. Knuth ("The Art of Computer Programming", second edition, vol. 1, p. 236) says:

Many people who realized the importance of stacks and queues independently have given other names to these structures: stacks have been called push-down lists, reversion storages, cellars, nesting stores, piles, last-in-first-out ("LIFO") lists, and even yo-yo lists!

Node:stack puke, Next:stale pointer bug, Previous:stack, Up:= S =

stack puke n.

Some processor architectures are said to `puke their guts onto the stack' to save their internal state during exception processing. The Motorola 68020, for example, regurgitates up to 92 bytes on a bus fault. On a pipelined machine, this can take a while.

Node:stale pointer bug, Next:star out, Previous:stack puke, Up:= S =

stale pointer bug n.

Synonym for aliasing bug used esp. among microcomputer hackers.

Node:star out, Next:state, Previous:stale pointer bug, Up:= S =

star out v.

[University of York, England] To replace a user's encrypted password in /etc/passwd with a single asterisk. Under Unix this is not a legal encryption of any password; hence the user is not permitted to log in. In general, accounts like adm, news, and daemon are permanently "starred out"; occasionally a real user might have the this inflicted upon him/her as a punishment, e.g. "Graham was starred out for playing Omega in working hours". Also occasionally known as The Order Of The Gold Star in this context. "Don't do that, or you'll be awarded the Order of the Gold Star..." Compare disusered.

Node:state, Next:stealth manager, Previous:star out, Up:= S =

state n.

1. Condition, situation. "What's the state of your latest hack?" "It's winning away." "The system tried to read and write the disk simultaneously and got into a totally wedged state." The standard question "What's your state?" means "What are you doing?" or "What are you about to do?" Typical answers are "about to gronk out", or "hungry". Another standard question is "What's the state of the world?", meaning "What's new?" or "What's going on?". The more terse and humorous way of asking these questions would be "State-p?". Another way of phrasing the first question under sense 1 would be "state-p latest hack?". 2. Information being maintained in non-permanent memory (electronic or human).

Node:stealth manager, Next:steam-powered, Previous:state, Up:= S =

stealth manager n.

[Corporate DP] A manager that appears out of nowhere, promises undeliverable software to unknown end users, and vanishes before the programming staff realizes what has happened. See smoke and mirrors.

Node:steam-powered, Next:STFW, Previous:stealth manager, Up:= S =

steam-powered adj.

Old-fashioned or underpowered; archaic. This term does not have a strong negative loading and may even be used semi-affectionately for something that clanks and wheezes a lot but hangs in there doing the job.

Node:STFW, Next:stiffy, Previous:steam-powered, Up:= S =

STFW imp. /S-T-F-W/

[Usenet] Commmon abbreviation for "Search The Fucking Web", a suggestion that what you're asking for is a query better handled by a search engine than a human being. Usage is common and exactly parallel to both senses of RTFM.

Node:stiffy, Next:stir-fried random, Previous:STFW, Up:= S =

stiffy n.

3.5-inch microfloppies, so called because their jackets are more rigid than those of the 5.25-inch and the (now totally obsolete) 8-inch floppy. Elsewhere this might be called a `firmy'. For some odd reason, several sources have taken the trouble to inform us that this term is widespread in South Africa.

Node:stir-fried random, Next:stomp on, Previous:stiffy, Up:= S =

stir-fried random n.

(alt. `stir-fried mumble') Term used for the best dish of many of those hackers who can cook. Consists of random fresh veggies and meat wokked with random spices. Tasty and economical. See random, great-wall, ravs, laser chicken, oriental food; see also mumble.

Node:stomp on, Next:Stone Age, Previous:stir-fried random, Up:= S =

stomp on vt.

To inadvertently overwrite something important, usually automatically. "All the work I did this weekend got stomped on last night by the nightly server script." Compare scribble, mangle, trash, scrog, roach.

Node:Stone Age, Next:stone knives and bearskins, Previous:stomp on, Up:= S =

Stone Age n.,adj.

1. In computer folklore, an ill-defined period from ENIAC (ca. 1943) to the mid-1950s; the great age of electromechanical dinosaurs. Sometimes used for the entire period up to 1960-61 (see Iron Age); however, it is funnier and more descriptive to characterize the latter period in terms of a `Bronze Age' era of transistor-logic, pre-ferrite-core machines with drum or CRT mass storage (as opposed to just mercury delay lines and/or relays). See also Iron Age. 2. More generally, a pejorative for any crufty, ancient piece of hardware or software technology. Note that this is used even by people who were there for the Stone Age (sense 1).

Node:stone knives and bearskins, Next:stoppage, Previous:Stone Age, Up:= S =

stone knives and bearskins n.

[from the Star Trek Classic episode "The City on the Edge of Forever"] A term traditionally used to describe (and deprecate) computing environments that are grotesquely primitive in light of what is known about good ways to design things. As in "Don't get too used to the facilities here. Once you leave SAIL it's stone knives and bearskins as far as the eye can see". Compare steam-powered.

Node:stoppage, Next:store, Previous:stone knives and bearskins, Up:= S =

stoppage /sto'p*j/ n.

Extreme lossage that renders something (usually something vital) completely unusable. "The recent system stoppage was caused by a fried transformer."

Node:store, Next:strided, Previous:stoppage, Up:= S =

store n.

[prob. from techspeak `main store'] In some varieties of Commonwealth hackish, the preferred synonym for core. Thus, `bringing a program into store' means not that one is returning shrink-wrapped software but that a program is being swapped in.

Node:strided, Next:stroke, Previous:store, Up:= S =

strided /stri:'d*d/ adj.

[scientific computing] Said of a sequence of memory reads and writes to addresses, each of which is separated from the last by a constant interval called the `stride length'. These can be a worst-case access pattern for the standard memory-caching schemes when the stride length is a multiple of the cache line size. Strided references are often generated by loops through an array, and (if your data is large enough that access-time is significant) it can be worthwhile to tune for better locality by inverting double loops or by partially unrolling the outer loop of a loop nest. This usage is borderline techspeak; the related term `memory stride' is definitely techspeak.

Node:stroke, Next:strudel, Previous:strided, Up:= S =

stroke n.

Common name for the slant (`/', ASCII 0101111) character. See ASCII for other synonyms.

Node:strudel, Next:stubroutine, Previous:stroke, Up:= S =

strudel n.

Common (spoken) name for the at-sign (`@', ASCII 1000000) character. See ASCII for other synonyms.

Node:stubroutine, Next:studly, Previous:strudel, Up:= S =

stubroutine /stuhb'roo-teen/ n.

[contraction of `stub subroutine'] Tiny, often vacuous placeholder for a subroutine that is to be written or fleshed out later.

Node:studly, Next:studlycaps, Previous:stubroutine, Up:= S =

studly adj.

Impressive; powerful. Said of code and designs which exhibit both complexity and a virtuoso flair. Has connotations similar to hairy but is more positive in tone. Often in the emphatic `most studly' or as noun-form `studliness'. "Smail 3.0's configuration parser is most studly."

Node:studlycaps, Next:stunning, Previous:studly, Up:= S =

studlycaps /stuhd'lee-kaps/ n.

A hackish form of silliness similar to BiCapitalization for trademarks, but applied randomly and to arbitrary text rather than to trademarks. ThE oRigiN and SigNificaNce of thIs pRacTicE iS oBscuRe.

Node:stunning, Next:stupid-sort, Previous:studlycaps, Up:= S =

stunning adj.

Mind-bogglingly stupid. Usually used in sarcasm. "You want to code what in ADA? That's a ... stunning idea!"

Node:stupid-sort, Next:Stupids, Previous:stunning, Up:= S =

stupid-sort n.

Syn. bogo-sort.

Node:Stupids, Next:Sturgeon's Law, Previous:stupid-sort, Up:= S =

Stupids n.

Term used by samurai for the suits who employ them; succinctly expresses an attitude at least as common, though usually better disguised, among other subcultures of hackers. There may be intended reference here to an SF story originally published in 1952 but much anthologized since, Mark Clifton's "Star, Bright". In it, a super-genius child classifies humans into a very few `Brights' like herself, a huge majority of `Stupids', and a minority of `Tweens', the merely ordinary geniuses.

Node:Sturgeon's Law, Next:sucking mud, Previous:Stupids, Up:= S =

Sturgeon's Law prov.

"Ninety percent of everything is crap". Derived from a quote by science fiction author Theodore Sturgeon, who once said, "Sure, 90% of science fiction is crud. That's because 90% of everything is crud." Oddly, when Sturgeon's Law is cited, the final word is almost invariably changed to `crap'. Compare Hanlon's Razor, Ninety-Ninety Rule. Though this maxim originated in SF fandom, most hackers recognize it and are all too aware of its truth.

Node:sucking mud, Next:sufficiently small, Previous:Sturgeon's Law, Up:= S =

sucking mud adj.

[Applied Data Research] (also `pumping mud') Crashed or wedged. Usually said of a machine that provides some service to a network, such as a file server. This Dallas regionalism derives from the East Texas oilfield lament, "Shut 'er down, Ma, she's a-suckin' mud". Often used as a query. "We are going to reconfigure the network, are you ready to suck mud?"

Node:sufficiently small, Next:suit, Previous:sucking mud, Up:= S =

sufficiently small adj.

Syn. suitably small.

Node:suit, Next:suitable win, Previous:sufficiently small, Up:= S =

suit n.

1. Ugly and uncomfortable `business clothing' often worn by non-hackers. Invariably worn with a `tie', a strangulation device that partially cuts off the blood supply to the brain. It is thought that this explains much about the behavior of suit-wearers. Compare droid. 2. A person who habitually wears suits, as distinct from a techie or hacker. See pointy-haired, burble, management, Stupids, SNAFU principle, PHB, and brain-damaged.

Node:suitable win, Next:suitably small, Previous:suit, Up:= S =

suitable win n.

See win.

Node:suitably small, Next:Sun, Previous:suitable win, Up:= S =

suitably small adj.

[perverted from mathematical jargon]

An expression used ironically to characterize unquantifiable behavior that differs from expected or required behavior. For example, suppose a newly created program came up with a correct full-screen display, and one publicly exclaimed: "It works!" Then, if the program dumped core on the first mouse click, one might add: "Well, for suitably small values of `works'." Compare the characterization of pi under random numbers.

Node:Sun, Next:sun lounge, Previous:suitably small, Up:= S =

Sun n.

Sun Microsystems. Hackers remember that the name was originally an acronym, Stanford University Network. Sun started out around 1980 with some hardware hackers (mainly) from Stanford talking to some software hackers (mainly) from UC Berkeley; Sun's original technology concept married a clever board design based on the Motorola 68000 to BSD Unix. Sun went on to lead the worstation industry through the 1980s, and for years afterwards remained an engineering-driven company and a good place for hackers to work. Though Sun drifted away from its techie origins after 1990 and has since made some strategic moves that disappointed and annoyed many hackers (especially by maintaining proprietary control of Java and rejecting Linux), it's still considered within the family in much the same way DEC was in the 1970s and early 1980s.

Node:sun lounge, Next:sun-stools, Previous:Sun, Up:= S =

sun lounge n.

[UK] The room where all the Sun workstations live. The humor in this term comes from the fact that it's also in mainstream use to describe a solarium, and all those Sun workstations clustered together give off an amazing amount of heat.

Node:sun-stools, Next:sunspots, Previous:sun lounge, Up:= S =

sun-stools n.

Unflattering hackerism for SunTools, a pre-X windowing environment notorious in its day for size, slowness, and misfeatures. X, however, is larger and (some claim) slower; see second-system effect.

Node:sunspots, Next:super source quench, Previous:sun-stools, Up:= S =

sunspots n.

1. Notional cause of an odd error. "Why did the program suddenly turn the screen blue?" "Sunspots, I guess." 2. Also the cause of bit rot -- from the myth that sunspots will increase cosmic rays, which can flip single bits in memory. See also phase of the moon.

Node:super source quench, Next:superloser, Previous:sunspots, Up:= S =

super source quench n.

A special packet designed to shut up an Internet host. The Internet Protocol (IP) has a control message called Source Quench that asks a host to transmit more slowly on a particular connection to avoid congestion. It also has a Redirect control message intended to instruct a host to send certain packets to a different local router. A "super source quench" is actually a redirect control packet, forged to look like it came from a local router, that instructs a host to send all packets to its own local loopback address. This will effectively tie many Internet hosts up in knots. Compare Godzillagram, breath-of-life packet.

Node:superloser, Next:superprogrammer, Previous:super source quench, Up:= S =

superloser n.

[Unix] A superuser with no clue - someone with root privileges on a Unix system and no idea what he/she is doing, the moral equivalent of a three-year-old with an unsafetied Uzi. Anyone who thinks this is an uncommon situation reckons without the territorial urges of management.

Node:superprogrammer, Next:superuser, Previous:superloser, Up:= S =

superprogrammer n.

A prolific programmer; one who can code exceedingly well and quickly. Not all hackers are superprogrammers, but many are. (Productivity can vary from one programmer to another by three orders of magnitude. For example, one programmer might be able to write an average of 3 lines of working code in one day, while another, with the proper tools, might be able to write 3,000. This range is astonishing; it is matched in very few other areas of human endeavor.) The term `superprogrammer' is more commonly used within such places as IBM than in the hacker community. It tends to stress naive measures of productivity and to underweight creativity, ingenuity, and getting the job done -- and to sidestep the question of whether the 3,000 lines of code do more or less useful work than three lines that do the Right Thing. Hackers tend to prefer the terms hacker and wizard.

Node:superuser, Next:support, Previous:superprogrammer, Up:= S =

superuser n.

[Unix] Syn. root, avatar. This usage has spread to non-Unix environments; the superuser is any account with all wheel bits on. A more specific term than wheel.

Node:support, Next:surf, Previous:superuser, Up:= S =

support n.

After-sale handholding; something many software vendors promise but few deliver. To hackers, most support people are useless -- because by the time a hacker calls support he or she will usually know the software and the relevant manuals better than the support people (sadly, this is not a joke or exaggeration). A hacker's idea of `support' is a tête-à-tête with the software's designer.

Node:surf, Next:Suzie COBOL, Previous:support, Up:= S =

surf v.

[from the `surf' idiom for rapidly flipping TV channels] To traverse the Internet in search of interesting stuff, used esp. if one is doing so with a World Wide Web browser. It is also common to speak of `surfing in' to a particular resource.

Hackers adopted this term early, but many have stopped using it since it went completely mainstream around 1995. The passive, couch-potato connotations that go with TV channel surfing were never pleasant, and hearing non-hackers wax enthusiastic about "surfing the net" tends to make hackers feel a bit as though their home is being overrun by ignorami.

Node:Suzie COBOL, Next:swab, Previous:surf, Up:= S =

Suzie COBOL /soo'zee koh'bol/

1. [IBM: prob. from Frank Zappa's `Suzy Creamcheese'] n. A coder straight out of training school who knows everything except the value of comments in plain English. Also (fashionable among personkind wishing to avoid accusations of sexism) `Sammy Cobol' or (in some non-IBM circles) `Cobol Charlie'. 2. [proposed] Meta-name for any code grinder, analogous to J. Random Hacker.

Node:swab, Next:swap, Previous:Suzie COBOL, Up:= S =

swab /swob/

Comments

Log in to leave a comment.

The Jargon File, Version 4.2.2, 20 Aug 2000Chapter D: C. Power Lab n (15)

0%36 min left in chapter