Revisionist History

The current Time Machine Bucket List

(If a working time machine falls into my lap, these are a few things I’d address…)

Gary Kildall must understand to use linefeed as the line terminator in text files, and not carriage-return plus linefeed. Also, no control-Z nonsense; exact file lengths in CP/M, please.

Intel must choose a 256 byte paragraph size (8 bits) rather than the puny and useless 16 byte paragraph size. Result: An architectural 16 MB memory space, rather than the miserable 1 MB. VisiCorp doesn’t kill itself trying to cram its software into overlays and so forth, and its battles with Microsoft become epic.

Bjarne Stroustrup realizes he has to have a standard string class for the first public release of C++, rather than that iostreams nonsense.

Steve Jobs includes a second mouse button (good luck with that. Maybe if we get him really high this time…)

There must be threads in V6 Unix. They don’t need to be fancy, they just need to get people thinking. (This probably means coroutines in C).

Brendon Eich runs into Walter Smith in a bookstore in Palo Alto. Hey, isn’t that Guy Steele over there, talking to Doug Crockford? They all go for coffee and chat. Steele and Crockford browbeat wimpy Netscape management into giving Brenden and Walter a year to do a great job on JavaScript. ’nuff said.

A mushroom handling accident in the executive dining room wipes out nearly all of the Warner Atari’s upper management. 2600 Pac-Man given nine months of development time, all movie-based games are canceled.

A young Larry Ellison realizes that building boats is really, really cool. He is never heard of in the tech industry. Decades later he runs into Paul Allen and asks for his autograph.

(Note: Stay away from Richard Stallman in all versions of the timeline).

atom1

This entry was posted in Uncategorized. Bookmark the permalink.

20 Responses to Revisionist History

  1. Zeev Tarantov says:

    Please excuse my ignorance, but who is Walter Smith?

    • landon says:

      Walter Smith designed NewtonScript, which had some very interesting ideas involving object inheritance (with features taken from Self) and storage.

      See, for instance, this.

  2. James says:

    What would it be like if a certain young Finnish programmer looks at his computer, thinks “I really want a terminal emulator” … and then thinks “naah” and goes to the pub instead.

    Imagine the horrors if Stallman had actually finished GNU Hurd and it worked as a proper OS…

    • landon says:

      Who would be first up against the wall when the revolution came?

      Stallman Molotov: A box containing a bottle, a hose to siphon the gas from someone’s car, and flint and tinder for a spark — you have to use your own shirt for the rag. After all, users should be empowered and not be locked in to any particular kind of Molotov.

  3. Barton says:

    Gary Kiddall should also have been made to understand that the Unix ‘-‘ is the right and proper prefix for a command line switch, and therefore the forward slash can and must be used as a path delimiter.

  4. Gavin says:

    I would get James Gosling to understand that everything doesn’t need to be a class. Then I’d jump forward to 99 and just wish him good luck on principle 2 (java should be robust and secure) with a giggle.

    More recently I’d make damn sure no PE/COFF BS ends up in UEFI and that the whole key signing thing was handled better.

  5. MikeA says:

    How about comic-based games? Also, if only that mushroom incident could have sufficient lasting effects that the Atari/Amiga cooperation could ship some products.

    But V6 threads? The whole point of cheap processes was to not _need_ “kinda-sorta processes”. If you want heavyweight processes, you need look no further than RSX/VMS/WNT (which also use ‘/’ as a switch delimiter) Ah, the days of “keeping a few processes warm” to do stuff like parallel make.

  6. Jason T says:

    Plan 9 is seen as a compelling advance over UNIX and gains wide adoption. SCO who? Apple buys Be instead of NeXT, remains beleaguered. No iMac, iPod, iTunes, iPhone, iPad. Steve Jobs retires from Pixar and NeXT, starts a zen meditation commune, lives to be 110.

  7. Niklas says:

    (Note: Stay away from Richard Stallman in all versions of the timeline).

    Getting an elisp based on Scheme is worth the risk, dammit!

  8. Thom says:

    My time machine must go back further. When machine language Opcodes are being developed (for the x86 and others), “00” shall be a non-maskable interrupt on the 0x86. Execute *this* memory, sucker!

  9. C'est moi says:


    all movie-based games are canceled

    And maybe make games based movies made illegal? They’re oil and water.

    Anyway, later progress in technology had more of a positive effect on films than on games. Just on Atari’s 6502 based home computer we had Eastern Front 1942, Zaxxon, and, Rescue on Fractulus. The progress towards faster and wider memory buses, and massively reduced instruction latencies did nothing to expand the scope of games. Cheap telecommunications has made more of a difference than anything I reckon. But that’s just me I suppose.

    Forget games, progress in technology hasn’t done much in the way of the computer as a tool for thought either. If we continue to limit ourselves to 8-bit Ataris we even had LISP and LOGO cartridges. Imagine if every 8-bit computer — whatever the make — had come with a LOGO interpreter and a copy of this:

    http://www.amazon.com/Turtle-Geometry-Mathematics-Artificial-Intelligence/dp/0262510375/ref=sr_1_1?ie=UTF8&qid=1364655591&sr=8-1&keywords=turtle+geometry

    How many bored teenagers would have picked up that book and had the switch flicked?
    What are today’s destined-to-be-coders exposed to? And, is it measurably better?

    As always, technology is not the limiting factor. *places right index and fore-finger to his right temple whilst restraining the remaining two fingers on that hand with his thumb* It’s up here people, up here.

    p.s. Can you tell I cut my teeth on an 800XL?

  10. Miguel Farah says:

    I’d add this:

    1) Redesign the Model M keyboard further than it was at its time:
    – Instead of a double-sized ‘0’ key, put a COMMA in there.
    – Don’t be afraid to “break compatibility” and get rid of the “Num Lock” key. Put the ‘+’ (single-sized, too) , ‘-‘, ‘*’ and ‘/’ in the top row (in that order), and use the now vacant space in the right column for ‘(‘ and ‘)’.
    – How about an extra row at the top, with ‘[‘, ‘]’, ‘{‘ and ‘}’? (yes, this is a bit too much to ask)
    – Move the cursor control keys (Ins, Del, …. arrows) to the LEFT of the QWERTY main section. Not so obvious during the time of the IJKM (Apple) or HJKL (Unix) cursor movement, but… 20 years afterwards, *no* WASD pest.
    – Put the lights for CAPS LOCK and SCROLL lock by the keys themselves.
    – CAPS LOCK, SHIFT, CONTROL, TAB. That’s much better.
    – Or even ALT, SHIFT, CONTROL, TAB, CAPS LOCK (yes, in a regular sized key, to boot).

    2) Going back a bit further: heavy lobby to add ‘¿’ and ‘¡’ to ASCII. It’d have led to much easier to read code:
    ¿ age>18 : ¡String!criminal.getName() : "a minor" ?

    3) ASCII, oh, ASCII:
    – Get rid of ‘`’ – both “‘” and ‘”‘ are directionless. Why have a directional apostrophe (opening) if the other (closing) isn’t there?
    – Get rid of one control character (DC4, perhaps?) and move DEL there.
    – Digits should have been in 33 to 42 and leave 43 to 63 to all NON-paired typographical characters.
    – Paired ones (“() ¿? ¡! [] {}”) should have been in 64,96,91..95,123..127.

    • landon says:

      Interesting ideas; I like a lot of them.

      CAPS LOCK is a crime against humanity. Just eliminate it; out the airlock. It’s the first thing I turn off (rather, make into a control key) when I do an OS install.

      Nonbreaking space (“case folded” to normal space) would let you express “things that look like they have spaces in them” (like filenames) but still treat them as atoms in UI and scripting systems. It would be incredibly useful to have file glob operators expand “My File” to “My_File” (underscore === a nbsp here) and not have to worry about wrapping quotes about every expansion in a script. Maybe things are better these days, but this was a total PITA on the Mac.

      I feel the same way about “upside down question mark” as I do about APL and the whole Algol “do..od” nonsense: Skeuomorphisms have no place in programming languages. I make a single exception for SmallTalk-76, which was just too cute for words (SmallTalk-80 lost something special when it was ASCII-fied).

      Things could be a lot worse. Look at EBCDIC, for instance; you’d be better off with random placement than something that was almost structured…

      • James says:

        i’m an IT teacher by day.

        Kids don’t understand what shift keys are for, they press the caps lock key just to make one capital letter. Trying to make them see sense is impossible.

        Personally I’d go back in time and get the US and GB keyboard people to agree on the same layout of keys. Apple need to be in on this too so they print the damn hash symbol on a keytop. Day one of using XCode in the UK begins with “OK so where is # then? Oh Alt-3… well that’s obvious”. Apple are a bit too fond of baffling arrows pointing in various directions on their keyboards too.

        I don’t care what keys we have on our keyboards, they just all need to be the same keys in the same locations.

        • C'est Moi says:

          The US layout was crystalised when it dawned on them that it gave their C programmers an unfair advantage. On Scandinavian Mac keyboards, for example, there is a veritable smörgåsbord of character problems, the worst being ‘|’ and ‘\’ which are nowhere to be seen. They need disjunctions and symbolic character constants in that neck of the world as well.

        • Miguel Farah says:

          Now that you mention it, properly designed keyboard layouts for Spanish are also on my list (how come I forgot to put this before?): there are THREE of them (Spanish, Latin American and Spanish variation), all of them with serious issues.

  11. Lurking Grue says:

    A mushroom handling accident in the executive dining room wipes out nearly all of the Warner Atari’s upper management. 2600 Pac-Man given nine months of development time, all movie-based games are canceled.

    WOOO! YES!

Leave a Reply

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