The most important aspect of Computer Science is problem solving, an essential skill for life. Students study algorithmic processes and the design, development and analysis of software and hardware used to carry out these processes. Since computers are used for a variety of purposes by people in all walks of life, there is a significant human side to computer science as well.
Some graduates choose to continue their studies in graduate or professional school (not necessarily in computer science) before seeking employment. Majors accepting positions upon graduation typically work for companies that provide computing hardware, software or services for use in business, education, government and research.
The department regularly offers Computer Science I and other courses of a more general nature for students interested in surveying key topics in computing. Departmental programs consist of a computer science major and a computer science minor. Most courses provide hands-on computing experience.
Computing facilities include pen-based computer laboratories that are part of the University network. They provide tools for computer science, standard desktop productivity, e-mail and connectivity to the Internet. The department maintains a state-of-the-art laboratory of Linux workstations with high-end servers that provide robust file services and a full array of software development tools. The department also has a computer-based, cooperative-work laboratory and a lounge for use by its majors.
University programs of interest to computer science majors include: Science Research Fellows Program, Information Technology Associates Program and Winter Term internships. Some employment and research opportunities with the department and the Computer Center are available during the year and summer. Finally, the student computer clubs (Association for Computing Machinery and ACM-Women) provide coordinated programs each year.
Requirements for a major
|Total courses required||Nine and one-half CSC + MATH 123 + one allied course|
|Core courses||CSC 121, CSC 122, CSC 231, CSC 232, CSC 233, CSC 240, CSC 498|
|Other required courses||One CSC course at the 400 level in addition to CSC 498.|
|Number 300 and 400 level courses||Four including CSC 498|
|Senior requirement and capstone experience||The senior requirement is CSC 498. As a culmination of the computer science major, each senior completes an independent project with credit earned through the course CSC498. Each student describes his or her project idea in a formal project proposal. Projects typically involve the design, implementation, testing and documentation of a software system that builds on earlier coursework both inside and outside the department. Students are mentored by a faculty member and meet regularly in groups to present their work and to discuss related topics such as the ethical implications of their work.|
|Additional information||MATH 123 is also required. MATH 223 may be substituted for MATH 123 with approval of the advisor. Students are required to take one allied course from a list maintained by the department; with approval of the advisor, students may substitute a 300/400 level CSC course for the allied course. Students are encouraged to complete an internship or research experience related to the major. This is not a requirement, however, and no departmental credit is awarded for these experiences. The advisor will offer guidance on selection of courses inside and outside of the department for students who may be interested in focusing on particular areas related to computer science.|
|Recent changes in major||Beginning Fall 2013, the number of CSC courses required for the major is reduced from 10 to 9.5. CSC 240, Writing in Computer Science (.5 credit) has been added to the core courses for the major. Students are now required to take an allied course. These new requirements apply to students entering DePauw Fall 2012 and after.|
|Writing in the Major||
Computer scientists must be able to communicate effectively with other computer scientists (e.g., as a member of a team designing a large system, or conveying results of research) and non-computer scientists (e.g., user documentation such as a user manual, or describing a project to a potential investor or customer). Communicating with other people, both orally and in writing, is an essential skill required of all computer scientists. Students majoring in Computer Science develop writing skills across several courses:
Writing assignments will comprise a significant portion of the course grade for each of the above-mentioned courses, and the course grade will reflect students' writing proficiency. Students will meet the Writing in Computer Science requirement by earning credit for CSC232 Object Oriented Software Development, CSC240, Writing in Computer Science, at least one 400-level elective course, and CSC498.
Requirements for a minor
|Total courses required||Five|
|Core courses||CSC 121 and CSC 122|
|Other required courses||At least two of the courses from: CSC 231, CSC 232, CSC 233. At least one CSC course at the 300 or 400 level.|
|Number 300 and 400 level courses||One|