This course presents an introduction to computer programming intended both for those who plan to take further courses in which a strong background in computation is desirable and for those who are interested in learning basic programming principles. The course will expose the student to a variety of applications where an algorithmic approach is natural and will include both numerical and non-numerical computation. The principles of program structure and style will be emphasized. May be paired with COMP 218 or with any mathematics or statistics course to satisfy the natural science diversification requirement. No prerequisite. Offered every semester.

This course is intended as a second course in programming, as well as an introduction to the concept of computational complexity and the major abstract data structures (such as dynamic arrays, stacks, queues, link lists, graphs and trees), their implementation and application, and the role they play in the design of efficient algorithms. Students will be required to write a number of programs using a high-level language. May be paired with COMP 118 or any mathematics or statistics course to satisfy the natural science diversification requirement. Prerequisite: COMP 118, MATH 138 or PHYS 270. Offered every other spring.

This course gives students experience designing, implementing, testing and debugging moderately complex systems of software components that collectively form a multilayer application. There will be an emphasis on crafting quality code, designing and implementing effective user interfaces, and building multicomponent architectures using a mix of off-the-self and custom code. Topics will include inner process and inter-system communication, multi-threading, and the synchronization of shared resources, web interfaces and working with large data sets. Students will primarily use C++, but also will learn Javascript and other languages as needed. This course does not count toward the completion of any diversification requirement. COMP 218 is recommended but not required. Prerequisite: MATH 138, COMP 118 or PHYS 270.

A study of a software design project that requires planning, analysis, design, implementation, testing and maintenance. Different methods of planning, definition, requirements analysis and cost estimation are considered. A central component of the course is a semester-long team project that engages a team of three to five students in the analysis, design, implementation and documentation of a significant applied project. The goal of this team project is for the students to engage with the material as they work to solve a real-world problem. These projects are real needs of organizations in the surrounding community (including Gambier, Knox County and, at times, beyond). This course does not count toward any elective requirement for the math major. Prerequisite: MATH 138, COMP 118, 218 or 318.

This capstone course is intended to provide an in-depth experience in computational approaches to an individual topic of choice. Students will also be exposed to a broad range of computational application through presentations and discussion. Each student will give several presentation to the class throughout the semester. This course does not count toward the completion of any diversification requirement. Prerequisite: COMP 118 or PHYS 270, completion of at least 0.5 units of an intermediate course and at least 0.5 units of a contributory course. Permission of the instructor and program director required. Senior standing

The Individual Study is to enable students to explore a pedagogically valuable topic in

computing applied to the sciences that is not part of a regularly offered COMP course. A student

who wishes to propose an individual study course must first find a COMP faculty member willing

to supervise the course. The student and faculty member then craft a course syllabus that

describes in detail the expected coursework and how a grade will be assigned. The amount of

credit to be assigned to the IS course should be determined with respect to the amount of effort

expected in a regular Kenyon class. The syllabus must be approved by the director of the

COMP program. In the case of a small group IS, a single syllabus may be submitted and all

students must follow the same syllabus. Because students must enroll for individual studies by

the end of the seventh class day of each semester, they should begin discussion of the

proposed individual study preferably the semester before, so that there is time to devise the

proposal and seek departmental approval before the registrar’s deadline. This interdisciplinary

course does not count toward the completion of any diversification requirement. Permission of

the instructor and program director required. No prerequisite.

Concentration

Courses that meet the requirement for this concentration:

PSYC 410Advanced Research Methods in Human Neuroscience