Seeing the talk at TED, I was impressed by the course description. Although I’ve dealt with computers in my career, I have never understood the lower levels.
I started my career with the precursor of computers – IBM tabulating machines and punched cards. Each machine had a removable control panel with a grid of holes. We had a supply of wires with metal tips at each end. We would insert the tips into the holes in predefined areas, e.g. for comparison and accumulators. Thus we could print payroll registers and paychecks.
We often re-wired the panels for various jobs according to written diagrams. To confirm that we had wired it properly, we had a small “test deck” of cards that would simulate data examples. We had a one-page printout of what the machine should produce. If the test printout looked good, the panel was deemed OK for production. The script .tst files here remind me of those test decks.
The wiring panels were replaced with stored programs, initially in punched cards. A computer system included a card reader that typically would read a deck of cards with the program instructions, followed by (many) cards with the actual data. My first computer to program and operate was an IBM 1401. After that, I did technical support for ever-larger IBM computers, the latest being AS400. I also learned data communication, in which data and voice traffic was routed and multiplexed. Many years later, I’m learning about multiplexor chips!
After retirement, I learned programming for personal usage. I’ve written several applications, mostly in VisualBasic.NET.
I also briefly dabbled in robotics that utilized microcontrollers several years ago. After completing this TECS course, I may get back to that.
I appreciate the mission of this course and the help provided in this forum.