My Programming Autobiography, Part 2
When I graduated high school, I ended up in various jobs: flipping burgers, folding linen at a hotel, warehousing, and working in a plasma donor facility spinning blood in a centrifuge. It was at the Fred Meyer warehouse in Clackamas, Oregon, that I had a back injury that set my life in a different direction, but in some ways, back to the BASIC–language, that is.
For a couple of years, I fought my way through the Workers Compensation system. Things weren’t good then. I spent weeks on end in bed or doctor’s offices. I could sit up a little for small amounts of time and the future looked pretty grim for our family. About that time, Radio Shack came out with the Color Computer (CoCo).
It hooked up to a television and programming was done with the BASIC language. With 4K of RAM, there wasn’t a lot I could do on it. Couldn’t afford to upgrade to the seemingly unnecessary 16K. I tinkered around with it for a long time, wrote some pretty awesome programs and was using it to do all sorts of cool stuff. Mostly, I was teaching myself BASIC again. I still have a couple of these wonderful little devices in a box somewhere in a crowded closet.
Because of my injury and inability to return to warehouse work, I ended up at a school called, Computer Career Institute (CCI). My first class was in programming fundamentals, and the language? BASIC. Things had changed somewhat since high school. The teletype was gone and I got to work on an amber CRT screen. The editor was a funky line editor.
You didn’t always see the code as a block. A lot of it was in your mind unless you listed it. I had to do things like type:
I15 INPUT $A=A$
That means, insert a line 15 with the command, “INPUT A$”. I wasn’t exactly always looking at lines 10 and 20 when I did it. I just had to remember in my mind what lines 10 and 20 said. As clunky as that is, it was a good exercise for the brain. I passed with an A.
The next languages we tackled were RPG II and COBOL, both now relics of the dim past. I got A’s in both of those languages, as well. Naturally, along with learning how to code, we were learning some of the standards of the programming profession, things like documentation, design, flowcharting, and a thing called structured programming.
Structured programming was were I learned to eschew the wicked GOTO statement of BASIC. Strangely, just about every programming language I have ever learned has had a version of the GOTO statement. I don’t use them, but they’re always there.
The finally term at CCI was the class on BAL (IBM Basic Assembly Language), performed on a mainframe computer called an IBM 360. Assembly Languages are one step above machine language. Machine language is where you’re programming using binary numbers that represent data and operations. It is really cool. I didn’t see it as being very useful in a business sense, but I really loved just shoving bits and bytes around.
That led me to curiosity about the machine and assembly languages on the CoCo, which has a Motorola 6809E processor. In my off hours, I tinkered around with that. I also bought a couple of other compilers and interpreters for my CoCo, especially when I upgraded to the whopping 32K CoCo II.
At school, I did a stint in the computer room learning how to load and unload the enormous reels and cassettes of reels of magnetic tape. I enjoyed a reputation as a tutor. I graduated from CCI with a 4.0, an award for perfect attendance, and the honor of being voted Most Outstanding Student of my graduating class.
To be continued… Adult Programming
[Note: Thanks to Steve Willoughby for a correction.]