It was my first exposure to programming, and a bit too early perhaps. Other than an occasional session on an ancient TRS-80 in high school, I didn't do any real programming again until taking a Turbo Pascal course in the mid 90s in college.
It was my first exposure to programming, and a bit too early perhaps. Other than an occasional session on an ancient TRS-80 in high school, I didn't do any real programming again until taking a Turbo Pascal course in the mid 90s in college.
Of course not having a printer meant the only way you could understand the now totally tangled spaghetti code was to keep all of it in your youthful short-term memory. Having nobody you could ask or learn from just added to the toxic mix.
Even now thirty years later the thought of programming like this makes me feel ill.
I still remember trying to work out how to program in machine code by poking different values into memory. I had my own guide on what values to avoid and what values worked without having the slightest idea what I was doing.
[1] https://duckduckgo.com/?q=sharp+pocket+pc&t=ffab&iar=images&...
10 REM main routine
20 REM do stuff
1000 REM another routine
1010 REM do other stuff
2000 REM a 3rd routine
Then have GOSUBs / GOTOs using the n*1000 as the entry point into that routine. RENUMing the source when you've got the aforementioned structure was not an option.[1] (what a horrible link) http://www.cpcwiki.eu/index.php/Locomotive_BASIC#RENUM_.5B.E...
It was always a pain because instruction-length varied and you had to account for the length when calculating the number of bytes to jump forwards/backwards. (I tended to prefer relative-jumps to absolute ones, but either way the same problem remained.)
http://www.colorcomputerarchive.com/coco/Documents/Manuals/H...
As a kid (and I still own them) I had a Color Computer 2 and 3 - I programmed a ton of things on them, which ultimately led me to where I am today as a software engineer.
Ummm, don't feel bad, you actually needed to. Each character of those variable names takes up RAM.
Not to mention that at least on the C64, only the first two characters are significant anyway, ie, 'abba', 'ab', and 'abcd' all refer to the same variable.
Scrolling down to the bottom of this page you can find them online these days:
https://usborne.com/browse-books/features/computer-and-codin...
Just seeing the covers is enough to take me back ..
"We used to have to write our own programs, like actually use buttons to type characters. It took a year or so kids."
This seems an awful lot like saying, in (let's say) the 18th century, "the horse is an efficient way of getting from one place to another, so I don't see that changing." The keyboard seems efficient now, but it, or, to be certain, some current and apparently perfectly satisfactory technology, certainly won't do so after the next big innovation.
People will be programming computers for a very long time to come and they will, for the most part, be using a keyboard to do it.
I'm definitely not suggesting holding your breath; it would be foolish to say "keyboard-less programming is just around the corner, so don't bother with your keyboard!" On the other hand, a confident prediction like:
> People will be programming computers for a very long time to come and they will, for the most part, be using a keyboard to do it.
(the keyboard part, at least) seems to be a sure route to some future "640K should be enough memory for anyone."
Indeed it is! We are all supposed to be living in a post PC world where everything we do, programming included, will be done on a tablet!
> (the keyboard part, at least) seems to be a sure route to some future "640K should be enough memory for anyone."
Heh. Ok. But is this the same thing really? I mean, how many forms of input are there? We've tried the obvious ones and the keyboard just sticks with us.
I guess it's not the same thing in that it's at least obvious what one could do instead of a 640 KB limit (just install more memory), but I still think there might be some life to the analogy. I agree with you that there's no obvious substitute for the keyboard, but that to me says only that it is a local maximum—with a potential further global maximum to be discovered, probably not by obvious changes, and necessarily not by perturbations to what we have already—which might (or, I'll certainly grant, might not) be bettered.
In other words, computers getting easier to use doesn't affect the complexity of the aforementioned "business requirements" or the kinds of research problems we attempt to tackle, which are only getting harder.
But yeah, ten minutes to load one program from tape... that was a productivity killer.