Hendrix College's computer science program functions
within Hendrix's mission and its motto of
Unto the Whole Person
while providing an outstanding computing education, which can serve
as good preparation for careers in software development, information
technology, and computing research. Starting from these
programmatic goals, we strive to ensure that students graduating with
a major or minor in computer science are able to:
- Develop software at a high proficiency level. All students
should be able to compose and implement a good design for software of
medium complexity (at least 3,000 lines), drawing on the
appropriate software development tools for the problem, using
documentation to learn about new tools, and
displaying the aesthetics common to good programs.
- Analyze modern computing systems. This requires a deep
understanding of how all levels of a computing system work, what
criteria are used to evaluate solutions for computing problems,
and how experiments can be completed to measure such
- Argue for the correctness and efficiency of algorithms using
mathematical proof techniques.
- Communicate technical ideas in written papers, oral
presentations, and team discussions.
- Solve technical problems through researching known results
and discovering new solutions.
Several emphasized components in our program help work
toward these learning goals:
- a faculty which prioritizes good teaching and
keeps aware of the current state of the field,
- a program of support for student research and
- student laboratories outfitted with modern computing
- an active program of student activities beyond the
We will use the following techniques to assess how
well we have achieved our learning goals.
- The major requires that students complete CSCI 250, a
sophomore-level course. In this course, students complete a team
software development project, which we archive as evidence of
students' programming mastery.
- The major requires each student to complete a senior thesis in
CSCI 497. Our faculty evaluates each according to a rubric, and we
archive both the senior thesis paper and this rubric.
- We track research and internship participation by students
enrolled in the computer science major or minor.
- We track faculty development activities, including papers
published, conferences attended, textbooks published, and
- We conduct an exit interview with each graduating
- We track the post-graduation destination of each
- We periodically survey recent graduates who have completed
at least one full year of post-graduation work.
- The faculty regularly meets to discuss the data collected
and the evidence of success or shortcomings in meeting the