Monday, April 7, 2014

Life in the Lab

After switching majors to computer science from electrical engineering in 1980 while at Kansas State University, I spent a lot of time in the computer lab. I spent far less time working on my projects than I did helping anyone and everyone with theirs. I was in one computer lab or another with the majority of my free time from 1980 through 1983, when I left college.

If you're imagining rooms full of terminals and PCs, you're forgetting that this was 1980. The computer labs were full of punch card machines, with 1 punch card reader and line bar printer. You would write your programs by hand on paper, then punch them in one line of code at a time on a single punch card. When you were done, you would wait in line to feed your deck of cards in to the reader, desperately hope that a card wouldn't jam, and wait for your time slice on the university mainframe until your printout was spooled to the line bar printer near the card reader. The process was often aggravating, tedious, time-consuming, and fraught with many points of failure that could delay you for hours.

I would rotate tours among the various computer labs helping people. When one lab became dead, I'd pack up and walk to another to see if I could help out there. This would continue some nights, particularly near a big project deadline for various classes, until 3 or 4 am, meaning I was in the labs for sometimes 12 hours straight. I was obsessed, but it was also immensely gratifying. My own projects had become so easy that they just weren't fulfilling. I hungered for more, and guiding other students through the logical process of deducing what was wrong with their own code was intoxicating.

My method was to never just give out the answer to the student. I would look at their program listing, figure out the problem, then start asking questions until they figured out the problem themselves. Depending on the skill of my fellow student, this process could take from a couple of minutes to several hours. But unless I had class (and even sometimes then), I never gave up on anyone.

Each lab had a small office staffed at random times with teacher's aid grad students employed by the department of computer science to help students. I tended to avoid those labs if the TAs where there, because a lot of them really didn't like me doing their jobs better than them. Students who I'd helped before would just come to me even if the TAs were there, because I really, deeply helped them. But the lab I spent most of my time at in those earlier weeks was in Seaton Hall, which was one the college of engineering buildings. The small, corner office in this lab was not defined by clear glass walls like the other labs, but with frosted glass because it was the office of one of the professors. I had never had one of his classes, and he didn't come out to help students. But after several weeks of my nearly constant presence in that lab, he saw me there helping students almost every time he was going into or coming out of his office. He came out one day, and walked straight up to me while I was just waiting around for someone to have a question. He wanted to know if I was employed by the department, since he had seen me helping so many students so often. I told him that I wasn't, so he asked me if I wanted to get paid to help them. I told him that I thought the TAs were all grad students, and I was just a sophomore. He said that they were, but he'd convince the department to make an exception in my case. He had overheard how I helped students through guided questions, and thought it was a better approach than any TA he'd ever seen. I couldn't believe it - I was going to get paid to do something I had been doing for free. I still spent a large number of unpaid hours in the labs outside my official, paid hours, but that was just fine with me. It was never for the money; it was for the high I got from just helping out.

No comments:

Post a Comment