Undergraduate


Blue CS@CU Logo for undergraduates

UNDERGRADUATE PROGRAMS

Computer Science majors at Columbia study an integrated curriculum, partially in areas with an immediate relationship to the computer, such as programming languages, operating systems, and computer architecture, and partially in theoretical computer science and mathematics. 

A broad range of upper-level courses is available in topics including artificial intelligence, natural language processing, computational complexity and the analysis of algorithms, computer communications, combinatorial methods, computer architecture, computer graphics, databases, mathematical models for computation, optimization, and programming environments. Through this integrated approach, students acquire the flexibility needed in a rapidly changing field; they are prepared to engage in both applied and theoretical developments in computer science as they happen.

Most graduates of the Computer Science Program at Columbia step directly into career positions in computer science with industry or government or continue their education in graduate degree programs. Many choose to combine computer science with a second career interest by pursuing additional programs in business administration, medicine, or other professional studies.

Note, students may only declare one CS program.


DEGREE PROGRAM QUICK GUIDES

Note: One grade of D is permitted

  • CC Students, please refer to the Bulletin for more details on your school’s policies and important exceptions. GS Students may use this link; Barnard Students should contact their Dean.
  • New BA Curriculum QuickguideCC/GS Students declaring in Spring 2024 or later must follow this. Barnard CS Students who join in Fall 2023 or later must follow this.
  • Old BA Curriculum Quick GuideCC/GS students who declared prior to Spring 2024, may choose to follow the new curriculum or the old Tracks. Barnard students who joined Barnard in or before Spring 2023 are subject to the old requirements – for additional questions or possibly exceptions, please consult your Barnard advisor.

Note: One grade of D is permitted for GS/CC students

Please refer to the Math department and Bulletin for more information. A quick guide is below.

 
Please review the Transfer Credit Policy, more information on this can be found in the Math Bulletin:
“Up to three transfer courses are accepted toward the CS-Math major. Calculus courses can be transferred in addition to the three-course limit (with the approval of the Math department). Courses replaced by AP exams do not count towards the three-course limit.”

From Fall 2024 and onwards, the Minor in Computer Science consists of 6 courses as follows:
1. COMS W1004: Intro to computer science and programming in Java (3) or COMS W1007: Honors intro to comp sci (3)
2. COMS W3134: Data structures in Java (3) or COMS W3137: Honors data structures and algorithms (4)
3. COMS W3203: Discrete mathematics (4)
4. One course of the following:
COMS W3157: Advanced programming (4)
COMS W3261: Comp science theory (3)
CSEE W3827: Fund of computer systems (3)
5. Any 3000-level or 4000-level COMS/CSXX/XXCS course of at least 3 points
6. Any 3000-level or 4000-level COMS/CSXX/XXCS course of at least 3 points OR one course from the following linear algebra or probability/statistics: APMA E3101, APMA E2101, MATH UN2010, MATH UN2015, IEOR E3658, STAT UN1201, STAT GU4001, or STAT GU4203.


For SEAS, GS, and Barnard students who declared a CS minor prior to Fall 2024, every course from the old minor can be counted towards the new minor.
 
CC students who declared a CS concentration prior to Fall 2024 can still complete the old requirements, and the CS concentration will satisfy the departmental concentration/major requirement for graduation. The CS concentration is no longer available from Fall 2024. The CS concentration had the following requirements:
 
1. COMS W1004 or COMS W1007
2. COMS W3134 or COMS W3137
3. COMS W3157
4. COMS W3203
5. COMS W3261
6. CSEE W3827, or a 4000-level COMS technical elective of at least 3 points
7. One linear algebra or probability/statistics course from the following:
 
 
COMS 3251, APMA E3101, APMA E2101, MATH UN2010, MATH UN2015, IEOR E3658, IEOR 4150, STAT UN1201, STAT GU4001
 
Note: One grade of D is permitted

The Minor in Artificial Intelligence consists of 6 courses as follows:

MATH UN2015 Linear Algebra and Probability
ENGI E1006 INTRO TO COMP FOR ENG/APP SCI
or COMS W1002 COMPUTING IN CONTEXT
COMS W2132 Intermediate Computing in Python
or IEOR E2000 Data Engineering with Python
AI Requirement
COMS W4701
ARTIFICIAL INTELLIGENCE
Ethics Requirement
Choose one:
COMS W4710
Ethics in AI
COMS W2702
AI in Context
PSYC GU4836
Machine Intelligence
ORCS E4201
Policy for Privacy Technologies
COMS BC3420
PRIVACY IN A NETWORKED WORLD
AI Elective
Choose one:
Any COMS 47XX course
Any “relevant” 4995/6998 course
BMEN E4460
Deep Learning in Biomedical Imaging
BMEN E4470
Deep Learning for Biomedical Signal Processing
BMEN E4480
Statistical machine learning for genomics
CBMF W4761
COMPUTATIONAL GENOMICS
CHEN E4180
Machine Learning for Biomolecular and Cellular Applications
CIEN E4253
COMP SOLID MECHANICS WITH AI
CIEN E4256
Applied Machine Learning in Civil Engineering
EAEE E4000
Machine learning for environmental engineering and science
ECBM E4040
NEURAL NETWRKS & DEEP LEARNING
EECS E4764
Artificial Intelligence of Things (AIoT)
ELEN E4720
Machine Learning for Signals, Information and Data
ELEN E4730
Quantum Optimization and Machine Learning
IEOR E4212
Data Analytics & Machine Learning for OR
IEOR E4540
DATA MINING
MECE E4520
DATA SCIENCE FOR MECHANICAL SYSTEMS
MECE E4602
INTRODUCTION TO ROBOTICS
ORCS E4200
Data-driven Decision Modeling
ORCS E4529
Reinforcement Learning
POLS GU4728
Machine Learning & AI for the Social Sciences
STAT GU4241
STATISTICAL MACHINE LEARNING
STAT GU4242
Advanced Machine Learning
STAT GU4243
APPLIED DATA SCIENCE
STAT GU4244
Unsupervised Learning

ADVISORS


DEGREE PROGRESS CLEARANCE FORMS

Access the Clearance Form via Google Docs. Make a copy of this form and enter your completed and/or planned courses. Name the file “Your Name UNI – SEAS BS Graduation Clearance Form” Share with Lionmail so your advisors can review it. Email ug-advising@cs.columbia.edu or your Faculty Advisor the link!

You can use this same form to check progress prior to graduation and update it each semester.

Access the Clearance Form via Google Docs. Make a copy of this form and enter your completed and/or planned courses. Name the file “Your Name UNI – CC/GS BA Graduation Clearance Form” Share with Lionmail so your advisors can review it. Email ug-advising@cs.columbia.edu or your Faculty Advisor the link!

You can use this same form to check progress prior to graduation and update it each semester.


FREQUENTLY ASKED QUESTIONS (FAQ)


TOPICS COURSES

Undergraduate students must get permission from their faculty advisor to count any topics course toward the Major.

Students may take multiple sections of COMS 4995 and/or COMS 6998, as each section will vary by content each semester. If you aren’t sure if a course is the same, please email the instructor to verify.


CURRENT RESEARCH OPPORTUNITIES


CONTACT US

If you have questions about the CS Department and major/minor requirements, please email CS Advising.

If you have questions about the admissions requirements, please get in touch with the following admissions offices:


ACADEMIC HONESTY


Updated 10/16/2025