I thought I’d start a possible series of posts on Computer Science at Puget Sound, since it’s not a topic that makes the Student Life blogs that often. It’s a department worth attention, however, and for my first post I wanted to give a broad overview of the many opportunities at Puget Sound for students interested in studying Computer Science.
Computer science isn’t always the first thing that comes to mind when thinking of a liberal arts school, but there is no reason that this shouldn’t be the case. A liberal arts education can complement a degree in computer science and vice versa, and I believe that the University of Puget Sound’s Computer Science Department aptly demonstrates this.
The University of Puget Sound’s Computer Science Department occupies the top floor of Thompson and half of the Chemistry hallway. It’s been steadily growing since I entered UPS last year to the point where virtually all of its classes are full. There’s a lot of excitement going on in computer science, evinced by the growing popularity of the Association for Computer Machinery, Puget Sound’s computer science club/branch of the ACM, whose meeting regularly draw upwards of twenty members who participate in a variety of projects including dining services web design, artificial intelligence seminars, and weekly technical talks.
Compared to similar liberal arts schools, Puget Sound’s offerings in Algorithms, Computer Architecture, Graphics, Networking, Operating Systems, Artificial Intelligence, Software Engineering, and others allow students more practice in low-level computer science as well as plenty of experience in programming and theory.
I never thought that I would be a Computer Science major upon entering college. I was set on studying in the sciences as well as in the humanities, which made a liberal arts college a natural choice for continuing my education. Ironically, my interest in English and language developed in my humanities classes helped to develop my interest in programming languages, while my work in the sciences continued to confirm my interests in STEM fields. Computer Science was a natural way of combining my interesting in science and language.
I’d also had some programming experience when I was younger. I attended a camp focusing on game design and C++ and spent the next few years absorbing more and more programming. Most of the tools I learned are a testament to how fast computer science moves; a lot of the programming languages I learned are now old and obsolete. However, as I began to take college Computer Science, the underlying principles I was learning were things I vaguely remembered from years ago. Programming really had stuck with me, and I realized that I enjoyed coding and always had.
Now I’m enrolled in three Computer Sciences classes for next semester, and I’m currently enrolled in two classes. My classes cannot be more opposite – one focuses on low-level hardware and assembly language and the other focuses on higher-level java programming – but they both complement each other and are very manageable together. In fact, learning how to manipulate one’s and zero’s reminds you that no matter how sophisticated the software is you’re writing, it’s still built on fairly simple principles of logic, mathematics, and data storage.
Another benefit of attending a liberal arts school for Computer Science is the ability to participate in Computer Science activities outside of the classroom. The department’s faculty supervises student research projects, and all majors complete a capstone project in computer science. I’m currently embarking on a software validation research project, which will combine mathematics, logic, programming, and software engineering.
The ACM club helps to supplement the department’s offerings by holding biweekly talks on modern programming topics. I recently gave a talk on bioinformatics research, and others focus on programming languages and tools. We have frequent talks focusing on Python, a language I’ve discussed in previous blog posts that’s popular for a wide range of applications and robust enough that it’s used for prototyping at Google. Other talks focus on free resources for code version control or for developing web applications.
The Computer Science department at Puget Sound is very active right now, which is great considering the larger condition of the Computer Science industry. Computer Science jobs are certainly in demand right now. In a New York Time’s Article from September, the author cites an ACM statistic noting that there will be over 150,000 new jobs in Computer Science per year.
As Computer Science jobs continue to be in demand, I think that the Puget Sound Computer Science program will significantly prepare students to work in computer science related jobs. Not only does the department’s array of classes provide valuable skills in a variety of CS sub disciplines, but the liberal arts education that Puget Sound provides offers students practice in communication, critical thinking, and creativity that a purely technical education does not allow. Puget Sound’s liberal education promotes skills that will help students work in a wide variety of positions and will provide them with the self-motivation to continue to pursue computer science abilities even after graduating. In my experience, too, computer science is a field that requires programmers to learn new languages and approaches outside of a formal classroom setting and on the job, and students of the liberal arts are particularly suited with the research skills to expand their education outside of class.