I'm truly grateful to have been part of that, it gives such a perspective...
Wasn't this what the One Laptop Per Child (OTLP) project was trying to achieve? The problem is that when the ZX, C64 etc were around there was no alternative. If you wanted to play games, you could either shell out for more hardware and purchase the games on disk or cartridge, or you could type them in from a magazine (several times) and hopefully save them to a cassette.
These days, if you want to play a game, you reach for your phone and install a free one that is far more capable than anything you could develop yourself.
The real trick would be to create a development environment that will run on a phone. Apple have gone somewhat down this path with their Swift Playgrounds and you could always work with Scratch and similar systems or you could even do something in html/javascript, but none of these really give the same imperative to learning how that the original home computers did. You really need a system that lets you develop a full program, share it with your friends and modify (and break) it.
You know the reality is that we do have these systems, and kids that are interested in doing anything other than just playing games can access them with a minimum of problems. I wonder how many of those ZX Spectrums, C64 etc were given to kids, who on finding that they had to actually do some work to make them do anything useful relegated them to a shoebox under the TV. It is possible that for every positive story about "kid learns programming from ZX Spectrum" you would have a hundred stories of kid calling ZX Spectrum a piece of crap.
There was a third possibility: you could figure out how the game worked and write your own version from scratch. I learned so much about programming by writing a Pac-Man clone on a ZX Spectrum simply because I didn't have the pocket money to keep feeding the arcade machines, or even to buy someone else's knock-off version on a cassette tape. I quickly got bored of typing in other peoples' programs from a magazine, much more fun to write your own.
My memory, it was generally true about the C64/ZX split being about gamers vs coders; however I did know some "Speccy" owners (generally with slightly-better-off parents) who had lots and lots of different games on tapes and did nothing but play games on the machine. Yes, I "borrowed" a lot of games by copying the tapes on an Amstrad dual-cassette stereo system (thank you, Sir Alan!) but I'm really glad that generally, scarcity of an "easy option" forced me into a place where I had to write my own code.
I agree. When there is no shortcut you find much more motivation to go the hard way. I was in that exact position when I was 10, and I kept messing up copying the basic lines from books so I got a book for kids that teached me basic, this way I was making my own code and could debug it. I made simple games completely from scratch that way it was how I got into programing.
I can understand that now with so many shortcuts available for kids the same motivation is not there anymore. It's like once you get access to cheat codes in a game that makes you invincible and gives you infinite money, the challenge is not there and you lose interest.
In my experience, that tended to happen more with the kids who got the C64s. Those were the ones with color TVs and Betamax at home, too.
I remember games that had a note on the back of the box asking for programmers to send their work to the publisher's address for consideration. Magazines advertised commercial software obviously sold by one guy out of his house, and featured interviews with programmers who were only a few years older than me. If you owned a home computer and could program it, you imagined you could access this growing and exciting world, and maybe make some money.
With early Sinclair systems, each key on the keyboard would act like modern auto-complete: you would start typing and keywords would appear almost magically. On the BBC Micro, you powered on and heard the trademark beeeeep-beep and were instantly presented with a prompt where you could start typing a program or other commands. Everything in those systems was geared towards immediate responses and inviting you to start programming them straight away.
OTH... Taking a RPI400, and build a stripped-down linux system which resembles Sinclair BASIC could prove to be a fun exercise.
Edit: I just realized how expensive the ZX81 was here in Germany back in 1981 - it'd set you back 450€ by todays value.
Bloat is the moat were stuck in.
An unsustainable sin,
a cognitive load,
too heavy to comprehend,
a house of cards,
the opposite of smarts.
Indeed. After I saw this sad news and your comment, I was reminded of an earlier HN comment¹ I had written about the joy I experienced as a young child learning to program on a ZX81 and my regret that my children’s generation are not growing up with the same opportunities. I’m not sure there is any analogous device I could give my kids when they reach the same age any more. Any device they do eventually get when they’re older seems more likely to have preinstalled social media apps and regular security updates than a preinstalled programming environment and a line in the manual reassuring you that nothing you type will break your computer. Something certainly has been lost.
I compared that to my phone - 256Gb of storage, 32Gb of memory, plus sound, graphics, wifi, and the kitchen sink.
Learning on the Atom was easy because it was so simple. And as I mastered it, so computers became more complicated. It was, in many ways, the perfect method of teaching tech. A new programmer nowadays has to learn so much so quickly to be able to write anything useful, it's often overwhelming. Trying to teach my gf how to code was painful because we were always bumping into rabbit holes of complexity, which we could either go down and waste whole days, or avoid and leave an area of ignorance that would bite later. I never had that problem. It's humbling - I wonder if I would even be a dev if I hadn't had that advantage?
I still give him shit for it
The 8 year old is the most enthusiastic about it. He is second grade at school and knows addition, and subtraction, and his times tables but has not started multiplying more than single digit numbers.
Right now they are mostly placing blocks around and decorating the world, but they are very interested in the lua scripting. I have no doubt that they will soon be attempting to read that read the Roblox API docs. Actually, they'll be watching youtube video tutorials.
Anyhow, I just wanted to point out that while the old 8 bit days are gone, there are plenty of ways kids can build things and tinker with computers and software.
PS: buy your kids a Steam Deck.
If you do want a similar experience (at least superficially) to a spectrum 48k, get a Pi 400, don't connect it to a network, but don't expect the same outcome as you had -- the world is different, there are very different things competing for attention, and different rewards for time spent.
What you could do was limited enough that you could master it, and I really think that's a good thing for education and motivation. When I think about teaching my kids to program today, I effectively get "choice paralysis" from all the paths I could go down and the options within easy reach.
Having to write out the bytes and using DATA to store them, and POKE to put them in-memory. Calculating the JMP offsets by hand, and taking the time to SAVE to cassette before running it for the first time.
I didn't write much assembly, but I spent a hell of a long time removing protection from Spectrum games, and patching the code to give me infinite lives/time.
They were available as bargain sellout at the time(1985).
When other people already used Commodore64 or the first Amigas or Atari STs.
But I've been sceptic and low on funds :-)
Wasn't that difficult because there weren't much parts. And no SMD.
Scale was almost like electronic breadbording.
And it worked for the first time!
Regarding the Handbook, compare this image of the cover
[1] https://i.imgur.com/0WarG.jpg
with
[2] https://en.wikipedia.org/wiki/Zaxxon
I felt so very, very Zaxxonized!
Anyway, it lasted me about half a year, where I got a 16KB RAM extension,
learned how to duct-tape this so I don't get resets,
a data-capable cassette recorder for reliable storage, which my ghetto blaster didn't do,
learned Z80 assembly including illegals,
replaced parts of the ROM with RAM to get glorious 256x192 pixels
in black & white instead of block graphics,
and finally got an Atari 520stfm with flicker free 640x400 pixels on 12 inches,
because why not? I've already been used to BW from the ZX81.
I freaked my parents out by switching chips between our C64 and the floppy drive to see what would happen (they had almost compatible CPUs and IO chips - many things kept working).
Also: Repairing by touching chips to see if any of them were unusually hot was fun...
EDIT: to bring this more back to the thread subject, as a Commodore user at the time we used to make fun of the Spectrums, but they absolutely had a massive impact on the market. Including on competitors - e.g. Tramiel got spooked by how cheap the ZX81 was, and it certainly contributed to choices made at Commodore. Sinclair's influence as a result spread wide and far beyond the sizable direct influence of his own machines.