I feel a strange sense of loss at learning that these exist. I cherished the Usborne books I did have, and I had to mainly teach myself Basic with LIST commands and such, because I didn't have any friends or comprehensive books to teach me, nor was I permitted to dial long distance numbers to reach a BBS. I would have loved these as a child.
Same. I read it cover to cover multiple times. The only part I didn't understand was the bit about Quicksort. I was a C programmer by the time I finally grokked it.
I experienced a wave of nostalgia seeing the covers of these books. Many of the BASIC listings were for the 'lowest common denominator' version of BASIC, and being lucky enough to have a BBC Micro, I tinkered with them to improve the graphics and sound.
I tried downloading "The Mystery Of Silver Mountain" book, and several pages in the listing part of the book appear to be blank (e.g. pages 18, 19, 20) when viewed with Preview on macOS. They display correctly in Windows 10 with Edge, and when viewed online (in Google Docs?)
I had some of these before I had access to a computer at school, let alone before getting my own ZX Spectrum, but they were the most exciting thing ever, the promise and possibilities!
I started out programming with BASIC. After later using C for years, and thinking about developing D, I realized I longed for the easy string handling that BASIC did. D was going to have simple string handling, dang it! And it does.
BASICs string handling is an underrated treasure of early programming languages. Notably MS-BASIC and relative.
What folks take for granted, without really knowing it, is that the MS-BASIC system was a rather early system with built in garbage collection.
Consider:
A$=“Hello “
B$=“world.”
FOR I=1 TO 10
A$=A$+B$
NEXT I
We just take for granted that this will just work, but there’s a bunch of junk created here that eventually needs to be cleaned up.
This is in contrast to the HP style BASIC that used dimensioned strings. This was much simpler and just needed work buffers that were readily reused.
MS had some notoriety about bad performance when things got too tight. But it’s cool to know there was this nice little bit of tech buried in 8K of 6502 or 8080 from the late 70s.
The key detail is that HP BASIC dimensions the individual strings, where MS does not. Since the HP strings have dimensions, they're constrained. Given a typical max length of 255, you can see a string expression being done with a 255 byte work buffer and, when complete, moved into the dimensioned space. So, in the end, there's just a work buffer and the string.
With MS, strings are just pointers to places in memory (for examples the static strings in the code). So it's a whole "malloc/free" thing with the strings, but if the work space fills up, you can compact the heap and move the variable string pointers. Different mechanic. Simple garbage collection, but it is garbage collection.
These come up every once in a while here, and it’s great. I had two, a general robotics book, and then explicitly the “build a robot” book.
I sometimes contemplate modernizing it for a 3D printer and a raspberry pi. My kid is (I think) approaching the age where he might want to give it a try. I really wanted you with my dad, but we never had time.
Computer Fun was the first progamming book I ever got. It made me into a coder. I got it when I was six at the same time my father and uncle gave me and my siblings my Uncle's old Apple II for Christmas.
I still got a physical copy of it on my home office shelf. Not the same one I had as a kid mind you, because that one took a serious beating over the years. I looked for that book for years with only the memory of the general illustration style to guide me. One day about a decade ago I stumbled on it.
Love that these are freely available online as PDFs. That's freaking awesome!
There’s an Usborne book about electronics intended for kids that even as an adult I find myself checking out the odd time, especially when helping friends grasp the basics of how a resistor or transistor works - the pictures honestly explain it better than I could.
I now have to go get the rest of the books from them. They seem to be absolute gems that I’d like to have in dead tree format.
I've been trying to buy books related to the Spectrum, for the past few years.
It's actually surprisingly hard to come across more than a few - now and again ebay has books, for example, but most people seem to hoard them (understandably) and lots have been damaged/tossed/lost of the years.
I have a small collection, but I expect it won't get much bigger even with my willingness to pay €40+ for some of those titles.
I learnt to program using those books. Although I swear there's a few titles missing.
I remember one of them being more about computers in general rather than programming and having this two page illustrated branching "flow chart" of a humourous choose your own adventure game. My first go at programming something from scratch was implementing that on a borrowed TRS-80 Model III before I finished saving up for my own computer (a ZX Spectrum later on). The code was just one long linear list of conditionals - Just PRINT, INPUT, IF/THEN, and GOTO. I'm not sure it even really used variables hehe.
"Computer Spacegames" and I think "Computer Battlegames" were actually the first programming books I ever read and used (QBasic on I wanna say DOS in probably 1994-95 or so?) along with "Computer Programming BASIC for Beginners".
I remember Usborne having series from "the monsters". Eg. "The monsters teach chemistry" etc. One of them was the monsters teaching computer programming. I xeroxed and entire book and did every exercise in it. Several of the programs were in apple basic and i ported them to gwbasic.
The requirement to actually type stuff in and debug them before seeing results is underrated in these days of trying things in the browser.
I have fond memories of these books, particularly Write Your Own Adventure Programs[0]. If the number of times these get bought up of this website is any indication, a whole generation of programmers were taught by cartoon ghosts and robots putting numbers into boxes.
Love this. I had a bunch of these books I got second hand with some old computer equipment when I was a kid, around 2000 or 2001. I found them all super interesting, and the 'Practical Things to do with a Microcomputer' one especially just fascinated me, as well as the robots one and the 'Experiments with your Computer', even though we had a machine running Windows 98 and dial-up internet by this time and much of the stuff in the books was technically obsolete. But it all seemed super cool what you could do with all these machines, and I was a bit sad that I didn't really understand at that point how to do the same kind of thing (like hardware interfacing to electronics through a parallel port) with more modern computers and operating systems.
I think it probably set me up with the kind of fascination to start doing electronics engineering over just software.
How annoying, the website won't open the page as it automatically redirects me to the German site, and says the page doesn't exist. I'm not even in a german speaking area.
EDIT
Ok, got to home page, change region in top left to english/us, then reopening the link let me see it.
37 comments
[ 2.3 ms ] story [ 94.4 ms ] threadUsborne computer and coding books from the 1980s - https://news.ycombinator.com/item?id=32202822 - July 2022 (98 comments)
Classic Usborne Computer Science Books/Comics as PDFs - https://news.ycombinator.com/item?id=19679081 - April 2019 (21 comments)
Free Usborne Computer Programming books from the early 80s - https://news.ycombinator.com/item?id=13537871 - Feb 2017 (1 comment)
Usborne 1980s computer programming books for kids become free downloads - https://news.ycombinator.com/item?id=11051095 - Feb 2016 (37 comments)
Usborne 1980s Computer Books for Free - https://news.ycombinator.com/item?id=11044480 - Feb 2016 (1 comment)
I tried downloading "The Mystery Of Silver Mountain" book, and several pages in the listing part of the book appear to be blank (e.g. pages 18, 19, 20) when viewed with Preview on macOS. They display correctly in Windows 10 with Edge, and when viewed online (in Google Docs?)
They hold up very well, TBH.
Thank you, BASIC!
What folks take for granted, without really knowing it, is that the MS-BASIC system was a rather early system with built in garbage collection.
Consider:
We just take for granted that this will just work, but there’s a bunch of junk created here that eventually needs to be cleaned up.This is in contrast to the HP style BASIC that used dimensioned strings. This was much simpler and just needed work buffers that were readily reused.
MS had some notoriety about bad performance when things got too tight. But it’s cool to know there was this nice little bit of tech buried in 8K of 6502 or 8080 from the late 70s.
https://en.wikipedia.org/wiki/HP_Time-Shared_BASIC#String_ha...
The key detail is that HP BASIC dimensions the individual strings, where MS does not. Since the HP strings have dimensions, they're constrained. Given a typical max length of 255, you can see a string expression being done with a 255 byte work buffer and, when complete, moved into the dimensioned space. So, in the end, there's just a work buffer and the string.
With MS, strings are just pointers to places in memory (for examples the static strings in the code). So it's a whole "malloc/free" thing with the strings, but if the work space fills up, you can compact the heap and move the variable string pointers. Different mechanic. Simple garbage collection, but it is garbage collection.
I sometimes contemplate modernizing it for a 3D printer and a raspberry pi. My kid is (I think) approaching the age where he might want to give it a try. I really wanted you with my dad, but we never had time.
I still got a physical copy of it on my home office shelf. Not the same one I had as a kid mind you, because that one took a serious beating over the years. I looked for that book for years with only the memory of the general illustration style to guide me. One day about a decade ago I stumbled on it.
Love that these are freely available online as PDFs. That's freaking awesome!
I now have to go get the rest of the books from them. They seem to be absolute gems that I’d like to have in dead tree format.
Usborne introduction to electronics: https://archive.org/details/usborneintroduct0000beas
Fun with electronics: https://archive.org/details/funwithelectroni0000mcph/mode/2u...
It's actually surprisingly hard to come across more than a few - now and again ebay has books, for example, but most people seem to hoard them (understandably) and lots have been damaged/tossed/lost of the years.
I have a small collection, but I expect it won't get much bigger even with my willingness to pay €40+ for some of those titles.
(Yes I could download the "missing" ones I want too, in PDF, but I'd rather have real copies to flick through, randomly.)
I remember one of them being more about computers in general rather than programming and having this two page illustrated branching "flow chart" of a humourous choose your own adventure game. My first go at programming something from scratch was implementing that on a borrowed TRS-80 Model III before I finished saving up for my own computer (a ZX Spectrum later on). The code was just one long linear list of conditionals - Just PRINT, INPUT, IF/THEN, and GOTO. I'm not sure it even really used variables hehe.
There was another one on Computer Graphics too.
"Computer Spacegames" and I think "Computer Battlegames" were actually the first programming books I ever read and used (QBasic on I wanna say DOS in probably 1994-95 or so?) along with "Computer Programming BASIC for Beginners".
The requirement to actually type stuff in and debug them before seeing results is underrated in these days of trying things in the browser.
[0] https://sheep.horse/2017/2/usborne_computer_books.html
I think it probably set me up with the kind of fascination to start doing electronics engineering over just software.
There’s a lot to learn from these about how to teach.
EDIT
Ok, got to home page, change region in top left to english/us, then reopening the link let me see it.
They were also translated in French and quite popular.