All Foundation CS classes implement experimental approach


Hard at work in the computer science lab, Dr. Torbert’s class works on an assembly code project. This year, a more project-based approach to FoCS was implemented. “I think projects are much better because there’s less stress and you can do it on your own time,” freshman Japneet Kaur said.

Ray Zhang, Staff Writer

To help account for the amount of time students were spending on assignments, the Foundations of Computer Science (FoCS) teachers have implemented a new experimental approach to all FoCS classes this year. 

Before this change, many students found themselves taking much longer than expected on assignments, which helped prompt the new change.

“One of my goals as a teacher is to just reduce stress as much as possible,” FoCS teacher Mr. McFee said. “It was painful to hear that [students were taking a long time on assignments], but it was really useful because it led us to get to the curriculum we have now.” 

The new experimental model includes more project-based grading instead of traditional CS tests and quizzes. 

“We always want to tie [lessons] back to something that is not only an actual problem to solve, but something that you guys can connect to and have a good time solving so that you’re not just going through an exercise or a worksheet,” Mr. McFee said. 

In previous years, some FoCS students reported that the curriculum involved more memorization and less critical thinking.

“I think in Foundations, it wasn’t too much of having to use your own problem solving,” Junior Rachit Raval said, who took non-experimental FoCS in his freshman year. “Foundations labs have a right way, and that’s what you’re aiming to do.”

To help reduce the memorization involved, one of the main goals of the project-based approach was to provide challenges for students to delve deeper into the course content. 

“Mr. Eckel, the team lead with the challenge success program, tried to provide students with authentic challenges that don’t go too overboard, but still gives you healthy opportunity to challenge yourself,” Mr. McFee said.  

Every unit has a certain amount of projects, organized at different levels. Students simply complete as many projects as they want, guaranteeing a certain grade for the unit. 

“We broke units into these different timeframes, where projects are now in these different tiers of difficulty,” Mr. McFee said. “So students can choose their grade.”

Originally, FoCS courses taught only Java, but now, the curriculum has changed to incorporate Python. During the first semester, students learn Python, and in the second semester, students switch to Java.  

“Python has really minimal syntax, so there are fewer things to keep track of,” Mr. McFee said. “It’s an interpretive language, so it works a little differently. The program tries to figure out what you’re doing as opposed to a compiled language that is very specific on how you write that code.”

At first, however, the CS department was not entirely sure how this change would affect students. 

“The main thing we were concerned about is, when you make up a project or a program yourself, it’s hard to say how easy or difficult it will be for someone else,” Mr. McFee said. “We went in with intentions that these assignments are of an appropriate challenge.”

Students have embraced the challenges and enhanced their logic and creative thinking skills to complete assignments.

“I feel like this class is helping me think outside of the box because I’ve never taken a programming class,” current FoCS student Lavanya Krishna said. “This class has helped me think from a different perspective, like how do I teach a computer how to do what I want it to do.”

Additionally, many students have found that a switch to project-based learning has helped reduce students’ stress and allowed students to focus more on learning. 

“Instead of spending a lot of time thinking, what did I get on this test? I can be at peace,” current FoCS student James Wright said. “There’s no doubt in your mind of what your grade will be at any point in time.”

Throughout the FoCS community, numerous students have expressed positive feedback towards the change. 

“Especially when learning a new programming language, using project-based learning as opposed to tests and quizzes is a great way to motivate the student because instead of just memorizing something and being tested on it, we’re actually creating something new,” Wright said.