3 ms·
In 1986, when I was thirteen years old, I bought a Commodore 16 with datasette at a German supermarket chain (ALDI). The computer came in a “Learn To Program” b
by antfarm 3y ago
In 1986, when I was thirteen years old, I bought a Commodore 16 with datasette at a German supermarket chain (ALDI). The computer came in a “Learn To Program” bundle with a BASIC course (book and cassette).
My next computer was an Amstrad CPC6128 which came with a great built-in BASIC (Locomotive BASIC) that made graphics and sound very easy with built-in commands. The manual was excellent and illustrated the language with small examples.
My third computer, an Atari 1040STE, also came with an excellent BASIC (Omikron BASIC) and a printed manual. Later, while still in school, I even ordered a Simula 67 compiler and manual from Lund University in Sweden, having read about the language and object oriented simulation in a computer magazine.
Programming for me was hobby as a teenager in the 80s, I made small games and simulations and illustrations of math problems completely on my own with only the help of those manuals and no help of an adult.
Learning to program was a lot more accessible back then. I am often pondering the idea of building an educational app that captures the spirit and limitations of the experience a beginner programmer had in the 80s. Low level graphics and sound commands with obvious semantics (e.g. PLOT, DRAW, SOUND) are in my opinion the best building blocks for a curious beginner to create their own programs with. Loops, conditionals, variables etc. then become something you want to learn about because you need them to create what you have imagined.
I switched from backend engineering to iOS development 10 years ago partly because in my opinion it is the closest environment to the cozy world of home computers.
Oh, and there were two concepts I never fully understood when I was learning to program on my own, namely recursion and pointers. It took me until week 3 of my first computer science class at university (Algorithms and Data Structures, taught in Modula 2 btw.) to finally get it.