I memorized the ZX81 (and Spectrum) manuals back to front. Around age 11 I used to write out assembly long-hand and "poke" the OpCodes into memory to write programs and drivers. I really credit what has now been a long and happy career in software development to the affordable computers Sir Clive developed. (My family was pretty poor growing up, but I convinced my Dad to spring the 80 pounds or so for one after I borrowed a friend's and took to it).
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.
Same here - writing code in assembly, on paper, then looking up the opcodes in the back of the orange manual.
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.
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.