Q&A: C++ club makes changes in teaching style


Nathan Stevens

As senior Christopher Chang looks around E203 for his fellow C++ members, he finds himself disappointed with what he sees. Getting ready to start their weekly informational meetings about the programming language C++, he makes sure everyone is there, but over the weeks, he’s watched as people dropped off the radar. One by one fewer people came, with, at times, less members than officers present at the meetings.

Chang, the current C++ club president, and juniors Min Hoo Lee and Aditya Ramkumar, the co-presidents for next year, along with the other officers, decided that changes needed to be made in order to improve the club’s membership. They sat down to answer some questions on what they plan to change about the club in the next year.

El Estoque: What does the C++ club currently do?

Senior Christopher Chang: The point [of] our club is to teach [the] C++ [coding language] to our members. We have weekly meetings, or at least we’ve tried to, although recently that hasn’t worked out so well …. We teach C++ concepts, general programming concepts, that kind of thing. We have lectures, and we have labs as well.

EE: What is the overall goal of the club?

Junior Min Hoo Lee: We have the same goals as a lot of engineering clubs … inspiring people, but particularly in C++. We really want to teach the language and [motivate] people to continue learning it after high school.

Junior Aditya Ramkumar: To a certain extent, this club is a lot about the way things are implemented in C++, in addition to the way we do things in school. In school, things are usually in Java, and we just want to try to build off that and teach how things are implemented in C++.technology-1283624_1920

EE: You mentioned changes you were going through, can you elaborate on that?

CC: One of the changes that we were considering was to implement Arduinos [open source microcontroller kits that can sense and interact with objects] into the curriculum instead of just… C++.

AR: We actually had an issue where we had members not showing up enough to meetings, so we wanted to move from the former [system] of lectures and labs to a project-based environment. So essentially there are these small computers and processors — that are either Raspberry Pis [miniature computers that can process simpler tasks and connect to other computers] or Arduinos — and we want to help the members run a program on that …. So for example,[they could] have a computer that controls something, or something that’s tangible instead of just something that’s online.

CC: If we were to implement this, it would probably be a mix of teaching C++ and … having open-ended projects. It would just be integrating it into our already existing curriculum to make [it] more balanced.

EE: How did you guys decide you needed to change things?

AR: The primary reason we changed things was because we had a very poor member retention rate with the old way of just lecturing and minor projects. We felt that members didn’t really have a reason to come back, and so we wanted to have Arduinos as something where they could come back and work on the same project.

CC: The long-term project is definitely one reason why we did Arduinos, the other being [that] it’s a new direction. Members don’t want to necessarily be coding up things that don’t have much of an application.

ML: We moved to Arduinos because that’s the sort of thing you can actually see. You can touch the project and see the results in real life. You can have LEDs, you can have a bunch of different sensors, like temperature sensors, you could make a shooter robot that shoots ping-pong balls. I’ve seen tons and tons of different projects, and it’s really up to the person to decide what they want to do. It gives them a lot of flexibility, and I think it’s far more interesting than just stuff on the computer itself.

EE: How is that going to affect both your current members and new members that come in next year?

ML: Current members? Hopefully, expand our member size … The room we’re currently in is super packed all the time because of the [Computer Science] lab and a lot of people come in. Some people are really turned off by that … but one thing we’re able to do with the Arduinos is that we can actually let people take it home. Now they’re kind of tied to their project.

EE: Were there any decisions in particular that were hard for you guys to agree on?

ML: Yeah. And I think the main reason why we had that huge internal debate about whether we wanted to do projects or just application is because [Ramkumar] and [Chang] come from a different background than me. [They] have done mostly pure C++ but for me, I learned C++ through robotics, and we use C++ in robotics all the time. But our focus is mostly on building the robot, and in turn, building the robot will inspire people to learn the language, so that’s my sort of thinking. That if we do some sort of application that uses it then people will learn the language, but their thinking is more focused on the language itself, so it’s definitely two different standpoints … personally, I think mine is [more correct].