Computer Science Club decodes the path to success

Gabriel+Mitnick%2C+a+senior%2C+writes+a+code+to+display+a+minesweeper+board+based+on+the+board+size+and+number+of+mines+that+he+enters.

Nikhil Vyas

Gabriel Mitnick, a senior, writes a code to display a minesweeper board based on the board size and number of mines that he enters.

It’s nearly impossible to go through a day without interacting with something that uses computer science. From technologies used daily, such as smartphones and laptops, to revolutionary inventions like commercial aircrafts and artificial intelligence, lines of code make things work.

“There’s an unlimited number of jobs in computer programming. They are some of the best-paid jobs around, as well as the most fun,” said Karyn Voldstad, the AP computer science teacher at Carlmont.

Voldstad is also the club adviser for Computer Science Club, which meets in D24 on Wednesdays at lunch. While Voldstad provides the computers and room for the club, David Fang, the club president, runs it. 

This year, the Algorithms Club and the former Computer Science Club merged to form one club, adopting the name of Computer Science Club. Throughout the year, Fang teaches members algorithms, lines of code that tell the computer what to do, to prepare teams for competitions.

Though computer science may seem daunting to learn, the club flows in a way where one who joins the club at the beginning of the year can be ready for competitions during the second semester.

“I do lectures on every single concept that you’re ever going to need in competitions starting with basic things like variables and arrays. Then we spend time on complex algorithms and being familiar with the programming language,” Fang said.

However, even people who join the club after the start of the year can still learn these skills since Fang shares his presentations with everyone in the club.

During the middle of the year, the purpose of club meetings shifts from learning new skills to completing practice exercises. At the most recent club meeting, members worked on a practice problem that involved generating a minesweeper board with the size of the board and the number of mines based on numbers that the user of the code enters. The practice problems done at club meetings simulate real competition problems, according to Fang.

Club member Darren Yao, a junior, commends the way the club prepares for competitions.

“I started doing competitive programming after taking AP Computer Science last year. I like how they teach algorithms and prepare people for competition,” Yao said.

The entire focus of the club goes into strengthening teams for two or more competitions per year. One of the competitions that some club members will compete in this year is Code Quest, Fang said.

Before each competition, club members form teams of two or three and sign up. On the day of the competition, the team has a set amount of time to solve about 20 to 30 problems that require the algorithms taught during club meetings. Teams can use any programming language to solve the problems. 

Although there are multiple people on a team, each team only gets one computer, so there is a lot of teamwork involved. Furthermore, there is not enough time to solve all the problems, so teams must pick which ones to do.

“Since there is only one laptop, you normally have one person type while the other people come up with the algorithms,” Fang said.

The algorithms needed for competitions are also applicable to real-world projects. According to club member Lilly He, a junior, writing efficient code is essential when making programs in a real-life setting.

“These algorithms are used in almost every game you can think of. The concepts necessary for competitions also build into bigger ideas to be applied in different fields of computer engineering,” Fang said.