Things I Learned From Being A Teaching Assistant

Posted on 2023-02-03 14:00

It is my third semester at University, and I am able to apply as a course assistant for any course that I passed (assuming I passed with good score, that is). From all the courses that is available for me to assist, I took Programming Fundamentals 1. I was happy that I got picked to be one of the assistants in that course. While I have never really teached any group of people before, I do have my fair share of helping friends with their code, ranging from newbies to fairly experienced one. Surely, it wouldn't be too bad, no? Especially I am in a faculty where pretty much everyone is expected to be--at least--a little bit knowledgeable with computers.

At first, we had a meet with all the lecturers, and they always remind us that the people we are assisting is to be expected to have ZERO knowledge of programming. "Sure, that's fair", I thought. Considering not a lot of people have delved into programming in their high school, nor does any high school have them in the first place, it sure is expected that a lot of people have no experience in it. And since our job is only to assist, we don't really have to teach them from the get-go. Just any questions that is inquired to us, really. But either way, the workload seems fair and is not too demanding.

The first few weeks flew by, and there doesn't seem any troubles. People can seem to understand what the materials are, the average score for assignments are nice, everything seem to go smoothly. But over time there seems to be some issue that arises, and they are:

Windows Sucks

As a preface, I use my EndeavourOS as my daily driver. However, since the majority of people in the faculty uses Windows, I'll have to assist them with any problem (should they ask for it, of course). One of the most common problems is that running python with any argument results in the following message:

Python was not found; run without arguments to install from the Microsoft Store, or disable this shortcut from Settings > Manage App Execution Aliases.

Running python without any argument opens up Microsoft Store.

Apparently, for some random bizarre reason, Microsoft decided to alias python and python3 to App Installer. This is frustrating as it is completely misleading to people who have installed Python via its official GUI installer. The solution is to disable the aliases as the message says. However, you might think that "oh, they should just read the message!" and you would be right. But being a complete newbie, chances are you would be confused first, then ask someone who are more experienced with this. And that's fair--at least in my view.

Deadline Extensions

Starting to program is hard. Learning is hard. Putting it into practice is hard. We all know and go through that, but that is a process that we all have to do to take steps forward. The students here got weekly programming lab session, and that they have to finish a problemset that relates to the topic they have learned beforehand in around one hour. There is also a "big assignment" in which they are given a much more complex problem and have to finish it in around 10 days. These ones only happen 4 times in a semester.

There are times where students would ask for extension, be it for lab session or big assignment. I understand where it comes from, as more topic gets more advanced, the time it take might take more especially if you do not understand it well. Usually I'll be fine with lab sessions being extended if they cannot finish it well, afterall they can receive help live anyway. However, I cannot always say the same with these big assignment. As I said, they are given 10 days to finish the assignment, and in my opinion, that is more than enough time to finish. Granted, there are various reason that 10 days might not be enough, such as other subjects having their own homework as well. But there is one problem.

When multiple of these big assignments keep being asked to be extended, there seems to be something wrong here. I keep asking myself "What could be the reason why they keep asking for deadline extensions?", and after some observation, I feel like there are generally three things that makes them ask for extension:

  1. They have other things to do
    I feel like this is a no-brainer, everyone sure has things they need to do. Especially that there are a lot of event staffs are also part of the course. Infact, that is one of the reason they gave for one of the extension request. This is backed up by others upvoting the request, it feels rather to me that there is a lack of prioritizing issue here, but I digress.

  2. Other subjects have homework, too
    I don't think I need to explain here, pretty self-explanatory. But it does raise a question as to why only this course that seems to always be requested for extension...

  3. Deadliners
    Deadliners seem to be a big plague that spreads everywhere, and I'm not immune to it either--there are times where I only start doing things in the last days, so I totally understand.

All of those reasons are valid (with exception being the first one in many cases), but it does feel weird that there are multiple extensions being asked, and it is a thing that could be easily abusable, should the lecturer keep giving them the extension (especially those that gives long extensions as well). So I thought, "What is the perfect way to give deadline extension?". In general, the idea that I have right now is that we should give extension only as the edge of the deadline is approaching. Therefore, the students are enforced to actually do the assignment on the day of deadline instead of just lazying out to the next deadline. We should also give warning that these chance might not always come, and that they should be more mindful with time management.

But alas, I am not the one that is in charge of giving extension, that is up to the lecturers. It is just my personal opinion and is likely not going to affect anything. It is an interesting thing to think about, though.

Regardless, my time as a teaching assistant has been fun (and I get paid, too). I get to learn so much from teaching people, from how to explain things in various level of preknowledge to my very own time management.

Thanks for reading, have a nice day.