Programming in C++ with Ms. Shapiro
This article was part of a series by the Board of Student Academic Support Services (SASS) that interviewed OHS teachers about the classes they teach. We hope these articles will be a useful resource for students who are selecting courses for following years.
SASS: What is your favorite thing about teaching Programming in C++?
Ms. Shapiro: My favorite part of teaching C++ programming is watching students discover programming. Over the years, there were many students who came into the C++ programming course feeling like they weren’t great with computers and that programming wasn’t for them. Yet, they went away having a deep appreciation for programming. They realized that anyone can program, the same way that anyone can form a logical argument or solve a math problem. They saw that it is important for everyone to have some background in programming, whether you are interested in the sciences or humanities. In a number of cases, students decided that they wanted to pursue computer science in college as a result of taking this course.
SASS: What challenges students the most in Programming in C++? How would you recommend that students overcome these challenges?
Ms. Shapiro: Programming is a circular process. Sometimes, there is a particular bug in your code that you cannot figure out. In those cases, you just have to step away from your program for a few hours (or even a few days!) and then come back and take a fresh look at your work. In many instances, taking a break will help you see something that you weren’t able to see before. Therefore, I always recommend that students start their programming assignments early so that they have enough time to debug and test their work.
SASS: What types of students do well in Programming in C++?
Ms. Shapiro: As I mentioned before, I think that everyone will benefit from a computer science course (whether the student is interested in the sciences or humanities). However, it is best for students to have completed intermediate algebra before they take the C++ course. Programming is forming a logical argument, so the more math you have going in, the better.
SASS: What does the average workload for each week look like?
Ms. Shapiro: Each week students are required to read a few sections in their textbook and complete 1-3 programming assignments.
SASS: What are exams and quizzes like in Programming in C++?
Ms. Shapiro: There are two exams each semester - the midterm exam and final exam. The exams ask students (on paper) to: answer conceptual questions about computer science, figure out the output of code, debug programs, and write programs given a prompt. The course also has four quizzes (on Canvas) which consist of multiple choice, fill-in-the-blank, and true-false questions.
SASS: How do you recommend that students prepare for exams in Programming in C++?
Ms. Shapiro: The best way to prepare for exams is to make sure you have corrected any mistakes in the programming assignments you were assigned for the course. I would also recommend looking over review exercises at the end of each chapter in the text as this will help students ensure that they did not miss anything.
SASS: How is the participation grade for Programming in C++ determined?
Ms. Shapiro: There is no participation grade for C++. However, participation is essential to getting the most out of this course, and students have many different ways that they can participate in the class. They can participate in class on microphone, in text chat, and in breakout rooms.
SASS: How is a student’s overall grade in Programming in C++ determined? What percentage of a student’s overall grade is determined by exams, homework, quizzes, participation, etc.?
Ms. Shapiro: A numerical course grade will be calculated according to the following formula:
Quizzes 5%
Programming Assignments: 40%
Midterm Exam: 25%
Final Exam: 30%
SASS: What materials do students use in the course (textbooks, lectures, online resources, etc.)?
Ms. Shapiro: The students will use a textbook and lectures. Students will program in Dev-C++.
SASS: Are students expected to be on camera for the entire class?
Ms. Shapiro: No, students will be on camera when they speak on microphone or when their group is presenting to the class.
SASS: Have you had any experiences with students in Programming in C++ that could encourage those who think they cannot excel in computer science to take the class?
Ms. Shapiro: Yes, I had a number of students who developed an appreciation for computer science after taking this course even though they were not (and still are not) planning to go into that particular science field.
SASS: What about computer programming interests so many students?
Ms. Shapiro: I think that computer science is as inevitable as math. I think that students realize that and want to be exposed to computer science. I also think that many students are interested in designing apps and games (which is an extension of the C++ course).