Programming is like being a god. You can tell the computer to do things and it does them, no questions asked, no hesitation, no modifications. It’s hard not to like computers better than people when they obey your commands so completely!
Programming can also be very frustrating. You tell the computer to do something – and it does – EXACTLY what you said, typos and all. So if the computer screws up, guess what? It’s your fault because you were telling it what to do.
I first encountered programming when I was 10 (in the mid-70s). My dad was very into electronics and he got a PET computer. We had a small house and I had a dresser in my room that somewhat resembled a desk. So that is where the computer ended up.
You can see in the photo that this early computer had a cassette tape drive. It took about half an hour to “boot up” and another half hour to load a program. I played space invaders and a psychiatry game.
The psychiatrist game would ask you a series of questions (as if you were laying on the couch in it’s office) and then give you a “diagnosis” based on your answers. It was that game that first got me interested in programming. Some of the answers were pretty lame, so could it be made better somehow? I’m still interested in how to make computer programs “speak” more like real people.
In the following years we got other toys at my house. There as a lunar landing video game where you could “program” the space shuttle to land on the moon. And a TRS-80 that we typed in text-based adventure games and I modified to have “better” treasures for my friend when she came over to play.
That being said – I hated computers. My dad was really into computers and electronics and I spent a good part of my early years jealous of the time he spent in the garage playing with his toys. By the time I started college I was not very interested in learning to program, or having anything else to do with computers. My first computer literacy course didn’t do much to change my mind either. It was all about the history of computers and some BASIC programming tasks.
BASIC in those days involved typing a LOT of line numbers…every line had to have one. Typing was the one class in high school I almost flunked, in spite of putting in a lot of extra time trying to learn the skill.
On the other hand, I found out that I was pretty good at figuring out the logic and debugging other people’s programs. So the class was not a total waste. It didn’t make me feel better about having to take a different intro to computers course when I changed my major though: FORTRAN.
I started the course not all that happy to be there, but finished it with a load of enthusiasm. So much that I changed my major. You see, FORTRAN ditched the line numbers and all of the sudden I could really do things! It was very exciting to figure out algorithms and I loved hanging out in the computer lab helping my classmates finish their homework.
I learned COBOL and Assembly (PDP-11) and even some electronics. By my third year in college I realized I really wanted to be in the Software Engineer track, not the one I was in. But that meant 4 more years of school and there wasn’t enough financial aid to hold out until I got the full degree. I ended up taking a “transfer degree” instead and dropping out of school in hopes of getting a job and having a paycheck instead of school loans.
Looking back on it, I have to say that was a huge mistake. If you are in school, finish what you started. Especially if you have student loans that you will need to pay back. The degree makes a difference, even it it’s the wrong degree! (You can make more with your wrong degree, and that will help you transition into the right field later.)