As I begin to transition from Computer Science and Engineering to Engineering Education, I thought I’d take some time to reflect on the last two years of college teaching. After all, I’m not sure when I’ll get back to that, so I suppose now’s as good a time as any.
Table of Contents
As many of you know, I taught various computer science courses over the last two years at The Ohio State University. In fact, I wrote a reflection for every semester I’ve been here:
- Reflecting on My First Semester of Teaching
- Reflecting on My Second Semester of Teaching
- Reflecting on My Third Semester of Teaching
- Reflecting on My Fourth Semester of Teaching
- Reflecting on My Fifth Semester of Teaching
That said, I didn’t think it would be fair for me to reflect on what I’ve learned without giving some context. So, here we go!
First, I was an instructor for four semesters. In each of those semesters, I taught for the Computer Science and Engineering department. For the first year, I taught the Introduction to Programming in Java course (CSE 1223). Then, I moved on to teach the Software Components course (CSE 2221) for a year.
In both courses, I taught about 40 students with a nice mix of lectures and labs. In addition, I assigned quite a bit of work over the two years including written homework assignments and programming assignments. Likewise, I also administered and graded three exams a semester (excluding this wacky pandemic).
Both courses were fairly similar. However, the biggest difference was the teaching team. In my first year, I operated alone while meeting with other instructors weekly to discuss issues. When I moved on to teach CSE 2221, I picked up two graders. Each scenario brought up a different set of challenges.
Overall, I’d say I really enjoyed the teaching, and I hope to make a career out of it (if this whole content creation thing doesn’t work out). That said, I’d like to take some time to document some of the lessons I’ve learned over the past two years.
In this section, I’m going to list off a few things I’ve learned about teaching at the university level over the past two years. Naturally, a lot of these lessons come with a story that I may or may not have the time and space to really flesh out, so I’ll try to link as much context as possible. Feel free to dig through the stories if you’re interested. At any rate, let’s dive in!
Document Everything Explicitly
One of the biggest lessons I’ve learned over the last two years has really nothing to do with teaching and everything to do with covering your own ass. See, I tried to be as supportive as possible, but there were always students that tried to take advantage of me. It’s frustrating, but it’s part of the job.
Now, I don’t advocate for being strict. In fact, I’m quite the opposite. I believe college students are adults whether they act like it or not, so I trust them to do the right thing. If they make mistakes, they have to live with those mistakes. As a result, I tend to give them a lot of leeway.
Of course, as I mentioned already, letting students have their autonomy means that they will inevitably make mistakes. That’s totally fine! It’s how they choose to rectify those mistakes that occasionally leads to issues.
For example, basically every semester I had a student who took advantage of my flexibility. By flexibility, I mean that I don’t really punish students for things that I don’t think are important like attendance and late assignments.
Naturally, some students felt the tendency to skip class and ask for extensions. When I inevitably granted grace, an even smaller subset of students continued to take advantage of me.
In some cases, this led to students confronting me about turning in dozens of assignments right before the semester ended. Of course, that wasn’t fair to me as I had my own deadlines to meet: grades have to be submitted by a certain time. And yet, it was exactly what I deserved.
As I quickly learned, it’s okay to give students extra chances. They’re young, so they’re still learning to balance their priorities. Hell, a lot of them are just trying to form priorities. However, I also learned it’s okay to give yourself a little grace: establish fair expectations between the two of you and write them down in detail.
See, it’s not just important to write things down; they need to be explicit. That way, no one can misinterpret what you’ve written as a means of taking advantage of you yet again.
Speaking of establishing fair expectations, one of the other big lessons I learned was that it’s important to make sure everyone is on the same page as often as possible. In other words, its important that students and their teaching team align their expectations.
In my first year of teaching, I found that students were often frustrated because they felt like their grades didn’t represent their efforts. Then, when I moved on to teach with a set of graders, I noticed this issue pop up probably twice as often. As it turns out, if your graders don’t know what to expect from your students, you can be certain your students don’t know what to expect from your graders.
Now, I’ll say that ambiguous requirements are pretty normal in academia as well as broadly in life. That said, I don’t think systemic issues in the classroom should be why students are frustrated. In other words, you should make every effort to ensure expectations are clear and aligned between you, your students, and anyone else who might play a role in the classroom. Leave the ambiguous requirements to design projects.
One way to align expectations is to put together a rubric for each assignment. In my experience, students will complain if they don’t know what the graders expect, so a rubric is a nice way to alleviate that stress.
In addition, I’ve heard there are plenty of other ways to manage expectations. For example, if you have a teaching team, you could hold regular meetings to discuss grading. Likewise, you might try putting together a teaching contract that outlines explicit duties.
In any case, I find grades to be a rather annoying barrier to learning for a lot of students. It seems the threat of a low GPA stops a lot of students from doing the thing they came to college for in the first place: to hone their craft. The least we could do as educators is reduce student stress by leaving as little up to interpretation as possible.
Establish Alternatives to Plagiarism
One of the saddest truths I’ve come to realize is that cheating is just part of the culture. In fact, it’s so ubiquitous, I would argue that nearly half of my students (~100) have done it at least once. As someone who hates to play bad cop, this is by far the worst part of the job for me.
In my head, I like to imagine that I can reach every student if I just put in the work. In other words, if a student is falling behind, I feel like I can reach out and try to put them on a path to success.
In reality, it’s never that easy. For instance, I had a student this past semester who was going through a rough patch. They had basically failed everything I threw at them even when I gave them extra chances to succeed. When they inevitably failed the course, they still thanked me for putting in the time to support them. It’s moments like these that continue to give me hope.
Unfortunately, I just don’t have the same success with academic misconduct. For whatever reason, students who cheat find a way to rationalize it—at least to themselves—so it’s nearly impossible to convince them they’re wrong.
That said, I find that there are ways to at least reduce plagiarism. One quick was is to introduce alternatives like providing extensions and extra credit. That way, there’s less pressure to cheat, but students are still forced to put in the work.
Likewise, I also think there are ways to structure assignments, so students are less inclined to cheat. For example, if projects were iterative, students would be less inclined to cheat as the work needs to carry-through. How would they even find partially completed work anyway?
Finally, I think the biggest mitigation strategy is empathy. In most classrooms, instructors never even learn student names. As a result, students tend to feel like numbers or cogs in a machine. By learning students’ names, I believe students feel connected and engaged which could reduce plagiarism.
If this list seemed like a rant, that was not my intention. Overall, I was really pleased with my first two years of teaching, and I’m excited to get back at it (at some point).
That said, teaching still has its challenges, and I think this article highlights some of the biggest I’ve experienced. As a result, if there’s anything you take away from this, it should be the following list:
- Always explicitly document any accommodations you make to avoid misinterpretation.
- Align expectations between you, your students, and your teaching team using tools like rubrics, contracts, and meetings.
- Establish alternatives to plagiarism like providing extensions and extra credit.
With all that said, I’d appreciate it if you gave this article a share. Likewise, you can help grow this site by heading over to this list. It features other ways you can support this site like hopping on my newsletter or joining me on Patreon.
In addition, here are a handful of teaching resources from Amazon (ad):
- Teaching Empathy: Strategies for Building Emotional Intelligence in Today’s Students
- Combating Plagiarism: A Hands-On Guide for Librarians, Teachers, and Students
Last but not least, here are some related articles:
- Working with Challenging College Students (premium)
- Dealing with Difficult College Students (premium)
Otherwise, thanks for checking this out! I appreciate your time.
When it comes to organizing your logic in a program, one tool that can do a lot of heavy lifting for you is short-circuit evaluation. In this article, I'll give a little bit of background around...
Learning to write code in Python is a lot of fun, but you may find that life gets a lot harder when you start playing around with more complex projects. Let's talk Python's module and package system.