PÕ¾ÊÓƵ

Computer Science First Year Courses

Chair:ÌýAaron Gember-Jacobson
Department Site

Applications of computers and software are everywhere. Programs enable and mediate instant communication, global financial networks, a smoothly running engine, an interactive graphical display, and a perfectly browned slice of sourdough. Writing software to instruct computers to do even simple tasks can be challenging, fun, and creative.

Computer science is the study of algorithmic processes and the machines that carry out these processes. It is a mix of theory, application, design, and experiment. Theory addresses questions about the nature and limits of computation, the abstract properties of machine models, the complexity of algorithms, and the formalization of programming languages. Applications include machine and systems design, the design and implementation of programming languages, artificial intelligence, networks, graphics, and simulation. An important aspect of computer science is the development of methods for the systematic and accurate design of large systems in hardware and software. Both applications and theoretical issues must be tested experimentally.

The computer science major prepares students for graduate study in computer science, for computer-intensive professional careers, and for a diverse collection of other career opportunities that increasingly overlap with and require expertise in computer science. In addition to the computer science major, the department also offers a joint computer science/math major as well as a minor in computer science for interested students. All programs are described completely in theÌýUniversity Catalog and a good deal more information can be gained by accessing the department web page and the department-maintained website. Faculty members in the computer science department are always happy to discuss computer science courses with any interested students.

Introductory-level courses in the department includeÌýCOSC 101, 102, and 140.Ìý The coursesÌýCOSC 101ÌýandÌý140Ìýprovide an introduction to computational thinking through substantial practice in computer programming. The major and minor programs begin withÌýCOSC 102,Ìýfor whichÌýCOSC 101Ìýor equivalent experienceÌýis a prerequisite.

Students wishing to major in computer science should begin by enrolling in the Introduction to Computing sequence,ÌýCOSC 101/101L-102/102L. This sequence provides an introduction to computational thinking and contemporary programming practice. InÌýCOSC 101Ìýstudents learn program design and the implementation of algorithms using the programming language Python. InÌýCOSC 102Ìýthe concepts of information hiding, data abstraction, and modular design are emphasized to build more sophisticated programs in the programming language Java. The sequence is suitable for any students who are interested in learning about programming as well as the fundamentals of computer science.

Students interested in learning programming in the context of web-application design should enroll inÌýCOSC 140/140L, when offered.Ìý This course, likeÌýCOSC 101, introduces the programming language Python, but explores software development and design topics with a focus on modern web applications.

No previous experience in computer science is required to enroll inÌýCOSC 101/101LÌýorÌý140/140L. Students who have prior experience in computer science may be able to start their studies at Colgate at a higher level;ÌýCOSC 102/102LÌýmay be available to qualified students during drop/add. Students should consult the COSC 102 instructor, Professor Vijay RamachandranÌýabout appropriate placement.

Advanced PlacementÌýÌýÌý

Colgate course credit is awarded to students receiving a score of 4 or 5 on the AP Computer Science A exam. Students receiving a score of 4 or 5 on the A exam will be awarded credit forÌýCOSC 101Ìýand may qualify for placement inÌýCOSC 102, pending consultation with the department chair.ÌýIf you did not take the AP exam but have had a substantial introduction to computer science, you should register forÌýCOSC 101/101L, but consult with the COSC 102 instructor, Professor Vijay RamachandranÌýabout appropriate placement when you arrive at Colgate.


Click the link below to view COSC courses available to the Class of 2028.