Things Every Hacker Once Knew: 1.12

Latest version, as usual, here.

New stuff: Note just how crazily heterogenous the six-bit character sets were. FTP. Ctrl-V on Unix systems. A correction about uu{de|en}code. Timeline updates for ’74 and ’77.

The pace of submissions continues to slow.

32 comments

  1. Hi!

    I think it would be better to show the ASCII table as 4 columns of 32 rows. That way it’s much more clearer how control chars, numbers, and upper- and lowercase letters are grouped together by their high-order bits.

    1. >Is it worth noting DEC’s terminally weird (heh) modular RS-232 connector?

      Probably not, since before reading your question and Googling I was unaware of its existence.

  2. Things everybody knows but isn’t so, circa 1980’s and from the “Jargon File”

    GORILLA ARM:
    The side-effect that destroyed touch-screens as a mainstream input technology despite a promising start in the early 1980s.

    I think as long as touch screens were big, and mounted perpendicularly to a table, the problem was real. A smaller screen held at a comfortable angle and distance, not so much. But once upon a time we all “knew” that waving a heavy arm around at a computer was no substitute for a good keyboard.

  3. A tool to worsen the effects of “Gorilla Arm” was the “light pen”, which would sense the position of pixels on a CRT. Created in the 1950s it was common through the late 1980s for some specific applications. In particular I think it was used for copy editors to strike through, highlight and otherwise “mark up” text in IBM’s early attempts to implement hypertext publishing. Light pens, as far as I know, fell out of use in the mid 90’s with other forms of stylus taking over and pressure (rather than light) sensitive interactions with LCD and LED displays.

  4. Things that may be known but not so…

    My style guide driven tech writing instructor taught me that with regard to computer languages, if you pronounced the letters (APL, C, R, XML, ) you wrote the name in all caps, while if you pronounced the name phonetically (Perl, Lisp, Basic) you wrote with an initial cap only.

    This broke down in my business documentation because the techies insisted on pronouncing SQL as “sequel”. And FORTRAN and COBOL were “grandfathered”. And in general the list of exceptions seemed longer than the list of named languages that followed this “rule”.

    Again, my experiences were in the period, on the sidelines, watching. For this purpose I’m merely cheering you on. I hope you’re enjoying the odd contributions as much as I enjoy your thoughts working themselves out for us.

    1. > if you pronounced the name phonetically (Perl, Lisp, Basic) you wrote with an initial cap only.

      British convention. They write “Nasa,” Yanks write “NASA.”

  5. esr:

    Thanks for correcting the typo Inkstain had found (“larely”). I admit I haven’t read TEHOK and probably never will. Say, I’ve found an error elsewhere: “…the collective-action theories of Mancur Olson et. al.”. To the best of my knowledge, “et” is not an abbreviation. :-)

    pouncer:

    I think as long as touch screens were big, and mounted perpendicularly to a table, the problem was real. A smaller screen held at a comfortable angle and distance, not so much.

    Recommended reading: “Tetris, Torture, and the Gorilla-Arm Problem”.

  6. You might wish to mention UUencoding’s sibling, XX encoding, and yEnc (http://www.yenc.org/), a followup that gained traction in Usenet as a more space efficient way of sending 8-bit data over 7-bit links. It also produced random hilarity. It was especially popular in binary groups devoted to porn, and there were constant “I can’t see the dirty pictures!” complaints. The posters were all accessing newsgroups via Outlook Express, which supported UU and XX encoding but not yEnc. The standard response was “That’s what you get for using OE. Use a real newsreader!”

    Not only is “listserv” still in use, it’s the trade name of a product that serves mailing lists See http://www.lsoft.com/. The TYPO-L list I’m on is a listserv instance.

    I’m a techie of a certain age who still has a parts drawer full of gender changers and the like. I also have unfond memories of three-wire RS-232 connections. I once supported a site with 100+ dumb terminals connecting to a Unix host. The site had been built out as fast and cheap as possible before I came on board, and while there were eight wires in the cables, only three pins were connected. This meant I had to use software handshaking with attendant issues. Redoing all the connectors to use 8 wires and have proper hardware handshaking was simply more pain than I cared to go through. (And the patch panel everything connected to would drop stuff connected if looked at funny. When I was finally able to replace it, I wanted to drop the old one out the 11th floor window where the site was, if I could arrange for the folks who specced and built out the site to be standing beneath when I did so.)
    ______
    Dennis

  7. Couple things that come to mind:

    Is it worth mentioning thicknet and thinnet? (10b2 and 10b5)? As of 4 years ago I was still running into it at &ltcensored&gt.

    Along those lines, ethernet–like TCP/IP has ‘won’. Is it worth mentioning stuff like Token Ring,

    Also ARCNET, which to my surprise *allegedly* still exists today, and DECNet, which probably doesn’t.

    Did every hacker know about GPIB, or just some folks messing with oddball hardware?

    1. >Couple things that come to mind:

      I think all these individual technologies (and every other form of proprietary networking) fail the common-knowledge filter, in that every hacker knew about some subset of them but which subset differed.

      Exception; I think the thicknet/thinnet distinction might almost be worth a mention – it was becoming common knowledge around the time it became obvious that Ethernet was going to bulldoze everything else – but I don’t know how to drop it in without becoming entangled in dead trivia.

  8. Kinda awesome that the preview shows &gt as > and &lt as the other one, but then goes all stupid

  9. > and DECNet, which probably doesn’t.

    Last I checked, there is still a config option for DECnet when compiling a kernel. I don’t know if anyone *uses* it, but it’s still there.

  10. > Last I checked, there is still a config option for DECnet when compiling a kernel.
    > I don’t know if anyone *uses* it, but it’s still there.

    Ok, that’s funny.

  11. Also ARCNET, which to my surprise *allegedly* still exists today

    In use in high-energy physics environments for “slow control” (power, temperature, current, that sort of thing) where high magnetic fields (making MRIs look like refrigerator magnets) will totally hose Ethernet and where fiber transceivers aren’t feasible. Bog-slow data rate (I think PHENIX is running at 1Mbps per ARCNET channel), but it works.

  12. Jorge Dujan, thanks for the link to Eric’s local “Gorilla Arm” essay.

    This confirms “Everybody Knew” it, once. By 2010 and the time of the essay, the knowledge was reforming. In 1970-1995 though, I suspect “everybody” was aware of the ergometric problem and many developers so aware ruled out, early in a design process, touch-screen data entry or response to prompt. The problem was somewhat worse, compared to a mouse, when a physical desk top surface to shuffle papers was required as well as a VDT for information exchange. An angled display wouldn’t support paper – or worse, a pen. A perpendicular display caused gorilla arm. A display lain flat would be covered with paper and not seen. And the whole display surface would take up more space than the paper-sheet sized space of a mousepad.

    Like Rocky tells Bullwinkle — “That trick NEVER works!”

    It was a lesson perhaps over-learned, like Twain’s cat who, once burned, wouldn’t sit on a cold stove top, either.

    And I wonder if there is a short section of such “once ‘known’, since learned otherwise” shared lore that might be useful at the end of our Host’s essay?

  13. Exception; I think the thicknet/thinnet distinction might almost be worth a mention – it was becoming common knowledge around the time it became obvious that Ethernet was going to bulldoze everything else – but I don’t know how to drop it in without becoming entangled in dead trivia.

    What about terminated buses in general? SCSI had all sorts of the same fun and wasn’t replaced until SAS became widespread.

    1. >What about terminated buses in general?

      Again, I don;t know how to go into that without becoming entangled in dead trivia.

  14. >I think all these individual technologies (and every other form of proprietary networking)
    > fail the common-knowledge filter, in that every hacker knew about some subset of them
    > but which subset differed.

    I figured if I knew about them that most other people in the field did :)

  15. > > What about terminated buses in general?
    > Again, I don;t know how to go into that without becoming entangled in dead trivia.

    Well, you know the subject heading. That’s a start.

  16. pouncer:

    Jorge Dujan, thanks for the link to Eric’s local “Gorilla Arm” essay.

    You’re welcome. ^_^

  17. There’s a couple of things I remember from the history books that it seems odd to me there are no references to (actually, it seems to be mostly one history book cited by most of the others: https://mitpress.mit.edu/books/ibms-early-computers ) As a non-hacker, you’d be wise to question my reliability as to how relevant this is to “hacker lore”

    1. “There was a time when 36-bit machines loomed large in hacker folklore…”

    The first 36-bit machine ever (as far as I can tell) is the IBM 701 mainframe, the first ever elevator-compatible computer (it required eleven elevator rides; its closest competition, the more famous original UNIVAC, required actual renovation to install at a customer site.) The machine apparently began to spawn its own hacker culture starting as early as 1951 February, when the first electronic logic for it started to operate many months before it became available on the market (whence it was rapidly replaced by the IBM 704, which had most of the major bugs worked out and the significant development of replacing the Williams tubes with core memory.) These two went on to father most of the early engineering/scientific era machines of the space age, the most famous of which was a pair of 7090 transistorized mainframes at Goddard Space Center used to track the Mercury and first two Gemini spacecraft in NASA’s human spaceflight program.

    “Standardization on 32 bits was unsuccessfully resisted by numerical analysts and people in scientific computing, who really missed that last 4 bits of accuracy.”

    The 701 was also the first floating point computer. Ever.

    2. “There’s also /dev/lp for the system default printer; every hacker once knew that the “lp” stood for “line printer”, a type of line-at-a-time electromechanical printer associated with mainframe computers of roughly the same vintage as the ASR-33.)”

    Prior to the 1401 (the blue machine that gave IBM the nickname “Big Blue”; four elevator rides), the main line printer was the IBM 413 accounting machine, which was a stand-alone punched card processor with some limited capabilities, and which served as the printer for other machines in offices which required more capability, especially those of Beech Aircraft and North American Aviation, which crossed plug boards between these and 602 multiplying machines to make poor man’s two-elevator-ride science/engineering machines. Normally, the 413 and 1401 served as transaction machines more oriented towards business services and financial transactions (this distinction still exists and is the reason why Google data centers are not on the Top500 list.) The 1401’s printer was the 1403 chain printer, the computers overall main selling point (sci/eng types even took the tapes from contemporary 7090 mainframes and used 1401 computers to print program output. IIRC, the 1401 was a 16-bit while 7090 was a 36-bit, and so the actual software for one had no hope of ever running on the other.)

    3. “MIT takes delivery of a PDP-1. The first recognizable ancestor of the hacker culture of today rapidly coalesces around it.”

    I don’t believe this is the first significant event in the evolution of hacker culture, as a similar, but more commercialized and somewhat secretive, group of programmers and tinkerers coalesced around the first IBM computers even before they were finished. Actually, each family of IBM computer (701 and successors, 702 and successors, 650, and Card Programmed Computers, the production realization of those 413-602 poor man’s sci/eng mashups) developed its own group. As I recall, “SHARE” was the name of one of these groups. It appears that the more open MIT hacker culture may have developed as both emulation and opposition (see http://catb.org/jargon/html/E/Evil-Empire.html ) to these ones. I have no inside information at all, but I would be rather astonished if there wasn’t anyone to cross over from the IBM pre-hacker groups to the proper hacker culture, as the former formed when IBM and MIT were friends (i.e. when they were working together on the SAGE network, maybe they were never actually what we’d call friends.) There must have been hundreds or thousands of personal relationships between IBM user group members and MIT hacker culture founders.

    Little things…

    “. Before USB, when people spoke of a “serial” link, they meant RS-232, and sometimes referred to the equipment that spoke it as “serial terminals”.”

    I’m not sure why that line begins with a period.

    “From about 1955 to 1975 – before semiconductors…”

    I would have put “before semiconductor memory”, as the transistor was invented in 1947, and even before then, semiconductors were in use in non-amplifying devices, typically diodes and most famously the crystal radio of the 1920s. Semiconductor logic predates semiconductor memory by a couple of decades and very few tube computers were still in service by the time the s/360 launched in 1964 April (and most of those were 650 machines, IBM’s strange-but-stubborn biquinary beast, the Magnetic Drum Calculator from ten years earlier.)

    “, but you could see anything come down a wire”

    I think I’m seeing a phenomenon related to the superscript effect on the previous line in both cases. Yup, it was also related to catb.org scripts being blocked by NoScript. I guess your pages aren’t quite as script blocker-proof as I’m used to (generally Wikipedia and CMI; consolation prize: XKCD is much, much worse.)

    “(you can support a minimal version with just three wires, and this was actually common).”

    The most common RS-232 cable I saw was a D9 with all the other pins open or shorted to appropriately fool the hardware involved. Often, I saw it as a bare header with point-to-point soldering on production test hardware that never left the electronics lab it was made in.

    “The oldest group of games that were once common knowledge are the Trek family…”

    I have an unciteable hunch that it had a major influence on Star Trek: The Next Generation and may answer the mystery as to how the series survived its first two seasons without those episodes being generally remembered as the garbage that they really are (i.e. worse than later seasons of Star Trek: Voyager that really are remembered as garbage.) I have actually played the DOS-compatible version on DOS 2.11 up to DOS 6.22, which is when I finally found something more decent, being Star Trek: 25th Anniversary http://memory-alpha.wikia.com/wiki/Star_Trek%3A_25th_Anniversary_(PC)

    “Every hacker over a certain age remembers spending hours playing these.”

    I was a child who did little hacking. My first computer was an abominable Tandy 1000 EX which was so unreliable that I got rid of it. Trek was one of the few games that would run on it, and more enjoyable than some of the early commercial titles (e.g. Gato and some crappy helicopter sim I can’t even identify.) My favorite thing to do on that computer was make databases for data from books like Famous Aircraft of All Time and everything else by Kenneth Munson, figured out third normal form without any training (learning it was called that eight years later in college.)

    1. >I don’t believe this is the first significant event in the evolution of hacker culture, as a similar, but more commercialized and somewhat secretive, group of programmers and tinkerers coalesced around the first IBM computers even before they were finished.

      You’re responding to a claim I didn’t make. I said “first recognizable ancestor”, and the test is very simple. Whose slang and jokes are still live? Much of the Tech Model Railroad Club lexicon is in the Jargon File because the members voted unanimously to invite me to mine it, knowing full well how central those jargon inventions had proven to be.

      As for whether some of the crew around TMRC and the PDP-1 had prior mainframe experience, it’s possible. But that doesn’t seem to have left traces in what they passed forward.

  18. Terry: “(sci/eng types even took the tapes from contemporary 7090 mainframes and used 1401 computers to print program output. IIRC, the 1401 was a 16-bit while 7090 was a 36-bit, and so the actual software for one had no hope of ever running on the other.)”

    The reason they took tapes and printed 7090 output with a 1401 was simple economics. The 7090 was much more expensive, so tying it up doing printing was just not a wise move economically.

    “Actually, each family of IBM computer (701 and successors, 702 and successors, 650, and Card Programmed Computers, the production realization of those 413-602 poor man’s sci/eng mashups) developed its own group. As I recall, “SHARE” was the name of one of these groups.”

    SHARE was founded in 1955, as (IIRC) the users group for the scientific machined. GUIDE was formed not a whole lot after that for the commercial users. Their missions grew to overlap almost completely by the mid-60s; GUIDE eventually merged into SHARE, in the late 70s, IIRC.

  19. The list states that ascii backspace was never used in text-only communication. Arguably – not exactly true. Backspace was how you got bold and underline on a printer, and you’d see it in text that had been formatted for printing.

    1. Daisywheels generally could backspace, and ^H in a file would be sent as-is only if the software was set up for a backspacing printer. Most printers were non-backspacing, so usually when software saw ^H on a line it did one pass of the whole line minus the character after ^H, sent ^M without ^J, and did a second pass to overprint the character before ^H. Bolding and underlining were done with a second pass, too.

      Speaking of ^H, I am greatly relieved that it now seems to be destructive backspace all the time on the command line, so I no longer have to fiddle with stty and whatnot. The formulators of ASCII didn’t designate anything as a non-destructive _forward-spacing code; why would they let you move back non-destructively if you couldn’t also move forward? ^H was _meant_ to be a destructive backspace in keyboard-host communication.

      This played a big role in my adoption of OSS. I was working as a translator — lotsa lotsa typing — when I figured out hex and ASCII. With Ctrl in the home row, ^H working as Backspace was a dream come true, and I swore never to let anyone take it away from me.

  20. > The reason they took tapes and printed 7090 output with a 1401 was simple economics.

    Not just that: I’m pretty sure the 7090 couldn’t talk directly to the 1403 printer.

  21. “Not just that: I’m pretty sure the 7090 couldn’t talk directly to the 1403 printer.”

    No, but there was a printer that could attach to the 7090. It was slower than the 1403, and there was no demand for anything faster because 7090 users didn’t want their expensive systems tied up doing printing. Spooling hadn’t been invented yet, at least not as an OS function. (The 1401 in this service amounted to a spooler.)

  22. [Quote] This is the 16×4 format given in most references [unquote]

    It is customary to rely on references only when originals are lost. In this case, the originals are not lost, and the table referred to is in the same basic format as those in the originals (which show the bits, by the way).

    American Standard Code for Information Interchange, X3.4-1963: “In discussing the set structure it is convenient to divide the set into 8 columns of 16 characters each, as indicated in the standard.”

    American National Standard X3.4-1986 and Standard ECMA-6, 6th Edition, December 1991: “A 7-bit code table consists of 128 positions arranged in 8 columns and 16 rows. The columns are numbered 0 to 7, and the rows are numbered 0 to 15.

    “The code table positions are identified by notations of the form x/y, where x is the column number and y is the row number.”

    Long familiarity with the standard might lead some people to see four blocks no matter how the elements are arranged, but if the people who hammered out the standard and designed the original tables say those tables are in 8-by-16 format, and the format looks like 8 by 16 to a long-time block-aware (or maybe blockheaded) aficionado like yours truly, it seems best not to muddy the waters.

    On the other hand, if people who call themselves hackers don’t know the bit structure of ASCII, “muddy the waters” is not a good metaphor. We face a vast expanse of mud. Bulldozers are in order.

    I am the antithesis of a hacker. I got a computer by accident and used it for a year in complete ignorance of bits and bytes before deciding that I needed to know a thing or two about its workings. The FIRST things I learned were hexadecimal notation and the bit structure of ASCII.

    How is it that someone who was flummoxed by base 5 in high school and still has trouble adding two two-digit decimal numbers in his head — and has never written a single line of C or anything comparable — is comfortable with hex and has long been aware of the bit structure of ASCII?

    Based on the “references” I’ve seen, I believe it’s because the materials I had at my disposal and the software I used came out before August 12, 1981.

    1. >Based on the “references” I’ve seen, I believe it’s because the materials I had at my disposal and the software I used came out before August 12, 1981.

      OK, what’s magic about that date?

Leave a Reply to Standard Mischief Cancel reply

Your email address will not be published. Required fields are marked *