“No one should teach who is not in love with teaching.”
Margaret E. Sangster
I was always wondering what exactly makes a teacher a great one. Since I was a child, I had an admiration for this profession. It is not just about teaching and showing someone how particular things work exactly. This also means pushing yourself to your limits, and you might be amazed to discover some new skills that you did not expect.
So how did it begin? I had the privilege to know personally a few teachers from Technical University of Moldova with whom I discussed the possibility of delivering practical courses. In addition, it’s worth mentioning that ISD encourages this type of activity.
I had to choose between teaching practical courses to the third or first years students. Still can’t explain why I picked working with beginners, but I think that the only reason why they were my favorites is that I wanted to try a different approach with 1st year students, comparing with the experience I had while I was a student in the first year. I wanted to try something new with them, considering the fact that most probably few of them would be familiar with programming concepts or in general with programming definition (That’s something to be discussed later in this article).
I was given to perform practical assignments for following courses:
- Programming in C language (first semester);
- Data structures and algorithms (second semester).
So what was my initial knowledge about these two disciplines, and which tools should I have used to make everyone happy and make these courses interactive and interesting as much as possible? Well, that might sound a bit “unprofessional” (or even dumb) from my side, but I had no idea what would be the best starting point for this. In the following part you will see that my teaching experience can be divided by semesters in two parts, just like you’d pick the difficulty of a video game: beginner and experienced gamer.
Of course I had to start almost from beginning, recalling myself and even learning (yeah, you heard this right, learning!) what C programming language is about. Still I have to confess that there are specific parts I feel a bit uncomfortable with, but that’s a story for another article I guess ☺.
I prepared the following setup, tools and rules for the flow during semester course:
- Slack – as a messenger platform to discuss with the entire group or separately with each student, to communicate practical assignments, TO DOs list, and to perform Q&A session.
- Dropbox – alternative version for presenting practical assignment reports that came as an option to substitute presenting reports physically (printing results on paper). On Dropbox, I was uploading for each lesson next tasks to be performed by each student, a template for the report to be used and useful links towards the material to be studied were attached as well.
- No restrictions were set on which OS or IDE were to be used. However there was an agreement that if they installed a Linux distribution OS (either Ubuntu or Linux Mint) on their laptops and compile/run C code directly in terminal, their marks would be boosted. Unfortunately it seemed like students were not interested in the struggle related to understating Linux yet ☺
- Each assignment being presented after deadline would have been “punished” by a lower mark (“-1” to the final mark for the practical assignment).
- From the second semester, I introduced “bonus appreciation” method. Each practical assignment, besides having a pre-defined list of tasks, it had also optional tasks to perform, in order to have a greater mark.
I would be a liar if I would say that I wasn’t nervous on my first lesson. I would be a liar if I would say that students understood me each time I was trying to explain them the lesson. And yeah it’s hard to say if those guys did want to understand at least. However I will try to list down several things that I’ve learned after such an experience.
You can’t make everyone understand what you’re trying to teach. Sounds rude but that’s the truth, you simply can’t handle it. There are people committed towards learning and there are others who simply don’t want to put an effort in order to get the point or perhaps they were pushed by their parents to pursue this career. Still I didn’t figure it out, what’s the key to solve this type of situation but I think there’s something better than just simply ignoring it being present.
Get well prepared before a lesson! That particular advice might look a bit obvious, but you should keep in mind that you’re supposed to be an example for students. In case of any questions, you’re the first person they will be asking. In addition, of course, don’t worry if you don’t know the answer for a question, you just have to explain in a more diplomatic way that soon (might be even in the next lesson) you’ll provide most adequate explanation for it. Remember that questions are always welcomed!
“Obey the law” – follow the rules you predefined before the start of the course. Do not accept the situation when students are asking you to overlook your priorities. Rules were set to be followed right from the beginning.
You might consider applying the strategy “Good cop, bad cop”. At least I have tried to use it but in slightly different way. At each lesson, from first semester, I bought a pack of chocolates, so that students who successfully presented the practical assignment + additional tasks to be solved were rewarded with this “gift”. However, I have expected it to be a motivational one, it seemed to me that they were not really interested. As you might guess, that tactic was only the “Good” half from ”Good cop, bad cop” strategy. I felt sometimes that I should have applied the “bad cop” strategy as well, if I wanted the desired commitment from students.
Be a friend to the students but consider keeping the distance between them. Sometimes when you show too much friendship to them, they can forget that there’s a distance to be kept. Let’s call it in an easier way, “Keeping it professional”.
Try to inform students of all upcoming events related to their future job. Let them know of each conference that will take place in near future and try to talk to them about latest news (e.g. Computer science domain). If it’s possible, you can make them aware of possible internship programs that you know.
I really hope that my former students learned at least something from my courses, and I would appreciate it if one day they will meet me on the street and say hi, not just beating me up in a group of 5 or more☺. It was a good experience and a good opportunity to deliver presentations in front of people. Even though it was a bit difficult for me, I had to recover hours spent at the university during working day. Fortunately, based on the new procedure, those hours are not supposed to be recovered anymore. Now, dear reader, please make your own conclusion about teaching. No one says it will be easy, but believe me, you’ll rediscover your skills!
General advice to those who’ll become a teacher one day and will have to deal with students, show them the respect and you’ll have the right to ask for respect.
You can “try” as well the following approach, not sure it will work though:
Service Software Engineer