Usborne releases free PDFs of its classic 1980s computer programming books

Jindo Fox writes, "A few years ago, Cory linked to some wonderful pictures in Usborne's 1983 classic Introduction to Machine Code for Beginners. Usborne has made PDF copies available of their whole line, with the only restriction that you link to their page, not to copy and redistribute the files themselves. Very cool. I have fond memories of wasting my childhood typing these listings into the mainframe terminal at my local university, and later on my Timex Sinclair 1000, which I somehow knew was the American version of the ZX-81 that was featured in these pages."

Usborne's done it to promote some great-looking new books on learning to program: Lift-the-Flap Computers and Coding is a board-book for small children, covering "principles of coding, from simple commands to algorithms, are explained with a treasure hunt game and puzzles, and there are examples of simple programs in the coding language Scratch."

Coding for Beginners - Using Scratch is "an introduction to coding for complete beginners," with "step-by-step instructions showing children how to use code to create games and animations."

Included in the retro collection are:

* Programming Tricks and Skills [1984, PDF]

* Machine Code for Beginners [1983, PDF]

* Introduction to Computer Programming [1982, PDF]

* Practical Things to Do With a Microcomputer [1983, PDF]

Here's a selection of some of my favorite images from the series. Though the subject matter is out of date, they stand up as some of the most engaging informational graphics ever made.

Usborne coding books for a new generation [Usborne]

Notable Replies

  1. Sad they don't write enough computing books like that any more.

  2. knappa says:

    I'm beginning to wonder if some modern languages are getting a little too high level for students; there is a certain concreteness to line numbers and goto statements.

  3. You're right and I completely agree... I find though that when showing this stuff to the kids at my childrens' school, it's harder to engage them with scripted loops, drawLine calls, alert boxes, fields in the DOM... if I don't use one of the (many, excellent) resources like gamemaven or hourofcode or codecombat, they react with that "dull but worthy" expression. The fault may well be boring old me of course...!

    Even the older ones prefer the unified immediacy of Scratch, which despite the drag'n'droppiness has a more useful default offering than the near-infinite but sometimes bewildering possibilities of, say, HTML5. In that, it seems more reminiscent of the built-in BASIC implementations of the era these Usborne books.

    But yes, F12 opens up an equally brave and exciting world, for those that fancy it.
    So does Alt-F4 sometimes too :slightly_smiling:

  4. Jorpho says:

    Wow! I would have thought Usborne would have been bought out by another company that went bankrupt and got bought out by another company and so on several times over by now, resulting in the rights to these things being hopelessly buried beyond all hope of retrieval. They must still be relatively successful if they're still independent.

    I was hoping to see the Guide to Computer and Video Games. The type-in programs from that book are some of my earliest memories with trying to get a program written in one dialect of BASIC to cooperate with an entirely different compiler – just one of the many delights of BASIC that are best consigned to the dustbin.

    Plus, it included that famously prophetic bit about Games of the Future:

  5. The difference between an integer and a floating point number is meaningful, because the latter don't store exact values, and so testing when they are equal is unreliable. This was even in true in BASIC, where at least some types did make the distinction – A for a floating point variable, A% for an integer, and A$ for a string.

    If you're just starting out and don't want to worry about the difference, you don't have to. Sticking to float in C, Java, and their cousins should pretty much work like sticking to the floating point variables in BASIC. But there are cases where the extra control is good to have.

    Edited to add:
    For those who like how BASIC just let you run things without worrying much about set-up, though, note there are still languages like that. For instance I was a big fan of its easy graphics, and in that respect have been enjoying Processing, which is basically Java set up for them.

Continue the discussion

10 more replies