Becoming the Ultimate Teacher
Let’s be honest, Computer Science can be a challenging major. We all had sleepless nights unraveling the recursion behind Dynamic Programming, studying the head-spinning balancing process of the Red-Black Trees, and understanding the Disjoint Sets as it made us more and more disjoint with sanity. Okay, I might be exaggerating, but admit that you gotta love Computer Science if you want it to love you back. So allow me to tell you about one of the factors that fed my motivation and enthusiasm towards becoming the ultimate Computer Science student. Are you teaching a course? Perfect, this blog post shall guide you towards the high table of best teachers that really do shape the future of their students to perfection with their passion and love towards growing the next generation and their field.
I had the great privilege of taking two courses from Dr. Ben Johnson of the University of Maryland, Baltimore County (UMBC). Remaining of the post we shall refer to Dr. Johnson as The Ultimate Teacher because that is only fair! One of the courses I took from The Ultimate Teacher was was the scary Data Structures course (i.e. CMSC 341). To give you a bit of context, you can think of this course as a final boss you need to defeat before advancing to the big league that is Computer Science. Let me tell you something my friend, UMBC makes sure you earn to be a Computer Science major with this course. Well, to me this course was one of the most fun courses I have had at UMBC, because of The Ultimate Teacher. Just to clarify, not easy still, but oh man it was fun! Let’s take a deeper dive into why that is. You may find the below list like a cheatsheet to be a good teacher:
- The Ultimate Teacher used several techniques to keep the class engaged. First of all, slides were used as a helper to teach, but not as a teacher. The presentation slides were precise to the point, short and simple, and included just the right amount of relevant memes and cat pictures (which is very important to take the attention of Computer Science students, you know…).
- The fundamental concepts were thought with an active learning approach. The Ultimate Teacher utilized live coding to teach topics such as Linked List and effectively using an IDE.
- Would you Rather? The Ultimate Teacher would have a mid-class game called “Would you Rather?” where the students would select their preference from the given two options in a slide and ask questions about the options before the selection. The options could be something like “Would you rather become an octopus or code in Vim for the rest of your life?”. This was a fun but effective game that restarted the attention level of the students. In long lectures, we might lose our attention as time progresses, and absorb less information. Or maybe the night before we had a long hackathon, and we are tired. But as soon as you hear “octopus” is mentioned, you think “wait what octopus, I thought we were talking about the Leftist Heaps! Let me listen to what is going on…”
- We had to learn different features of each data structure thought in the class. This way, when a scenario is given, we can select the best data structure to utilize. The Ultimate Teacher thought us to think of the data structures like the superheroes. Each has some strengths and weaknesses. This is a great example of how a topic can be made memorable, easier to understand, and thus apply later.
- Red-Black Trees was one of the data structures we learned in this class. Well, The Ultimate Teacher being the ultimate teacher, they developed a board game to teach the concepts of the data structure. We played the board game, which pushed a stronger understanding of the concepts behind the topic. Here we see an example of going above and beyond just teaching, but teaching in ways that establish a thought process of a Computer Scientist for the student. I love it!
- The cat cam! Like the rest of the world, we had remote learning during the peak of COVID-19. During this time I took the Software Development class thought by The Ultimate Teacher. The advantages of online learning were pushed to its highest potential! There was a cat cam present on the side of the screen, where we had the chance to watch Jules (the cat). Once again, a great example of how to keep students engaged to the lecture.
These are only a few examples I recalled from the past. The Ultimate Teacher was one of many great professors I had at UMBC. My point is that a good teacher makes a difference, makes Computer Science fun, makes learning fun, and shapes our future. I decided to pursue graduate school after taking the Data Structures class. For this reason, I am so grateful for The Ultimate Teacher and their love for teaching. Thank you, Dr. Johnson!