readenglishbook.com » Other » The New Hacker's Dictionary, Eric S. Raymond [bill gates book recommendations .txt] 📗

Book online «The New Hacker's Dictionary, Eric S. Raymond [bill gates book recommendations .txt] 📗». Author Eric S. Raymond



1 ... 57 58 59 60 61 62 63 64 65 ... 125
Go to page:
added to

a network. Usually, their statement is found to be false. Upon close

questioning, they will admit some major restructuring of the program

that shouldn't have broken anything, in their opinion, but which

actually [7065]hosed the code completely.

Node:I see no X here., Next:[7066]IANAL, Previous:[7067]I didn't

change anything!, Up:[7068]= I =

I see no X here.

Hackers (and the interactive computer games they write) traditionally

favor this slightly marked usage over other possible equivalents such

as "There's no X here!" or "X is missing." or "Where's the X?". This

goes back to the original PDP-10 [7069]ADVENT, which would respond in

this wise if you asked it to do something involving an object not

present at your location in the game.

Node:IANAL, Next:[7070]IBM, Previous:[7071]I see no X here.,

Up:[7072]= I =

IANAL //

[Usenet] Abbreviation, "I Am Not A Lawyer". Usually precedes legal

advice.

Node:IBM, Next:[7073]IBM discount, Previous:[7074]IANAL, Up:[7075]= I

=

IBM /I-B-M/

Inferior But Marketable; It's Better Manually; Insidious Black Magic;

It's Been Malfunctioning; Incontinent Bowel Movement; and a

near-[7076]infinite number of even less complimentary expansions,

including `International Business Machines'. See [7077]TLA. These

abbreviations illustrate the considerable antipathy most hackers long

felt toward the `industry leader' (see [7078]fear and loathing).

What galled hackers about most IBM machines above the PC level wasn't

so much that they were underpowered and overpriced (though that does

count against them), but that the designs are incredibly archaic,

[7079]crufty, and [7080]elephantine ... and you can't fix them --

source code is locked up tight, and programming tools are expensive,

hard to find, and bletcherous to use once you've found them. For many

years, before Microsoft, IBM was the company hackers loved to hate.

But everything changes. In the 1980s IBM had its own troubles with

Microsoft. In the late 1990s IBM re-invented itself as a services

company, began to release open-source software through its AlphaWorks

group, and began shipping [7081]Linux systems and building ties to the

Linux community. To the astonishment of all parties, IBM emerged as a

friend of the hacker community

This lexicon includes a number of entries attributed to `IBM'; these

derive from some rampantly unofficial jargon lists circulated within

IBM's own beleaguered hacker underground.

Node:IBM discount, Next:[7082]ICBM address, Previous:[7083]IBM,

Up:[7084]= I =

IBM discount n.

A price increase. Outside IBM, this derives from the common perception

that IBM products are generally overpriced (see [7085]clone); inside,

it is said to spring from a belief that large numbers of IBM employees

living in an area cause prices to rise.

Node:ICBM address, Next:[7086]ice, Previous:[7087]IBM discount,

Up:[7088]= I =

ICBM address n.

(Also `missile address') The form used to register a site with the

Usenet mapping project, back before the day of pervasive Internet,

included a blank for longitude and latitude, preferably to

seconds-of-arc accuracy. This was actually used for generating

geographically-correct maps of Usenet links on a plotter; however, it

became traditional to refer to this as one's `ICBM address' or

`missile address', and some people include it in their [7089]sig block

with that name. (A real missile address would include target

elevation.)

Node:ice, Next:[7090]ID10T error, Previous:[7091]ICBM address,

Up:[7092]= I =

ice n.

[coined by Usenetter Tom Maddox, popularized by William Gibson's

cyberpunk SF novels: a contrived acronym for `Intrusion Countermeasure

Electronics'] Security software (in Gibson's novels, software that

responds to intrusion by attempting to immobilize or even literally

kill the intruder). Hence, `icebreaker': a program designed for

cracking security on a system.

Neither term is in serious use yet as of early 1999, but many hackers

find the metaphor attractive, and each may develop a denotation in the

future. In the meantime, the speculative usage could be confused with

`ICE', an acronym for "in-circuit emulator".

In ironic reference to the speculative usage, however, some hackers

and computer scientists formed ICE (International Cryptographic

Experiment) in 1994. ICE is a consortium to promote uniform

international access to strong cryptography.

Node:ID10T error, Next:[7093]idempotent, Previous:[7094]ice,

Up:[7095]= I =

ID10T error /I-D-ten-T er'*r/

Synonym for [7096]PEBKAC, e.g. "The user is being an idiot".

Tech-support people passing a problem report to someone higher up the

food chain (and presumably better equipped to deal with idiots) may

ask the user to convey that there seems to be an I-D-ten-T error.

Users never twig.

Node:idempotent, Next:[7097]IDP, Previous:[7098]ID10T error,

Up:[7099]= I =

idempotent adj.

[from mathematical techspeak] Acting as if used only once, even if

used multiple times. This term is often used with respect to [7100]C

header files, which contain common definitions and declarations to be

included by several source files. If a header file is ever included

twice during the same compilation (perhaps due to nested #include

files), compilation errors can result unless the header file has

protected itself against multiple inclusion; a header file so

protected is said to be idempotent. The term can also be used to

describe an initialization subroutine that is arranged to perform some

critical action exactly once, even if the routine is called several

times.

Node:IDP, Next:[7101]If you want X you know where to find it.,

Previous:[7102]idempotent, Up:[7103]= I =

IDP /I-D-P/ v.,n.

[Usenet] Abbreviation for [7104]Internet Death Penalty. Common

(probably now more so than the full form), and frequently verbed.

Compare [7105]UDP.

Node:If you want X you know where to find it., Next:[7106]ifdef out,

Previous:[7107]IDP, Up:[7108]= I =

If you want X, you know where to find it.

There is a legend that Dennis Ritchie, inventor of [7109]C, once

responded to demands for features resembling those of what at the time

was a much more popular language by observing "If you want PL/I, you

know where to find it." Ever since, this has been hackish standard

form for fending off requests to alter a new design to mimic some

older (and, by implication, inferior and [7110]baroque) one. The case

X = [7111]Pascal manifests semi-regularly on Usenet's comp.lang.c

newsgroup. Indeed, the case X = X has been reported in discussions of

graphics software (see [7112]X).

Node:ifdef out, Next:[7113]IIRC, Previous:[7114]If you want X you know

where to find it., Up:[7115]= I =

ifdef out /if'def owt/ v.

Syn. for [7116]condition out, specific to [7117]C.

Node:IIRC, Next:[7118]ill-behaved, Previous:[7119]ifdef out,

Up:[7120]= I =

IIRC //

Common abbreviation for "If I Recall Correctly".

Node:ill-behaved, Next:[7121]IMHO, Previous:[7122]IIRC, Up:[7123]= I =

ill-behaved adj.

[numerical analysis] Said of an algorithm or computational method

that tends to blow up because of accumulated roundoff error or poor

convergence properties. 2. Software that bypasses the defined [7124]OS

interfaces to do things (like screen, keyboard, and disk I/O) itself,

often in a way that depends on the hardware of the machine it is

running on or which is nonportable or incompatible with other pieces

of software. In the IBM PC/MS-DOS world, there is a folk theorem

(nearly true) to the effect that (owing to gross inadequacies and

performance penalties in the OS interface) all interesting

applications are ill-behaved. See also [7125]bare metal. Oppose

[7126]well-behaved, compare [7127]PC-ism. See [7128]mess-dos.

Node:IMHO, Next:[7129]Imminent Death Of The Net Predicted!,

Previous:[7130]ill-behaved, Up:[7131]= I =

IMHO // abbrev.

[from SF fandom via Usenet; abbreviation for `In My Humble Opinion']

"IMHO, mixed-case C names should be avoided, as mistyping something in

the wrong case can cause hard-to-detect errors -- and they look too

Pascalish anyhow." Also seen in variant forms such as IMNSHO (In My

Not-So-Humble Opinion) and IMAO (In My Arrogant Opinion).

Node:Imminent Death Of The Net Predicted!, Next:[7132]in the extreme,

Previous:[7133]IMHO, Up:[7134]= I =

Imminent Death Of The Net Predicted! prov.

[Usenet] Since [7135]Usenet first got off the ground in 1980-81, it

has grown exponentially, approximately doubling in size every year. On

the other hand, most people feel the [7136]signal-to-noise ratio of

Usenet has dropped steadily. These trends led, as far back as

mid-1983, to predictions of the imminent collapse (or death) of the

net. Ten years and numerous doublings later, enough of these gloomy

prognostications have been confounded that the phrase "Imminent Death

Of The Net Predicted!" has become a running joke, hauled out any time

someone grumbles about the [7137]S/N ratio or the huge and steadily

increasing volume, or the possible loss of a key node or link, or the

potential for lawsuits when ignoramuses post copyrighted material,

etc., etc., etc.

Node:in the extreme, Next:[7138]inc, Previous:[7139]Imminent Death Of

The Net Predicted!, Up:[7140]= I =

in the extreme adj.

A preferred superlative suffix for many hackish terms. See, for

example, `obscure in the extreme' under [7141]obscure, and compare

[7142]highly.

Node:inc, Next:[7143]incantation, Previous:[7144]in the extreme,

Up:[7145]= I =

inc /ink/ v.

Verbal (and only rarely written) shorthand for increment, i.e.

`increase by one'. Especially used by assembly programmers, as many

assembly languages have an inc mnemonic. Antonym: dec (see [7146]DEC).

Node:incantation, Next:[7147]include, Previous:[7148]inc, Up:[7149]= I

=

incantation n.

Any particularly arbitrary or obscure command that one must mutter at

a system to attain a desired result. Not used of passwords or other

explicit security features. Especially used of tricks that are so

poorly documented that they must be learned from a [7150]wizard. "This

compiler normally locates initialized data in the data segment, but if

you [7151]mutter the right incantation they will be forced into text

space."

Node:include, Next:[7152]include war, Previous:[7153]incantation,

Up:[7154]= I =

include vt.

[Usenet] 1. To duplicate a portion (or whole) of another's message

(typically with attribution to the source) in a reply or followup, for

clarifying the context of one's response. See the discussion of

inclusion styles under "Hacker Writing Style". 2. [from [7155]C]

include has appeared in [7156]sig blocks to refer to a

notional `standard [7157]disclaimer file'.

Node:include war, Next:[7158]indent style, Previous:[7159]include,

Up:[7160]= I =

include war n.

Excessive multi-leveled inclusion within a discussion [7161]thread, a

practice that tends to annoy readers. In a forum with high-traffic

newsgroups, such as Usenet, this can lead to [7162]flames and the urge

to start a [7163]kill file.

Node:indent style, Next:[7164]index of X, Previous:[7165]include war,

Up:[7166]= I =

indent style n.

[C, C++, and Java programmers] The rules one uses to indent code in a

readable fashion. There are four major C indent styles, described

below; all have the aim of making it easier for the reader to visually

track the scope of control constructs. They have been inherited by C++

and Java, which have C-like syntaxes. The significant variable is the

placement of { and } with respect to the statement(s) they enclose and

to the guard or controlling statement (if, else, for, while, or do) on

the block, if any.

`K&R style' -- Named after Kernighan & Ritchie, because the examples

in [7167]K&R are formatted this way. Also called `kernel style'

because the Unix kernel is written in it, and the `One True Brace

Style' (abbrev. 1TBS) by its partisans. In C code, the body is

typically indented by eight spaces (or one tab) per level, as shown

here. Four spaces are occasionally seen in C, but in C++ and Java four

tends to be the rule rather than the exception.

if () {

<body>

}

`Allman style' -- Named for Eric Allman, a Berkeley hacker who wrote a

lot of the BSD utilities in it (it is sometimes called `BSD style').

Resembles normal indent style in Pascal and Algol. It is the only

style other than K&R in widespread use among Java programmers. Basic

indent per level shown here is eight spaces, but four (or sometimes

three) spaces are generally preferred by C++ and Java programmers.

if ()

{

<body>

}

`Whitesmiths style' -- popularized by the examples that came with

Whitesmiths C, an early commercial C compiler. Basic indent per level

shown here is eight spaces, but four spaces are occasionally seen.

if ()

{ <body> }

`GNU style' -- Used throughout GNU EMACS and the Free Software

Foundation code, and just about nowhere else. Indents are always four

spaces per level, with { and } halfway between the outer and inner

indent levels.

if ()

{

}

Surveys have shown the Allman and Whitesmiths styles to be

1 ... 57 58 59 60 61 62 63 64 65 ... 125
Go to page:

Free e-book «The New Hacker&#039;s Dictionary, Eric S. Raymond [bill gates book recommendations .txt] 📗» - read online now

Comments (0)

There are no comments yet. You can be the first!
Add a comment