I, Oliver Bonham-Carter ๐Ÿ‘‹

Assistant Professor in Computer Science, Allegheny College

I, Oliver Bonham-Carter, In June

I, Oliver Bonham-Carter ๐Ÿ‘‹

Assistant Professor in Computer Science, Allegheny College


So, what do I teach here?

This semester, I am teaching …

computing under the stars

However, During Other Semesters, I teach …

Classes in a Box

Much like how you may get food from the store which is ready to eat, I have prepared two courses which are piping hot and ready to teach. I offer a course in Bioinformatics and another in Senior Thesis Research which I have used at Allegheny College several times. If you are an instructor at the high-school or college level, help your self to the materials at the above sites! Please be sure to let me know your thoughts and comments if you apply them to your course.

Junior Seminar

CMPSC-580-00: Junior Seminar Academic Bulletin Description A team-based investigation of select topics in computer science, preparing students for the proposal and completion of a senior project. Working in teams to complete hands-on activities, students learn how to read research papers, state and motivate research questions, design and conduct experiments, and collect and organize evidence for evaluating scientific hypotheses. During a weekly laboratory session students use state-of-the-art technology to gain practical skills in scientific and technical writing, the presentation of computational and mathematical concepts, and the visualization of experimental data.

Discrete Structures

CMPSC-102 Discrete Structures (4 Credits) ​ Academic Bulletin Description An introduction to the foundations of computer science with an emphasis on understanding the abstract structures used to represent discrete objects. Participating in hands-on activities that often require teamwork, students learn the computational methods and logical principles that they need to create and manipulate discrete objects in a programming environment. Students also learn how to write, organize, and document a program’s source code so that it is easily accessible to intended users of varied backgrounds.

DataBase Systems

CMPSC-312-00: Database Systems Academic Bulletin Description A study of the design and implementation issues in database management systems. Topics include data models, logical/physical database design, data access/search techniques, normalization theory, mappings from logical to physical structures, storage, and utilization. Additional topics include database reorganization, migration, database integrity, consistency, privacy and secu- rity, distributed database systems, architecture of knowledge-based systems, and intelligent query interfaces. One laboratory per week. Prerequisite: Computer Science 112.

Data Analytics

CMPSC-301-00: Data Analytics Academic Bulletin Description An introduction to computational methods of data analysis with an emphasis on understanding and reflecting on the social, cultural, and political issues surrounding data and its interrogation. Participating in hands-on activities that often require teamwork, students study, design, and implement analytics software and learn how to extract knowledge from, for instance, financial, political, and scientific sources of data. Students also investigate the biases, discriminatory views, and stereotypes that may be present during the collection and analysis of data, reflecting on the ethical implications of using the resulting computational techniques.


CMPSC-300-00: Bioinformatics (4 Credits) Academic Bulletin Description An introduction to the development and application of methods, from the computational and information sciences, for the investigation of biological phenomena. In this interdisciplinary course, students integrate computational techniques with biological knowledge to develop and use analytical tools for extracting, organizing, and interpreting information from genetic sequence data. Often participating in team-based and hands-on activities, students implement and apply useful bioinformatics algorithms. During a weekly laboratory session students employ cutting-edge software tools and programming environments to complete projects, reporting on their results through both written documents and oral presentations.

Academic Discord

Academic Bulletin Description The Lab: Discord class server: Meeting Information: Classes: Labs: Office Hours: Syllabus: Planning your time TextBook: Other Useful Textbooks: classDocs/ Repository Gradebook Repository