Academic Resources Fair - Computer Science Information

Overview

Thank you for attending the Academic Resource Fair and stopping by the Computer Science Department's table! Here is some useful information for prospective Computer Science majors.

Sign-Up for Announcements

Find More Information Online

Introductory Courses

Either COMS W1004 - Introduction to Computer Science and Programming in Java or COMS W1007 Honors Introduction to Computer Science is required for the major.

Note: For the 2022-2023 academic year the Honors course will not be offerred.

If you have a 4 or 5 an AP Computer Science A exam you should get 3 points of credit that will count towards the COMS W1004 requirement. If you have such AP credit you have two options:

  1. If your AP score was on the low side, you took the AP course some time ago, and you haven't done much additional work in computer science since, you might be best served by taking the regular COMS W1004 Introduction to computer science course. Even though the AP exam credits would then not count towards your degree, this might be a better path for learning the material.
  2. If you've taken the AP recently or have kept current with your programming and computer science skills and are very comfortable programming in Java, then you are likely advanced enough to skip straight into COMS W3134 Data Structures. You will need AP credit to do this, since those points will satisfy the 1004/1007 requirement for the major.

If you don't have AP credit but feel that you might benefit from starting at a more advanced point please see this entry in the FAQ.

Pre-Introductory Courses

SEAS students in the CS major are *required* to take ENGI E1006 - Introduction to Computing for Engineers and Applied Scientist. This is a more general introduction to computing for engineering and is taken by students in most departments at SEAS. This course is taught in the Python programming language and uses engineering concepts and topics as the basis for the examples in the class. You should plan on taking this course during your first year at Columbia. If you are already fluent in Python and have a lot of related experience, speak with Prof. Bauer (the instructor for E1006 this year). You may be able to replace this course with a more advanced class. Most people will need to take 1006.

CC, GS, and BC students may also take the the ENGI E1006 course (though it is not required). This may be of particular interest to those with an interest in the sciences. CC and GS students (particularly those with an interest in the humanities and social sciences) also have the option of taking a course called COMS W1002 Computing In Context. This course is really intended for non-majors and does not count towards the CC or GS Computer Science major; however, it is a good introduction to basic computing and teaches it in the context of real world applications in the humanities, social sciences, and more. If you're in one of the BA programs and are not yet sure about a Computer Science major, this might be a good starting point (keeping in mind that it isn't technically part of the major).


Last Updated: August 31th, 2020