Computer science (CS) is present all around us. In our increasingly connected world, our digital technologies rely on a foundational understanding of computer science and software engineering; this is the focus of the Hopkins CS major.
In an interview with The News-Letter, Department of Computer Science Associate Teaching Professor and Director of Undergraduate Studies Joanne Selinski explained the purpose of the department’s classes.
“We teach the students the foundation so that they can go build the new technologies... We do not necessarily teach you the latest and greatest new technologies,” she said. “There is a fair amount of independent learning with flexibility for electives and relatively few required core classes.”
Learning how we can better design and create systems where computing power is used to help us in various goals is a fundamental goal of CS. This study of largely software computing is what differentiates CS from the more hardware-focused computer engineering major.
The increasing prevalence of CS in our everyday lives is also reflected in the growing size of the major, which, according to Selinski, has been declared by over 600 students, including 200 as a secondary major. Nearly 200 students have declared a CS minor.
Selinski noted that many students combine CS with Biomedical Engineering, Applied Mathematics and Statistics, Neuroscience and Cognitive Science majors.
“Generally students who choose the CS major like problem solving and often interests in applied math are helpful but not required,“ she said.
Abhi Mohnani, a junior majoring in computer science, echoed this sentiment in an email to The News-Letter.
“I chose the CS major because I had some programming experience in high school and I really enjoyed the problem-solving and critical-thinking aspect of CS, where you have to think of the most efficient algorithm to solve a problem,” he wrote. “Through the Hopkins CS major, I hope to continue learning theoretical CS concepts while also taking a few classes to learn the frameworks often used in the real world.”
Hopkins adds a unique perspective to its academic and research pursuits in CS as there is a large data science and machine learning focus in the Center for Language and Speech Processing and the Information Security Institute. There are also unique opportunities in areas such as medical robotics and computer integrated surgeries.
Mohnani added that he found the other students in the major make it enjoyable and collaborative.
“I've found that people are willing to collaborate and work with each other,” he wrote. “Also, I appreciate the balance the department maintains between theoretical CS and applied software engineering. I've been able to learn practical skills such as maintaining git flow in some classes while also learning concepts such as the math behind machine learning in others.”
Outside of classes, Selinski shared that there are several student groups for CS extracurriculars such as the Association for Computing Machinery (ACM) and an ACM chapter for Women in CS. There is also a yearly hackathon, HopHacks, with similar smaller events throughout the year. In addition to the Artificial Intelligence Society at Hopkins, a student group focused on artificial intelligence, and the Google Developer Student Club, there is a wide variety of other groups related to software engineering and product development. Hopkins also has a chapter of Upsilon Pi Epsilon, the international honor society for computing and information disciplines.
While there are certainly rigorous courses in the major, according to Selinski the overall program provides opportunities for students from all majors to explore and try courses outside their comfort zone.
“Anybody can do CS, and it is important that we have a diverse range of students, because CS students build technologies that are impactful in modern life,” she said.
With an emphasis on projects and teamwork in many of the classes, it is easy to see how the CS major at Hopkins can prepare students to contribute to and innovate in society.