This semester I was offered a teaching assistant position for CMPT 295 Introduction to Computer Systems. When I got the news, I was really excited because when I was applying for the position it felt like a completely useless attempt (like many others). But I still went through with it, mostly because it was a no-BS application (read: no cover letter required).

I first got the idea to apply for TA positions from Karol (a sessional instructor I had last year for a software engineering course).

On a side note, a bit about Karol: he was an interesting instructor, at times strange. He had a bizarre philosophy that all students should start the course on equal footing and for him that meant that no one should have any previous experience using languages or programs because that may give them an unfair advantage over their peers. So, he sought out Julia, a fairly unknown, general-purpose programming language and Fossil, an obscure version control system. We were forced to learn to use Julia and Fossil for the express purpose of completing our assignments and were well aware that we may never encounter these in professional development environments. The problem I have with this philosophy is that software engineering is not simply about a language and the technologies used to aid development but rather about solving problems, usually in a team setting. So naturally there will be some who are more experienced in those skills than others and that is okay. Rather, learning a new language may present an obstacle that is easier for some to overcome and difficult for others in which case the problem is only exacerbated. Trying to handicap students to level the playing field is not in the spirit of education.

Anyways, I mentioned Karol only because it was him who told us that it was possible to get hired as a TA while an undergraduate student. In fact, he had been a TA while doing his undergrad. Although preference is given in order of education level (post docs and grads get priority), there is still hope for undergrads, especially 3rd and 4th year students.

I always thought that I’d make a good TA. Primarily because the TAs I’ve had in computing science courses were not very helpful and I felt I could do their job better if I had the chance (I swear I’m not cocky). Another reason I wanted to be a TA is because I like teaching and tutoring. I’ve always tutored friends and family. In fact, my sister says she learns more math from me than from her math teacher. Maybe I should apply to be a sessional instructor. I think I’d be pretty nervous though.

CMPT 295 was not my first choice. It was a course that I did struggle with a bit, mainly because it was difficult to find reference material for assembly language. Maybe if I’d read the textbook more often it would’ve been easier. But I’m happy I got selected for CMPT 295 because it gives me a chance to brush up my assembly language skills.

The course is exactly as it was when I took it last year with the exception that IT Services has removed overhead projectors from the lecture halls and that was Brad’s signature lecture delivery method. He loved to handwrite everything. I thought he would switch to the document cameras but he now uses PowerPoint.

I’ll be overseeing my first lab on Tuesday so I better get prepping. I need to complete the first lab and assignment so that I can be ready. Maybe I should also skim the relevant textbook chapter. Really excited for this semester…