The Hendrix computer science curriculum balances theory and practice to help students achieve a well-rounded understanding of computing. Upon graduating, our students:
- Are well-equipped to write software that meets the goals of clients;
- Know how to manage the interaction between hardware and software;
- Have created software that models complex phenomena;
- Know how to apply mathematical ideas to solve computing problems;
- Have applied computing to solve problems in the natural and social sciences, as well as the humanities.
After completing a two-course sequence (CSCI 150 and 151) in which they achieve proficiency with programming, as well as two mathematics courses (Calculus and Discrete Mathematics), our students are well-prepared to study advanced computing concepts in the following courses:
- Database and Web Systems
- Mobile App Development
- Game Development
- Operating Systems
- Computing Systems Organization
- Programming Languages
- Artificial Intelligence
- Intelligent Robotics
- Computational Humanities
- Scientific Computing
- Functional Programming
- Theory of Computation
Computer science classes at Hendrix tend to be fairly small (ten to twenty students is typical). Most classes include a large project spanning several weeks or even the entire semester; this project allows students to gain a deeper understanding of concepts related to class topics, as well as gaining a deeper appreciation for industrial-scale software design.
The major culminates in the senior capstone experience, in which over the course of a semester each student creates an individual free-form project that showcases their achievements in computing.
The Hendrix computer science program is supported by three full-time faculty - Dr. Gabriel Ferrer, Dr. Mark Goadrich, and Dr. Brent Yorgey.
All computer science classes are taught in classrooms equipped with computers and projectors that can be used as a visual aid for demonstrations.
In our introductory courses, students learn the Python and Java programming languages. Upper-level courses employ the Python, Java, Haskell, C#, and Rust programming languages.
While at Hendrix, many students opt to participate in some activities relating to computer science: Department-sponsored activities include intercollegiate programming contests, travel to conferences to present undergraduate research projects, and a series of speakers drawn from outside campus.
After graduation, some of our graduates pursue post-baccalaureate degrees in computer science or related disciplines, and most others enter industry directly after graduation. Employers in the region value Hendrix graduates because they are consistently well-prepared by their computer science background, and because Hendrix's liberal arts education provides graduates with the communication skills needed for success in the computing workplace.