Skip to main content

How I Became a Computer Science Major


How I Became a Computer Science Major

Card Key Punch Machine

At the beginning of my second year at Oregon I began to take Computer Science classes. I had been told while I was in the Air Force and also by someone who was into computers that I would be good at computer programming. I needed some science classes if I was planning to graduate and since everyone seemed to think I'd be good at computers I figured why not give it a try? I expected it would be an easy grade and heck, it sounded like it might be fun as well. So I looked into the Computer Science curriculum. In other fields of study I had found that beginning and intro classes tended to be less interesting and not really necessary for succeeding in the higher level classes. Subjects tended to get more interesting at the higher levels. Computers were going to be new to me but I figured I could at least skip the preliminary, first level of classes. I figured it would be no big deal as I'd been successful doing this in other areas. So I skipped the Intro to Computer Science class as well as the Basic Programming class. I really knew nothing about computers at this point and so I didn't realize that Basic was actually a programming language. I took the term Basic to mean simple, translation dull, class. I was supposed to be good at this so why put myself through those boring classes? I went right into the 2nd year of classes. I figured I would pick up the preliminary stuff along the way.

I signed up for Computer Programming I. This class was designed for Computer Science majors and was the first class of the second year of study of the Computer Science curriculum. In the first class our instructor introduced the language we would be programming in (FORTRAN). He then told us we would also be using a FORTRAN extension called FLEX. He proceeded to go through some of the FORTRAN commands and a couple of programming concepts we would need for our first assignment. He gave us an assignment to write a relatively simple program in FORTRAN and told us to compile it cleanly, run it and turn in our program with the printout of the results of our run. Whoa! I walked out with my head spinning wondering “Write a whole program day one? Don't we get any more instruction and guidance? Where do I even write this thing? How do I get a print out? What the heck is compile? Like gather information? Of what? I went to the computer lab the first chance I got. I didn't know where to begin. I stood there just looking around, then I saw someone from my class. I approached and asked him a few questions. Evidently I first had to get “punch cards” from the bookstore. So I went out to the book store and bought a box of computer cards after which I returned to the lab. I was informed that I needed to type my program onto these cards using a key punch machine. OK, I found the key punch machines. I sat down at one. I fumbled around and with some help figured out how to use it. My first big challenge: There is no making corrections to a punch card. If I made a typing mistake I needed to put in a new punch card and start over. Fortunately for me, each card only held one line of code. Still my typing skills were not great, not to mention that I'm a bit dyslexic. Needless to say, I went through a few cards. Once I was finally done I didn't know what to do with them and where this compile thing fit in. Again I saw someone from my class and they helped me out. They explained that I now had to put “JCL” around my program. “What the heck is that? Like a sort of clip or rubber band?” No, it's just another language the computer needs to actually run a program that is already in a computer language. Shessh! So what, it's like “Hi I'm Bob a computer program and I'll be speaking to you today in FORTRAN.” Hey, if the computer already knows FORTRAN won't it recognize when it sees it? Anyway, back to the key punch. I discovered that to both compile and run my program I had to turn in my completed punch cards, in order and with the JCL introduction, to someone who would feed them into the computer for me. There was more fumbling around by me, but you probably have already had enough and get the idea. Not taking those first year classes put me behind the class and it took several weeks for me to catch up, but I did catch up and my confusion passed. I soon became very comfortable in the computer lab. I started spending a lot of time there figuring things out and writing programs. It turned out that I was, in fact, good at computer programming, just not so good at typing. Despite being good, it wasn't always easy and it took quite a bit of time to complete assignments. OK, not so easy and required more effort than I had planned, but it also kept me engaged and interested. It was a lot like doing puzzles or solving philosophical problems. Writing a good program had a certain feel about it. There was a creativity about it that I liked, not unlike art. I enjoyed the classes despite the time it took to complete the assignments.
Sample of FORTRAN code

There were 120 students enrolled in the Computer Science program at the level I was at that fall. By the end of that school year more than half of those students washed out. I not only did not wash out, I turned out to be among the top of the group, just below the few geeks who basically lived at the computer lab. You know the type, or maybe you don't, they're the guys who loved to try to write and run programs that would make the computer crash. They are all probably living “high on the hog” in places like Palo Alto or Menlo Park today. Either that or they are spending their lives on the “dark web” hacking your computer and sending you ransomware. Maybe both.

I completed the first year of the Computer Science curriculum and started thinking maybe I'd continue in the Computer Science Program the next year. Fall came and I signed up to take the next year's set of classes. By the middle of that year I realized I was half way to a Computer Science major. There were really only two other fields of study that I had taken enough classes in to consider majoring in. One was Philosophy. I had lots of Philosophy, but what does one do with a Philosophy degree? The other was Math but I would need a couple more years of Math and at this point I was not too keen on doing that much more Math. A Computer Science degree at Oregon required a minor field of study as well. I thought perfect, I have plenty of Philosophy. To me they were similar. Philosophy, like computers, requires clear, precise, and logical thinking. I started thinking, with a Computer Science major I might be able to graduate with some sort of useful degree that might even get me a decent job. There was one big Computer Science project class that was required of all Comp Sci majors. After reviewing all the other required classes I would need, I figured that if I took the Computer Project class in the summer I would be on track to finish all the Computer Science required classes by the end of the fall term assuming I managed to get into all the classes I needed. I put in for a B.S. (B.S., kind of an appropriate degree for me no?) with a Computer Science major and a Philosophy minor.

Are you kidding me? The university informed me that they did not consider Philosophy a suitable minor for a Computer Science degree. I asked to see the person in charge. I attempted to explain that they were in fact quite similar. I told him that many of the reasons why I liked Philosophy were the same as why I like Computer Science. It all seemed perfectly logical to me. After all, whose degree is this anyway? He showed me a list of acceptable minors that included things like Biology and Psychology. What? Psychology was OK, but not Philosophy? Who decided that? Don't get me started! I still can't understand it but I lost the argument even though their reasons failed to make sense and mine were perfectly sound. Looking back I think having to accept their less than reasonable explanations was probably good experience for dealing with some of my future managers. Well, that left me with Math. Problem was I needed more Math classes and one of them was only taught in the spring semester. So I ended up staying the whole year. I could have also majored in Math except the one class I needed for the double major was taught by a teacher who was terrible. I was paying my own way and I was not going to pay for a bad teacher. Who needs a double major? A year ago I didn't even have a clear path to even one major. I've never regretted that decision. I was never asked about it and it didn't seem to hold me back. I graduated that June. (You can read more about that in my post of February of 2018 entitled “Graduating and Finding My First Computer Job”.)

My Diploma!

That was how I got into computers and ended up graduating with a Computer Science Degree. After graduating my plan was to get a job as a computer programmer until I figured out just what it was I really wanted to do. I never thought of computer programming as a career, even when I was working in the field, but that's the way it turned out.

Comments

Popular posts from this blog

Love, a Many-Splendored Thing

 Love, a Many-Splendored Thing Kris - 1986 D riving back to my apartment in San Francisco from the softball game all I could think about was the dinner with Kris. Kris is one month and one week shy of being 12 years younger than me. At the time she was just 25 where as I was 37. Not only that, I'd been around the block a few times. I mean I'd already been married twice not to mention that I also had a few other live-in girlfriends. Although quite mature in most ways, Kris was still young, a church goer, and clearly had high values. Still there was no doubt that a strong connection happened between us. The question in my mind was, given those differences, would she seriously be considering me as more than just a friend? O nce home I was still a little keyed-up so I put on the TV. At this time I generally did not watch much TV and I hardly ever put it on in the evening. But I knew I wasn't going to be able to sleep for awhile so I turned it on and found a mo

Something's Coming

Something's Coming * I was now working at Consilium, a software company in Mountain View, and living in San Francisco. Heidi and I were still living together but we were in the midst of breaking up. Heidi had decided to move out and was looking for a small studio and as such we started going our own way. Heidi was spending more time at her Mom's or at friends and I was spending more time down the peninsula as well as getting more involved with my co-workers at Consilium. T here seemed to be a sort of core group at Consilium. We, me and others who were hired around the same time, used to joke that they were the inner circle. It was more of a function of them having been at the company longer and had a common history of working and socializing together that we didn't share. My initial friends were Rama, Clem and Ismet who all started about the same time as I did, but soon I was engaging with others. As I started to participate in company activities I started to be

Kris & Me: The Early Days

  Kris & Me: The Early Days Ready for the Consilium Holiday Party O ur relationship started on September 30 th , 1986 and from that point on Kris and I did pretty much everything together. We saw each other all the time outside of work and we also worked for the same start-up company, Consilium, doing the same job, Software Engineer. K ris and I were two young, OK not me so much as at 37 I was on the older side for Silicon Valley, Bay Area residents both working in the Hi-Tech industry. Being Computer Programmers we were making good money. Neither of us had much debt, Kris had a modest car payment and I had none. Neither of us had a mortgage and we both had reasonable rents. We had ample discretionary income. Being young, or youngish we engaged in multiple activities. We were out multiple evenings during the week and generally Friday and Saturday nights too. We did tend to stay in on Sunday evenings. We started sort of a tradition where Kris would steam some artichoke