Computer Science students.

Computer Science

PROBLEM SOLVING FOR SOCIETY

Build the solutions of tomorrow.

Beyond fundamental programming and coding skills, the essence of Computer Science is problem-solving. As a Computer Science major at Whitman College, you will develop the computational skills to create innovative solutions that truly help others. If you seek a dynamic course of study balanced with career-boosting activities in the close company of engaged faculty members and students, there’s no better place to pursue a Computer Science degree than at Whitman.

3 Reasons to Study Computer Science at Whitman

Community, Community, Community

We believe Computer Science is a team sport. Whitman Computer Science majors support each other and enjoy small classes that maximize interaction and inclusion. We actively counter intimidation and isolation with peer mentors, labs right across the hall from professors’ offices, and clubs and jobs across campus, among many more opportunities to connect.

Catalyze Your Career

Computational, mathematical and theoretical skills are built into our curriculum—through hands-on design exercises and team projects—ensuring your mastery of Computer Science fundamentals. Majors personalize and apply their knowledge with internships, a capstone project and faculty research—giving you practical experience to pave the way to a fulfilling career.

Be a Standout Problem Solver

There’s something special about being a Computer Science major from a liberal arts college: your perspective. You’ll see complex computational problems through a broad global lens and learn how to collaborate with and communicate your ideas effectively to the world around you.

Interested in Computer Science?

We’d love to send you information, including more on academic majors and student life at our beautiful campus in Walla Walla, Washington.

“I am currently doing research off campus as part of my DREU internship [Distributed Research Experience for Undergraduates]. My research area is machine learning, and I am very interested in what we are doing: causal inference and algorithms to improve causal inference. I have learned a lot of Python libraries, research, and how to make my code readable and general so that others can look at it and use it.”

Ahmed E., Computer Science and Mathematics Major

Faculty

William Bares

William Bares

Associate Professor and Chair of Computer Science

Janet Davis

Janet Davis

Professor and Microsoft Chair of Computer Science (on sabbatical, 2025-2026)

John Stratton

John Stratton

Associate Professor of Computer Science, Director of 3-2 Engineering

Jordan Wirfs-Brock

Jordan Wirfs-Brock

Assistant Professor of Computer Science

Courses In Computer Science

See just a few of the fascinating courses you might take.

Introduction to Computational Problem Solving

This course is your entry into core concepts in Computer Science, including algorithms, data structures and abstractions. Look forward to collaborative in-class exercises to gain experience with exploratory and structural approaches, which you’ll apply in a range of disciplines.

Computer Systems Fundamentals

Demystify how computers work and build a general-purpose computer system from the ground up. You’ll debate the trade-offs and trends among different software engineering and algorithmic techniques used in modern hardware and software systems.

Computer Simulation Methods

Computers allow us to conduct virtual experiments that would be too expensive, unwieldy or unethical to do physically. Simulation allows us to safely test scenarios that answer important real-world questions. In this class you’ll learn a range of simulation methods that can be applied to almost any discipline.

Human-Computer Interaction

This course draws on concepts of psychology to explore computer interfaces and their effect on our lives. A semester-long team project challenges you to master iterative design, including inquiry, analysis, ideation, prototyping, evaluation and the ever-important social implications.

Data Structures

How can we present, store, access and manipulate all of the data we’re amassing? This course considers data types and the implementation and maintenance of data structures. Useful and interesting, this course is a Whitman Computer Science major favorite.

Software Design

This course strives to answer the question: What makes code beautiful? You’ll learn about design techniques such as Class-Responsibility-Collaborator (CRC) cards and the Unified Modeling Language (UML), and gain experience with version control systems and test frameworks. Plus, you'll get to apply what you learn in a semester-long, team software development project.

Combined Majors

Software enginner

Amazing Experiences You Can Pursue

Complete a capstone project. In this semester-long team project, you get to fully shine. Focus on an issue you care about, from music to education to law. Test your computations and incorporate expert feedback. Then present your results to department and field experts.

Learn and play with peers. Join weekly lunch seminars with speakers, professors and fellow students to experience the unique camaraderie of our Computer Science Department for yourself. Participate in campus clubs like the Association for Computing Machinery—or in national hackathons and workshops. 

Study abroad. Immerse yourself in another culture and give your resume a global boost. Computer Science programs in Budapest and Copenhagen, for example, welcome you to their worlds of IT entrepreneurship, artificial intelligence and more.

What Our Graduates Are Doing Now

Pablo Fernandez ’19

Computer Science & Film Media Studies
Entrepreneur

Cooper Lazar ’19

Computer Science
Development, Security and Operations Engineer

Isaiah Banta ’20

Computer Science
Community Organizer at the Metro Alliance and Communities Organized for Public Service

Kirk Lange ’19

Computer Science
Software Engineer at Google

Your Questions Answered