• Skip to Content
  • Bulletin Home
  • Institution Home
  • News and Updates
  • Strategic Plan
  • Annual Report
  • Columbia to the Core
  • Dean of the College
  • Visit Columbia College
  • Staff & Administration
  • Contemporary Civilization
  • Literature Humanities
  • Art Humanities
  • Music Humanities
  • University Writing
  • Frontiers of Science
  • Global Core Requirement
  • Center for the Core Curriculum
  • Current Bulletin
  • Archived Bulletins
  • Majors, Concentrations, and Programs of Study
  • Departments, Institutes and Centers
  • Academic Advising Resources
  • Fellowships
  • Study Abroad
  • Undergraduate Research
  • Academic Honors, Awards, and Prizes
  • Policies and Procedures
  • Academic Integrity
  • Academic Planning and Administration
  • Financial Aid
  • Learn About Columbia
  • Visit Columbia
  • Apply to Columbia
  • Undergraduate Student Life
  • Student Resources
  • Supporting the College
  • Columbia College Bulletin /
  • Departments, Programs, and Courses /

Computer Science

Print Options

  • The Administration and Faculty of Columbia College
  • Academic Requirements
  • Core Curriculum
  • Search the Course Listings
  • African American and African Diaspora Studies
  • American Studies
  • Ancient Studies
  • Anthropology
  • Archaeology
  • Architecture
  • Art History and Archaeology
  • Biological Sciences
  • Cognitive Science
  • Colloquia, Interdepartmental Seminars, and Professional School Offerings
  • Comparative Literature and Society
  • Creative Writing
  • Drama and Theatre Arts
  • Earth and Environmental Sciences
  • East Asian Languages and Cultures
  • Ecology, Evolution, and Environmental Biology
  • English and Comparative Literature
  • Ethnicity and Race Studies
  • Film and Media Studies
  • Germanic Languages
  • History and Philosophy of Science
  • Human Rights
  • Jazz Studies
  • Jewish Studies
  • Language Resource Center
  • Latin American and Caribbean Studies
  • Latin American and Iberian Cultures
  • Linguistics
  • Mathematics
  • Medieval and Renaissance Studies
  • Middle Eastern, South Asian, and African Studies
  • Physical Education and Intercollegiate Athletics
  • Political Science
  • Public Health
  • Regional Studies
  • Slavic Languages
  • Sustainable Development
  • Urban Studies
  • Visual Arts
  • Women's and Gender Studies
  • Academic Calendar
  • Registration
  • Academic Regulations
  • Special Programs
  • Academic Honors, Prizes, and Fellowships
  • Standards and Discipline
  • Columbia University Policies
  • Fees, Expenses, and Financial Aid

Departmental Office: 450 Computer Science Building; 212-939-7000 http://www.cs.columbia.edu/

Director of Undergraduate Studies: Dr. Jae Woo Lee, 715 CEPSR; 212-939-7066; [email protected]

The majors in the Department of Computer Science provide students with the appropriate computer science background necessary for graduate study or a professional career. Computers impact nearly all areas of human endeavor. Therefore, the department also offers courses for students who do not plan a computer science major or concentration. The computer science majors offer maximum flexibility by providing students with a range of options for program specialization. The department offers four majors: computer science; information science; data science, offered jointly with the Statistics Department; and computer science-mathematics, offered jointly with the Mathematics Department.

Computer Science Major

Students study a common core of fundamental topics, supplemented by a program of six electives that provides a high degree of flexibility. Three of the electives are chosen from a list of upper-level courses that represent area foundations within computer science. The remaining electives are selected from the complete list of upper-level computer science courses. Students are encouraged to work with their faculty advisor to create a plan tailored to fit their goals and interests. The department webpage provides several example programs for students interested in a variety of specific areas in computer science. 

Information Science Major

Information science is an interdisciplinary major designed to provide a student with an understanding of how information is organized, accessed, stored, distributed, and processed in strategic segments of today’s society. Recent years have seen an explosive growth of online information, with people of all ages and all walks of life making use of the World Wide Web and other information in digital form.

This major puts students at the forefront of the information revolution, studying how online access touches on all disciplines and changing the very way people communicate. Organizations have large stores of in-house information that are crucial to their daily operation. Today’s systems must enable quick access to relevant information, must ensure that confidential information is secure, and must enable new forms of communication among people and their access to information.

The information science major can choose a scientific focus on algorithms and systems for organizing, accessing, and processing information, or an interdisciplinary focus in order to develop an understanding of, and tools for, information modeling and use within an important sector of modern society such as economics or health.

Advanced Placement

The department grants 3 points for a score of 4 or 5 on the AP Computer Science A exam, along with an exemption from COMS W1004 Introduction to Computer Science and Programming in Java . However, we recommend that you take COMS W1004 before taking COMS W3134/W3137 Data Structures.

Pre-Introductory Courses

COMS W1004 is the first course in the Computer Science major curriculum, and it does not require any previous computing experience.  Before taking COMS W1004, however, students have an option to start with one of the pre-introductory courses: ENGI E1006 or COMS W1002.

ENGI E1006 Introduction to Computing for Engineers and Applied Scientists is a general introduction to computing for STEM students.  ENGI E1006 is in fact a required course for all engineering students.  COMS W1002 Computing in Context is a course primarily intended for humanities majors, but it also serves as a pre-introductory course for CS majors.  ENGI E1006 and COMS W1002 do not count towards Computer Science major.

Laboratory Facilities

The department has well-equipped lab areas for research in computer graphics, computer-aided digital design, computer vision, databases and digital libraries, data mining and knowledge discovery, distributed systems, mobile and wearable computing, natural language processing, networking, operating systems, programming systems, robotics, user interfaces, and real-time multimedia.

Research labs contain several large Linux and Solaris clusters; Puma 500 and IBM robotic arms; a UTAH-MIT dexterous hand; an Adept-1 robot; three mobile research robots; a real-time defocus range sensor; interactive 3-D graphics workstations with 3-D position and orientation trackers; prototype wearable computers, wall-sized stereo projection systems; see-through head-mounted displays; a networking testbed with three Cisco 7500 backbone routers, traffic generators; an IDS testbed with secured LAN, Cisco routers, EMC storage, and Linux servers; and a simulation testbed with several Sun servers and Cisco Catalyst routers.  The department uses a SIP IP phone system. The protocol was developed in the department.

The department's computers are connected via a switched 1Gb/s Ethernet network, which has direct connectivity to the campus OC-3 Internet and internet 2 gateways. The campus has 802.11b/g wireless LAN coverage.

The research facility is supported by a full-time staff of professional system administrators and programmers.

Peter N. Belhumeur Steven M. Bellovin Luca Carloni Xi Chen Steven K. Feiner Luis Gravano Julia B. Hirschberg Gail E. Kaiser John R. Kender Tal Malkin Kathleen R. McKeown Vishal Misra Shree Kumar Nayar Jason Nieh Christos Papadimitriou Itsik Pe'er Toniann Pitassi Kenneth A. Ross Tim Roughgarden Daniel S. Rubenstein Henning G. Schulzrinne Rocco A. Servedio Simha Sethumadhavan Salvatore J. Stolfo Bjarne Stroustrup Vladimir Vapnik Jeannette Wing Junfeng Yang Mihalis Yannakakis Richard Zemei

Associate Professors

Alexandr Andoni Elias Bareinboim Augustin Chaintreau Stephen A. Edwards Roxana Geambasu Daniel Hsu Suman Jana Martha Allen Kim Baishakhi Ray Carl Vondrick Eugene Wu Zhou Yu Changxi Zheng Xia Zhou

Assistant Professors

Josh Alman Lydia Chilton Ronghui Gu Kostis Kaffes David Knowles Brian Smith Henry Yuen

Senior Lecturer in Discipline

  • Adam Cannon
  • Jae Woo Lee

Lecturer in Discipline

Daniel Bauer Brian Borowski Tony Dear

Associated Faculty Joint

Andrew Blumberg Shih-Fu Chang Feniosky Peña-Mora Clifford Stein

Shipra Agrawal Mohammed AlQuraishi Elham Azizi Paolo Blikstein Asaf Cidon Matei Ciocarlie Rachel Cummings Noemie Elhadad Javad Ghaderi Gamze Gursoy Xiaofan Jiang Ethan Katz-Bassett Hod Lipson Smaranda Muresan Liam Paninski Brian Plancher Mark Santolucito Lisa Soros Barbara Tversky Venkat Venkatasubramanian Rebecca Wright Gil Zussman

Senior Research Scientists

Gaston Ormazabal Moti Yung

Alfred V. Aho Peter K. Allen Edward G. Coffman Jr. Zvi Galil Jonathan L. Gross Steven M. Nowick Stephen H. Unger Henryk Wozniakowski Yechiam Yemini

Guidelines for all Computer Science Majors and Minors

Students may receive credit for only one of the following two courses:

  • COMS W1004 Introduction to Computer Science and Programming in Java
  • COMS W1005 Introduction to Computer Science and Programming in MATLAB .

Students may receive credit for only one of the following three courses:

  • COMS W3134 Data Structures in Java
  • COMS W3136 ESSENTIAL DATA STRUCTURES
  • COMS W3137 HONORS DATA STRUCTURES & ALGOL

However, COMS W1005 and COMS W3136 cannot be counted towards the Computer Science major, minor, and concentration. 

Transfer and Double Counting

Up to four transfer courses are accepted toward the major. Up to two transfer courses are accepted toward the minor or concentration. Calculus, linear algebra, and probability/statistics courses can be transferred in addition to the four/two-course limits.

Double-counting policies are to be construed within the larger double-counting policy of the student's home school. Double-counting policies are detailed on each School's Bulletin and/or Catalogue.

The CS department allows the following courses in the CS Core and Mathematics requirement to be double-counted with another major, minor, or concentration. No other courses can be double-counted with another program.

  • Any calculus courses (including Honors Math A and B)
  • One Linear Algebra course
  • One Probability/Statistics course

Barnard does not allow a grade of D to count towards any major. Consult with your advisor.

Guidelines for all Computer Science Majors and Concentrators

The following requirements are new as of the academic year 2023-2024. Students who declared a CS major in the academic year 2022-2023 or earlier have the option to follow the old requirements.

Students who declared a CS major in the academic year 2022-2023 or earlier have the option to follow the requirements listed below or to follow the old requirements. The old requirements are noted on the Undergraduate Programs pages of the Computer Science Department website ( https://www.cs. columbia.edu /education/undergraduate/ ). Please note that the information on the department website is more accurate than the information in the archived Bulletins. Students with questions about which requirements to follow are advised to talk with the Director of Undergraduate Studies.

A maximum of one course worth no more than 4 points passed with a grade of D may be counted toward the major or concentration.

Major in Computer Science

Please read  Guidelines for all Computer Science Majors and Concentrators  above.

Please read Guidelines for all Computer Science Majors and Minors above.

All majors should confer with their program adviser each term to plan their programs of study. Students considering a major in computer science are encouraged to talk to a program adviser during their first or second year. The Computer Science major is composed of four basic components: The Mathematics Requirement, the Computer Science Core, the Area Foundation Courses, and the Computer Science Electives.

Program of Study

Adjustments were made to the course lists below in march 2023..

Students who declared before Spring 2024 should see the Department of Computer Science website for the old requirements. 

For students who declare in Spring 2024 and beyond:

Mathematics Requirement (6-11 points)

Computer science core (20-21 points):, area foundation courses (9 to 12 points):.

Select three from the following list:

Computer Science Electives (9 to 12 points)

Any three COMS courses or jointly offered computer science courses such as CSXX or XXCS course that are worth at least 3 points and are at the 3000 level or above. This includes 3000-level courses offered by Barnard CS.

Restrictions

Note: No more than 6 points of project/thesis courses (COMS W3902, W3998, W4901) can count toward the major. COMS W3999 Fieldwork cannot be used as a CS Elective.

No more than one course from each set below may be applied towards the computer science major:

 IEOR E3658, STAT UN1201, MATH UN2015

 MATH UN2015, MATH UN2010, APAM E3101, COMS W3251

 COMS W4771, COMS W4721

Major in Computer Science—Mathematics

For a description of the joint major in computer science—mathematics, see the Mathematics section in this bulletin.

For a description of the joint major in mathematics—computer science, see the  Mathematics   section in this catalog.

Major in Information Science

The major in information science requires a minimum of 33 points, including a core requirement of five courses. Adjustments were made to the course lists below in March 2022.

The elective courses must be chosen with a faculty adviser to focus on the modeling and use of information within the context of a disciplinary theme. After discussing potential selections, students prepare a proposal of study that must be approved by the faculty adviser. In all cases, the six courses must be at the 3000 level or above, with at least three courses chosen from computer science. Following are some example programs. For more examples or templates for the program proposal, see a faculty adviser.

Note: In most cases, additional courses will be necessary as prerequisites in order to take some of the elective courses. This will depend on the student's proposed program of study.

Core Requirement

Following are some suggested programs of instruction:

Information Science and Contemporary Society

Students may focus on how humans use technology and how technology has changed society.

The requirements include:

Information Science and the Economy

Students may focus on understanding information modeling together with existing and emerging needs in economics and finance as well as algorithms and systems to address those needs.

Information Science and Health Sciences

Students may focus on understanding information modeling together with existing and emerging needs in health sciences, as well as algorithms and systems to address those needs.

Major in Data Science

In response to the ever-growing importance of "big data" in scientific and policy endeavors, the last few years have seen explosive growth in theory, methods, and applications at the interface between computer science and statistics. The statistics and computer science departments have responded with a joint major that emphasizes the interface between the disciplines.

Minor in Computer Science

Please read  Guidelines for all Computer Science Majors and Minors  above.

For students who declare in Spring 2014 and beyond:

The minor in computer science requires a minimum of 22-24 points, as follows:

Concentration in Computer Science

Please read  Guidelines for all Computer Science Majors and Concentrators  above. Adjustments were made to the course lists below in March 2022.

The concentration in computer science requires a minimum of 22-24 points, as follows:

COMS W1001 Introduction to Information Science. 3 points .

Basic introduction to concepts and skills in Information Sciences: human-computer interfaces, representing information digitally, organizing and searching information on the internet, principles of algorithmic problem solving, introduction to database concepts, and introduction to programming in Python.

COMS W1002 COMPUTING IN CONTEXT. 4.00 points .

CC/GS: Partial Fulfillment of Science Requirement

Introduction to elementary computing concepts and Python programming with domain-specific applications. Shared CS concepts and Python programming lectures with track-specific sections. Track themes will vary but may include computing for the social sciences, computing for economics and finance, digital humanities, and more. Intended for nonmajors. Students may only receive credit for one of ENGI E1006 or COMS W1002

COMS W1003 INTRO-COMPUT SCI/PROGRAM IN C. 3.00 points .

COMS W1004 Introduction to Computer Science and Programming in Java. 3 points .

A general introduction to computer science for science and engineering students interested in majoring in computer science or engineering. Covers fundamental concepts of computer science, algorithmic problem-solving capabilities, and introductory Java programming skills. Assumes no prior programming background. Columbia University students may receive credit for only one of the following two courses: 1004  or  1005 .

COMS W1005 Introduction to Computer Science and Programming in MATLAB. 3 points .

A general introduction to computer science concepts, algorithmic problem-solving capabilities, and programming skills in MATLAB. Assumes no prior programming background. Columbia University students may receive credit for only one of the following two courses: W1004  or  W1005 .

COMS W1011 INTERMED COMPUTER PROGRAMMING. 3.00 points .

COMS W1012 COMPUTING IN CONTEXT REC. 0.00 points .

COMS W1103 HONORS INTRO COMPUTER SCIENCE. 3.00 points .

COMS W1404 EMERGING SCHOLARS PROG SEMINAR. 1.00 point .

Pass/Fail only.

Prerequisites: the instructor's permission. Corequisites: COMS W1002 or COMS W1004 or COMS W1007 Corequisites: COMS W1004 ,COMS W1007, COMS W1002 Peer-led weekly seminar intended for first and second year undergraduates considering a major in Computer Science. Pass/fail only. May not be used towards satisfying the major or SEAS credit requirements

COMS W3011 INTERMED COMPUTER PROGRAMMING. 3.00 points .

COMS W3101 PROGRAMMING LANGUAGES. 1.00 point .

Prerequisites: Fluency in at least one programming language. Introduction to a programming language. Each section is devoted to a specific language. Intended only for those who are already fluent in at least one programming language. Sections may meet for one hour per week for the whole term, for three hours per week for the first third of the term, or for two hours per week for the first six weeks. May be repeated for credit if different languages are involved

COMS W3102 DEVELOPMENT TECHNOLOGY. 1.00-2.00 points .

Lect: 2. Lab: 0-2.

Prerequisites: Fluency in at least one programming language. Introduction to software development tools and environments. Each section devoted to a specific tool or environment. One-point sections meet for two hours each week for half a semester, and two point sections include an additional two-hour lab

COMS W3107 Clean Object-Oriented Design. 3.00 points .

Prerequisites: Intro to Computer Science/Programming in Java (COMS W1004) or instructor’s permission. May not take for credit if already received credit for COMS W1007.

Prerequisites: see notes re: points A course in designing, documenting, coding, and testing robust computer software, according to object-oriented design patterns and clean coding practices. Taught in Java.Object-oriented design principles include: use cases; CRC; UML; javadoc; patterns (adapter, builder, command, composite, decorator, facade, factory, iterator, lazy evaluation, observer, singleton, strategy, template, visitor); design by contract; loop invariants; interfaces and inheritance hierarchies; anonymous classes and null objects; graphical widgets; events and listeners; Java's Object class; generic types; reflection; timers, threads, and locks

COMS W3123 ASSEMBLY LANG AND COMPUT LOGIC. 3.00 points .

COMS W3132 Intermediate Computing in Python. 4.00 points .

Essential data structures and algorithms in Python with practical software development skills, applications in a variety of areas including biology, natural language processing, data science and others

COMS W3134 Data Structures in Java. 3 points .

Prerequisites: ( COMS W1004 ) or knowledge of Java.

Data types and structures: arrays, stacks, singly and doubly linked lists, queues, trees, sets, and graphs. Programming techniques for processing such structures: sorting and searching, hashing, garbage collection. Storage management. Rudiments of the analysis of algorithms. Taught in Java. Note: Due to significant overlap, students may receive credit for only one of the following three courses: COMS W3134 , COMS W3136 , COMS W3137 .

COMS W3136 ESSENTIAL DATA STRUCTURES. 4.00 points .

Prerequisites: ( COMS W1004 ) or ( COMS W1005 ) or (COMS W1007) or ( ENGI E1006 ) A second programming course intended for nonmajors with at least one semester of introductory programming experience. Basic elements of programming in C and C , arraybased data structures, heaps, linked lists, C programming in UNIX environment, object-oriented programming in C , trees, graphs, generic programming, hash tables. Due to significant overlap, students may only receive credit for either COMS W3134 , W3136 , or W3137

COMS W3137 HONORS DATA STRUCTURES & ALGOL. 4.00 points .

Prerequisites: ( COMS W1004 ) or (COMS W1007) Corequisites: COMS W3203 An honors introduction to data types and structures: arrays, stacks, singly and doubly linked lists, queues, trees, sets, and graphs. Programming techniques for processing such structures: sorting and searching, hashing, garbage collection. Storage management. Design and analysis of algorithms. Taught in Java. Note: Due to significant overlap, students may receive credit for only one of the following three courses: COMS W3134 , W3136 , or W3137

COMS W3157 ADVANCED PROGRAMMING. 4.00 points .

Prerequisites: ( COMS W3134 ) or ( COMS W3137 ) C programming language and Unix systems programming. Also covers Git, Make, TCP/IP networking basics, C fundamentals

COMS W3202 FINITE MATHEMATICS. 3.00 points .

COMS W3203 DISCRETE MATHEMATICS. 4.00 points .

Prerequisites: Any introductory course in computer programming. Logic and formal proofs, sequences and summation, mathematical induction, binomial coefficients, elements of finite probability, recurrence relations, equivalence relations and partial orderings, and topics in graph theory (including isomorphism, traversability, planarity, and colorings)

COMS W3210 Scientific Computation. 3 points .

Prerequisites: two terms of calculus.

Introduction to computation on digital computers. Design and analysis of numerical algorithms. Numerical solution of equations, integration, recurrences, chaos, differential equations. Introduction to Monte Carlo methods. Properties of floating point arithmetic. Applications to weather prediction, computational finance, computational science, and computational engineering.

COMS W3251 COMPUTATIONAL LINEAR ALGEBRA. 4.00 points .

COMS W3261 COMPUTER SCIENCE THEORY. 3.00 points .

Prerequisites: ( COMS W3203 ) Corequisites: COMS W3134 , COMS W3136 , COMS W3137 Regular languages: deterministic and non-deterministic finite automata, regular expressions. Context-free languages: context-free grammars, push-down automata. Turing machines, the Chomsky hierarchy, and the Church-Turing thesis. Introduction to Complexity Theory and NP-Completeness

COMS W3410 COMPUTERS AND SOCIETY. 3.00 points .

Broader impact of computers. Social networks and privacy. Employment, intellectual property, and the media. Science and engineering ethics. Suitable for nonmajors

COMS E3899 Research Training. 0.00 points .

Research training course. Recommended in preparation for laboratory related research

COMS W3902 UNDERGRADUATE THESIS. 0.00-6.00 points .

Prerequisites: Agreement by a faculty member to serve as thesis adviser. An independent theoretical or experimental investigation by an undergraduate major of an appropriate problem in computer science carried out under the supervision of a faculty member. A formal written report is mandatory and an oral presentation may also be required. May be taken over more than one term, in which case the grade is deferred until all 6 points have been completed. Consult the department for section assignment

COMS W3995 Special Topics in Computer Science. 3 points .

Prerequisites: the instructor's permission.

Consult the department for section assignment. Special topics arranged as the need and availability arise. Topics are usually offered on a one-time basis. Since the content of this course changes each time it is offered, it may be repeated for credit.

COMS W3998 UNDERGRAD PROJECTS IN COMPUTER SCIENCE. 1.00-3.00 points .

Prerequisites: Approval by a faculty member who agrees to supervise the work. Independent project involving laboratory work, computer programming, analytical investigation, or engineering design. May be repeated for credit. Consult the department for section assignment

COMS W3999 FIELDWORK. 1.00 point .

May be repeated for credit, but no more than 3 total points may be used toward the 128-credit degree requirement. Final report and letter of evaluation required. May not be used as a technical or non-technical elective. May not be taken for pass/fail credit or audited

COMS E3999 Fieldwork. 1 point .

Prerequisites: Obtained internship and approval from faculty advisor.

May be repeated for credit, but no more than 3 total points may be used toward the 128-credit degree requirement. Only for SEAS computer science undergraduate students who include relevant off-campus work experience as part of their approved program of study. Final report and letter of evaluation required. May not be used as a technical or non-technical elective. May not be taken for pass/fail credit or audited.

COMS W4111 INTRODUCTION TO DATABASES. 3.00 points .

CC/GS: Partial Fulfillment of Science Requirement Prerequisites: COMS W3134, COMS W3136, or COMS W3137; or the instructor's permission.

Prerequisites: ( COMS W3134 ) or ( COMS W3136 ) or ( COMS W3137 ) or The fundamentals of database design and application development using databases: entity-relationship modeling, logical design of relational databases, relational data definition and manipulation languages, SQL, XML, query processing, physical database tuning, transaction processing, security. Programming projects are required

COMS W4112 DATABASE SYSTEM IMPLEMENTATION. 3.00 points .

Prerequisites: ( COMS W4111 ) and fluency in Java or C++. CSEE W3827 is recommended. The principles and practice of building large-scale database management systems. Storage methods and indexing, query processing and optimization, materialized views, transaction processing and recovery, object-relational databases, parallel and distributed databases, performance considerations. Programming projects are required

COMS W4113 FUND-LARGE-SCALE DIST SYSTEMS. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) and ( COMS W3157 or COMS W4118 or CSEE W4119 ) Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) and ( COMS W3157 or COMS W4118 or CSEE W4119 ) Design and implementation of large-scale distributed and cloud systems. Teaches abstractions, design and implementation techniques that enable the building of fast, scalable, fault-tolerant distributed systems. Topics include distributed communication models (e.g. sockets, remote procedure calls, distributed shared memory), distributed synchronization (clock synchronization, logical clocks, distributed mutex), distributed file systems, replication, consistency models, fault tolerance, distributed transactions, agreement and commitment, Paxos-based consensus, MapReduce infrastructures, scalable distributed databases. Combines concepts and algorithms with descriptions of real-world implementations at Google, Facebook, Yahoo, Microsoft, LinkedIn, etc

COMS E4115 PROGRAMMING LANG & TRANSL. 3.00 points .

COMS W4115 PROGRAMMING LANG & TRANSLATORS. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) and ( COMS W3261 ) and ( CSEE W3827 ) or equivalent, or the instructor's permission. Modern programming languages and compiler design. Imperative, object-oriented, declarative, functional, and scripting languages. Language syntax, control structures, data types, procedures and parameters, binding, scope, run-time organization, and exception handling. Implementation of language translation tools including compilers and interpreters. Lexical, syntactic and semantic analysis; code generation; introduction to code optimization. Teams implement a language and its compiler

COMS W4118 OPERATING SYSTEMS I. 3.00 points .

Prerequisites: ( CSEE W3827 ) and knowledge of C and programming tools as covered in COMS W3136 , W3157 , or W3101, or the instructor's permission. Design and implementation of operating systems. Topics include process management, process synchronization and interprocess communication, memory management, virtual memory, interrupt handling, processor scheduling, device management, I/O, and file systems. Case study of the UNIX operating system. A programming project is required

COMS W4119 COMPUTER NETWORKS. 3.00 points .

Introduction to computer networks and the technical foundations of the internet, including applications, protocols, local area networks, algorithms for routing and congestion control, security, elementary performance evaluation. Several written and programming assignments required

COMS W4121 COMPUTER SYSTEMS FOR DATA SCIENCE. 3.00 points .

Prerequisites: background in Computer System Organization and good working knowledge of C/C++ Corequisites: CSOR W4246 , STAT GU4203 An introduction to computer architecture and distributed systems with an emphasis on warehouse scale computing systems. Topics will include fundamental tradeoffs in computer systems, hardware and software techniques for exploiting instruction-level parallelism, data-level parallelism and task level parallelism, scheduling, caching, prefetching, network and memory architecture, latency and throughput optimizations, specialization, and an introduction to programming data center computers

COMS W4137 From Algorithmic Thinking to Development. 3.00 points .

Algorithmic problem-solving and coding skills needed to devise solutions to interview questions for software engineering positions. Solutions are implemented in Python, Java, C, and C . Approaches include brute-force, hashing, sorting, transform-and-conquer, greedy, and dynamic programming. Focus on experimentation and team work

COMS W4152 Engineering Software-as-a-Service. 3.00 points .

Modern software engineering concepts and practices including topics such as Software-as-a-Service, Service-oriented Architecture, Agile Development, Behavior-driven Development, Ruby on Rails, and Dev/ops

COMS W4153 Cloud Computing. 3.00 points .

Software engineering skills necessary for developing cloud computing and software-as-a-service applications, covering topics such as service-oriented architectures, message-driven applications, and platform integration. Includes theoretical study, practical application, and collaborative project work

COMS W4156 ADVANCED SOFTWARE ENGINEERING. 3.00 points .

Prerequisites: ( COMS W3157 ) or equivalent. Software lifecycle using frameworks, libraries and services. Major emphasis on software testing. Centers on a team project

COMS W4160 COMPUTER GRAPHICS. 3.00 points .

Prerequisites: ( COMS W3134 ) or ( COMS W3136 ) or ( COMS W3137 ) COMS W4156 is recommended. Strong programming background and some mathematical familiarity including linear algebra is required. Introduction to computer graphics. Topics include 3D viewing and projections, geometric modeling using spline curves, graphics systems such as OpenGL, lighting and shading, and global illumination. Significant implementation is required: the final project involves writing an interactive 3D video game in OpenGL

COMS W4162 Advanced Computer Graphics. 3 points .

Prerequisites: ( COMS W4160 ) or equivalent, or the instructor's permission.

A second course in computer graphics covering more advanced topics including image and signal processing, geometric modeling with meshes, advanced image synthesis including ray tracing and global illumination, and other topics as time permits. Emphasis will be placed both on implementation of systems and important mathematical and geometric concepts such as Fourier analysis, mesh algorithms and subdivision, and Monte Carlo sampling for rendering. Note: Course will be taught every two years.

COMS W4165 COMPUT TECHNIQUES-PIXEL PROCSS. 3.00 points .

An intensive introduction to image processing - digital filtering theory, image enhancement, image reconstruction, antialiasing, warping, and the state of the art in special effects. Topics from the basis of high-quality rendering in computer graphics and of low-level processing for computer vision, remote sensing, and medical imaging. Emphasizes computational techniques for implementing useful image-processing functions

COMS W4167 COMPUTER ANIMATION. 3.00 points .

Prerequisites: Multivariable calculus, linear algebra, C++ programming proficiency. COMS W4156 recommended.

Theory and practice of physics-based animation algorithms, including animated clothing, hair, smoke, water, collisions, impact, and kitchen sinks. Topics covered: Integration of ordinary differential equations, formulation of physical models, treatment of discontinuities including collisions/contact, animation control, constrained Lagrangian Mechanics, friction/dissipation, continuum mechanics, finite elements, rigid bodies, thin shells, discretization of Navier-Stokes equations. General education requirement: quantitative and deductive reasoning (QUA). 

COMS W4170 USER INTERFACE DESIGN. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) Introduction to the theory and practice of computer user interface design, emphasizing the software design of graphical user interfaces. Topics include basic interaction devices and techniques, human factors, interaction styles, dialogue design, and software infrastructure. Design and programming projects are required

COMS W4172 3D UI AND AUGMENTED REALITY. 3.00 points .

Prerequisites: ( COMS W4160 ) or ( COMS W4170 ) or the instructor's permission. Design, development, and evaluation of 3D user interfaces. Interaction techniques and metaphors, from desktop to immersive. Selection and manipulation. Travel and navigation. Symbolic, menu, gestural, and multimodal interaction. Dialogue design. 3D software support. 3D interaction devices and displays. Virtual and augmented reality. Tangible user interfaces. Review of relevant 3D math

COMS W4181 SECURITY I. 3.00 points .

Not offered during 2023-2024 academic year.

Prerequisites: COMS W3157 or equivalent. Introduction to security. Threat models. Operating system security features. Vulnerabilities and tools. Firewalls, virtual private networks, viruses. Mobile and app security. Usable security. Note: May not earn credit for both W4181 and W4180 or W4187

COMS W4182 SECURITY II. 3.00 points .

Prerequisites: COMS W4181 , COMS W4118 , COMS W4119 Advanced security. Centralized, distributed, and cloud system security. Cryptographic protocol design choices. Hardware and software security techniques. Security testing and fuzzing. Blockchain. Human security issues. Note: May not earn credit for both W4182 and W4180 or W4187

COMS W4186 MALWARE ANALYSIS&REVERSE ENGINEERING. 3.00 points .

Prerequisites: COMS W3157 or equivalent. COMS W3827 Hands-on analysis of malware. How hackers package and hide malware and viruses to evade analysis. Disassemblers, debuggers, and other tools for reverse engineering. Deep study of Windows Internals and x86 assembly

COMS W4203 Graph Theory. 3 points .

Prerequisites: ( COMS W3203 )

General introduction to graph theory. Isomorphism testing, algebraic specification, symmetries, spanning trees, traversability, planarity, drawings on higher-order surfaces, colorings, extremal graphs, random graphs, graphical measurement, directed graphs, Burnside-Polya counting, voltage graph theory.

COMS W4205 Combinatorial Theory. 3 points .

Lect: 3. Not offered during 2023-2024 academic year.

Prerequisites: ( COMS W3203 ) and course in calculus.

Sequences and recursions, calculus of finite differences and sums, elementary number theory, permutation group structures, binomial coefficients, Stilling numbers, harmonic numbers, generating functions. 

COMS W4223 Networks, Crowds, and the Web. 3.00 points .

This class introduces fundamental ideas and algorithms on networks of information collected by online services. It covers properties pervasive in large networks, dynamics of individuals that lead to large collective phenomena, mechanisms underlying the web economy, and results and tools informing societal impact of algorithms on privacy, polarization and discrimination

COMS W4231 ANALYSIS OF ALGORITHMS I. 3.00 points .

COMS W4232 Advanced Algorithms. 3.00 points .

Prerequisite: Analysis of Algorithms (COMS W4231).

Prerequisites: see notes re: points Introduces classic and modern algorithmic ideas that are central to many areas of Computer Science. The focus is on most powerful paradigms and techniques of how to design algorithms, and how to measure their efficiency. The intent is to be broad, covering a diversity of algorithmic techniques, rather than be deep. The covered topics have all been implemented and are widely used in industry. Topics include: hashing, sketching/streaming, nearest neighbor search, graph algorithms, spectral graph theory, linear programming, models for large-scale computation, and other related topics

COMS W4236 INTRO-COMPUTATIONAL COMPLEXITY. 3.00 points .

Prerequisites: ( COMS W3261 ) Develops a quantitative theory of the computational difficulty of problems in terms of the resources (e.g. time, space) needed to solve them. Classification of problems into complexity classes, reductions, and completeness. Power and limitations of different modes of computation such as nondeterminism, randomization, interaction, and parallelism

COMS W4241 Numerical Algorithms and Complexity. 3 points .

Prerequisites: Knowledge of a programming language. Some knowledge of scientific computation is desirable.

Modern theory and practice of computation on digital computers. Introduction to concepts of computational complexity. Design and analysis of numerical algorithms. Applications to computational finance, computational science, and computational engineering.

COMS W4242 NUMRCL ALGORTHMS-COMPLEXITY II. 3.00 points .

COMS W4252 INTRO-COMPUTATIONAL LEARN THRY. 3.00 points .

Prerequisites: ( CSOR W4231 ) or ( COMS W4236 ) or COMS W3203 and the instructor's permission, or COMS W3261 and the instructor's permission.

Possibilities and limitations of performing learning by computational agents. Topics include computational models of learning, polynomial time learnability, learning from examples and learning from queries to oracles. Computational and statistical limitations of learning. Applications to Boolean functions, geometric functions, automata.

COMS W4261 INTRO TO CRYPTOGRAPHY. 3.00 points .

Prerequisites: Comfort with basic discrete math and probability. Recommended: COMS W3261 or CSOR W4231 . An introduction to modern cryptography, focusing on the complexity-theoretic foundations of secure computation and communication in adversarial environments; a rigorous approach, based on precise definitions and provably secure protocols. Topics include private and public key encryption schemes, digital signatures, authentication, pseudorandom generators and functions, one-way functions, trapdoor functions, number theory and computational hardness, identification and zero knowledge protocols

COMS W4281 INTRO TO QUANTUM COMPUTING. 3.00 points .

Prerequisites: Knowledge of linear algebra. Prior knowledge of quantum mechanics is not required although helpful.

Introduction to quantum computing. Shor's factoring algorithm, Grover's database search algorithm, the quantum summation algorithm. Relationship between classical and quantum computing. Potential power of quantum computers.

COMS W4419 INTERNET TECHNOLOGY,ECONOMICS,AND POLICY. 3.00 points .

Technology, economic and policy aspects of the Internet. Summarizes how the Internet works technically, including protocols, standards, radio spectrum, global infrastructure and interconnection. Micro-economics with a focus on media and telecommunication economic concerns, including competition and monopolies, platforms, and behavioral economics. US constitution, freedom of speech, administrative procedures act and regulatory process, universal service, role of FCC. Not a substitute for CSEE4119. Suitable for non-majors. May not be used as a track elective for the computer science major.

COMS W4444 PROGRAMMING & PROBLEM SOLVING. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) and ( CSEE W3827 ) Hands-on introduction to solving open-ended computational problems. Emphasis on creativity, cooperation, and collaboration. Projects spanning a variety of areas within computer science, typically requiring the development of computer programs. Generalization of solutions to broader problems, and specialization of complex problems to make them manageable. Team-oriented projects, student presentations, and in-class participation required

COMS W4460 PRIN-INNOVATN/ENTREPRENEURSHIP. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) or the instructor's permission. Team project centered course focused on principles of planning, creating, and growing a technology venture. Topics include: identifying and analyzing opportunities created by technology paradigm shifts, designing innovative products, protecting intellectual property, engineering innovative business models

COMS W4701 ARTIFICIAL INTELLIGENCE. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) and any course on probability. Prior knowledge of Python is recommended. Prior knowledge of Python is recommended. Provides a broad understanding of the basic techniques for building intelligent computer systems. Topics include state-space problem representations, problem reduction and and-or graphs, game playing and heuristic search, predicate calculus, and resolution theorem proving, AI systems and languages for knowledge representation, machine learning and concept formation and other topics such as natural language processing may be included as time permits

COMS W4705 NATURAL LANGUAGE PROCESSING. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) or the instructor's permission. Computational approaches to natural language generation and understanding. Recommended preparation: some previous or concurrent exposure to AI or Machine Learning. Topics include information extraction, summarization, machine translation, dialogue systems, and emotional speech. Particular attention is given to robust techniques that can handle understanding and generation for the large amounts of text on the Web or in other large corpora. Programming exercises in several of these areas

COMS W4706 Spoken Language Processing. 3 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) or the instructor's permission.

Computational approaches to speech generation and understanding. Topics include speech recognition and understanding, speech analysis for computational linguistics research, and speech synthesis. Speech applications including dialogue systems, data mining, summarization, and translation. Exercises involve data analysis and building a small text-to-speech system.

COMS W4721 MACHINE LEARNING FOR DATA SCI. 3.00 points .

COMS W4725 Knowledge representation and reasoning. 3 points .

Prerequisites: ( COMS W4701 )

General aspects of knowledge representation (KR). The two fundamental paradigms (semantic networks and frames) and illustrative systems. Topics include hybrid systems, time, action/plans, defaults, abduction, and case-based reasoning. Throughout the course particular attention is paid to design trade-offs between language expressiveness and reasoning complexity, and issues relating to the use of KR systems in larger applications. 

COMS W4731 Computer Vision I: First Principles. 3.00 points .

Prerequisites: Fundamentals of calculus, linear algebra, and C programming. Students without any of these prerequisites are advised to contact the instructor prior to taking the course. Introductory course in computer vision. Topics include image formation and optics, image sensing, binary images, image processing and filtering, edge extraction and boundary detection, region growing and segmentation, pattern classification methods, brightness and reflectance, shape from shading and photometric stereo, texture, binocular stereo, optical flow and motion, 2D and 3D object representation, object recognition, vision systems and applications

COMS W4732 Computer Vision II: Learning. 3.00 points .

Advanced course in computer vision. Topics include convolutional networks and back-propagation, object and action recognition, self-supervised and few-shot learning, image synthesis and generative models, object tracking, vision and language, vision and audio, 3D representations, interpretability, and bias, ethics, and media deception

COMS W4733 COMPUTATIONAL ASPECTS OF ROBOTICS. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136COMS W3137) Introduction to fundamental problems and algorithms in robotics. Topics include configuration spaces, motion and sensor models, search and sampling-based planning, state estimation, localization and mapping, perception, and learning

COMS W4735 VISUAL INTERFACES TO COMPUTERS. 3.00 points .

Prerequisites: ( COMS W3134 or COMS W3136 or COMS W3137 ) Visual input as data and for control of computer systems. Survey and analysis of architecture, algorithms, and underlying assumptions of commercial and research systems that recognize and interpret human gestures, analyze imagery such as fingerprint or iris patterns, generate natural language descriptions of medical or map imagery. Explores foundations in human psychophysics, cognitive science, and artificial intelligence

COMS W4737 Biometrics. 3 points .

Prerequisites: a background at the sophomore level in computer science, engineering, or like discipline.

In this course. we will explore the latest advances in biometrics as well as the machine learning techniques behind them. Students will learn how these technologies work and how they are sometimes defeated. Grading will be based on homework assignments and a final project. There will be no midterm or final exam. This course shares lectures with COMS E6737 . Students taking COMS E6737 are required to complete additional homework problems and undertake a more rigorous final project. Students will only be allowed to earn credit for COMS W4737 or COMS E6737 and not both.

COMS W4762 Machine Learning for Functional Genomics. 3 points .

Prerequisites: Proficiency in a high-level programming language (Python/R/Julia). An introductory machine learning class (such as COMS 4771 Machine Learning) will be helpful but is not required.

Prerequisites: see notes re: points

This course will introduce modern probabilistic machine learning methods using applications in data analysis tasks from functional genomics, where massively-parallel sequencing is used to measure the state of cells: e.g. what genes are being expressed, what regions of DNA (“chromatin”) are active (“open”) or bound by specific proteins.

COMS E4762 Machine Learning for Functional Genomics. 3.00 points .

This course will introduce modern probabilistic machine learning methods using applications in data analysis tasks from functional genomics, where massively-parallel sequencing is used to measure the state of cells: e.g. what genes are being expressed, what regions of DNA (“chromatin”) are active (“open”) or bound by specific proteins

COMS W4771 MACHINE LEARNING. 3.00 points .

Prerequisites: Any introductory course in linear algebra and any introductory course in statistics are both required. Highly recommended: COMS W4701 or knowledge of Artificial Intelligence. Topics from generative and discriminative machine learning including least squares methods, support vector machines, kernel methods, neural networks, Gaussian distributions, linear classification, linear regression, maximum likelihood, exponential family distributions, Bayesian networks, Bayesian inference, mixture models, the EM algorithm, graphical models and hidden Markov models. Algorithms implemented in MATLAB

COMS W4772 ADVANCED MACHINE LEARNING. 3.00 points .

Prerequisites: ( COMS W4771 ) or instructor's permission; knowledge of linear algebra & introductory probability or statistics is required. An exploration of advanced machine learning tools for perception and behavior learning. How can machines perceive, learn from, and classify human activity computationally? Topics include appearance-based models, principal and independent components analysis, dimensionality reduction, kernel methods, manifold learning, latent models, regression, classification, Bayesian methods, maximum entropy methods, real-time tracking, extended Kalman filters, time series prediction, hidden Markov models, factorial HMMS, input-output HMMs, Markov random fields, variational methods, dynamic Bayesian networks, and Gaussian/Dirichlet processes. Links to cognitive science

COMS W4773 Machine Learning Theory. 3 points .

Prerequisites: Machine Learning (COMS W4771). Background in probability and statistics, linear algebra, and multivariate calculus. Ability to program in a high-level language, and familiarity with basic algorithm design and coding principles.

Core topics from unsupervised learning such as clustering, dimensionality reduction and density estimation will be studied in detail. Topics in clustering: k-means clustering, hierarchical clustering, spectral clustering, clustering with various forms of feedback, good initialization techniques and convergence analysis of various clustering procedures. Topics in dimensionality reduction: linear techniques such as PCA, ICA, Factor Analysis, Random Projections, non-linear techniques such as LLE, IsoMap, Laplacian Eigenmaps, tSNE, and study of embeddings of general metric spaces, what sorts of theoretical guarantees can one provide about such techniques. Miscellaneous topics: design and analysis of data structures for fast Nearest Neighbor search such as Cover Trees and LSH. Algorithms will be implemented in either Matlab or Python.

COMS E4773 Machine Learning Theory. 3.00 points .

Theoretical study of algorithms for machine learning and high-dimensional data analysis. Topics include high-dimensional probability, theory of generalization and statistical learning, online learning and optimization, spectral analysis

COMS W4774 Unsupervised Learning. 3.00 points .

Prerequisites: Solid background in multivariate calculus, linear algebra, basic probability, and algorithms.

Prerequisites: see notes re: points Core topics from unsupervised learning such as clustering, dimensionality reduction and density estimation will be studied in detail. Topics in clustering: k-means clustering, hierarchical clustering, spectral clustering, clustering with various forms of feedback, good initialization techniques and convergence analysis of various clustering procedures. Topics in dimensionality reduction: linear techniques such as PCA, ICA, Factor Analysis, Random Projections, non-linear techniques such as LLE, IsoMap, Laplacian Eigenmaps, tSNE, and study of embeddings of general metric spaces, what sorts of theoretical guarantees can one provide about such techniques. Miscellaneous topics: design and analysis of datastructures for fast Nearest Neighbor search such as Cover Trees and LSH. Algorithms will be implemented in either Matlab or Python

COMS W4775 Causal Inference. 3.00 points .

Prerequisites: Discrete Math, Calculus, Statistics (basic probability, modeling, experimental design), some programming experience.

Prerequisites: see notes re: points Causal Inference theory and applications. The theoretical topics include the 3-layer causal hierarchy, causal bayesian networks, structural learning, the identification problem and the do-calculus, linear identifiability, bounding, and counterfactual analysis. The applied part includes intersection with statistics, the empirical-data sciences (social and health), and AI and ML

COMS E4775 Causal Inference. 3 points .

Prerequisites: (COMS4711W) and Discrete Math, Calculus, Statistics (basic probability, modeling, experimental design), Some programming experience

Causal Inference theory and applications. The theoretical topics include the 3-layer causal hierarchy,  causal bayesian networks, structural learning, the identification problem and the do-calculus, linear identifiability, bounding, and counterfactual analysis. The applied part includes intersection with statistics, the empirical-data sciences (social and health), and AI and ML.

COMS W4776 Machine Learning for Data Science. 3 points .

Prerequisites: ( STAT GU4001 or IEOR E4150 ) and linear algebra.

Introduction to machine learning, emphasis on data science. Topics include least square methods, Gaussian distributions, linear classification, linear regression, maximum likelihood, exponential family distributions, Bayesian networks, Bayesian inference, mixture models, the EM algorithm, graphical models, hidden Markov models, support vector machines kernel methods. Emphasizes methods and problems relevant to big data. Students may not receive credit for both COMS W4771 and W4776.

COMS W4824 COMPUTER ARCHITECTURE. 3.00 points .

COMS W4835 COMPUTER ORGANIZATION II. 3.00 points .

COMS E4899 Research Training. 0.00 points .

COMS W4901 Projects in Computer Science. 1-3 points .

Prerequisites: Approval by a faculty member who agrees to supervise the work.

A second-level independent project involving laboratory work, computer programming, analytical investigation, or engineering design. May be repeated for credit, but not for a total of more than 3 points of degree credit. Consult the department for section assignment.

COMS W4910 CURRICULAR PRACTICAL TRAINING. 1.00 point .

COMS E4995 COMPUTER ARTS/VIDEO GAMES. 3.00 points .

Special topics arranged as the need and availability arises. Topics are usually offered on a one-time basis. Since the content of this course changes each time it is offered, it may be repeated for credit. Consult the department for section assignment

COMS W4995 TOPICS IN COMPUTER SCIENCE. 3.00 points .

Prerequisites: Instructor's permission. Selected topics in computer science. Content and prerequisites vary between sections and semesters. May be repeated for credit. Check “topics course” webpage on the department website for more information on each section

COMS W4996 Special topics in computer science, II. 3 points .

Prerequisites: Instructor's permission.

A continuation of COMS W4995 when the special topic extends over two terms.

Computer Science - Electrical Engineering

CSEE W3826 FUNDAMENTALS OF COMPUTER ORG. 3.00 points .

CSEE W3827 FUNDAMENTALS OF COMPUTER SYSTS. 3.00 points .

Prerequisites: an introductory programming course. Fundamentals of computer organization and digital logic. Boolean algebra, Karnaugh maps, basic gates and components, flipflops and latches, counters and state machines, basics of combinational and sequential digital design. Assembly language, instruction sets, ALU’s, single-cycle and multi-cycle processor design, introduction to pipelined processors, caches, and virtual memory

CSEE W4119 COMPUTER NETWORKS. 3.00 points .

Introduction to computer networks and the technical foundations of the Internet, including applications, protocols, local area networks, algorithms for routing and congestion control, security, elementary performance evaluation. Several written and programming assignments required

CSEE W4121 COMPUTER SYSTEMS FOR DATA SCIENCE. 3.00 points .

Prerequisites: Background in Computer System Organization and good working knowledge of C/C++. Corequisites: CSOR W4246 Algorithms for Data Science, STAT W4203 Probability Theory, or equivalent as approved by faculty advisor. An introduction to computer architecture and distributed systems with an emphasis on warehouse scale computing systems. Topics will include fundamental tradeoffs in computer systems, hardware and software techniques for exploiting instruction-level parallelism, data-level parallelism and task level parallelism, scheduling, caching, prefetching, network and memory architecture, latency and throughput optimizations, specialization, and an introduction to programming data center computers

CSEE W4140 NETWORKING LABORATORY. 3.00 points .

Prerequisites: ( CSEE W4119 ) or equivalent. In this course, students will learn how to put principles into practice, in a hands-on-networking lab course. The course will cover the technologies and protocols of the Internet using equipment currently available to large internet service providers such as CISCO routers and end systems. A set of laboratory experiments will provide hands-on experience with engineering wide-area networks and will familiarize students with the Internet Protocol (IP), Address Resolution Protocol (ARP), Internet Control Message Protocol (ICMP), User Datagram Protocol (UDP) and Transmission Control Protocol (TCP), the Domain Name System (DNS), routing protocols (RIP, OSPF, BGP), network management protocols (SNMP, and application-level protocols (FTP, TELNET, SMTP)

CSEE W4823 Advanced Logic Design. 3 points .

Prerequisites: ( CSEE W3827 ) or a half semester introduction to digital logic, or the equivalent.

An introduction to modern digital system design. Advanced topics in digital logic: controller synthesis (Mealy and Moore machines); adders and multipliers; structured logic blocks (PLDs, PALs, ROMs); iterative circuits. Modern design methodology: register transfer level modelling (RTL); algorithmic state machines (ASMs); introduction to hardware description languages (VHDL or Verilog); system-level modelling and simulation; design examples.

CSEE W4824 COMPUTER ARCHITECTURE. 3.00 points .

Prerequisites: ( CSEE W3827 ) or equivalent. Focuses on advanced topics in computer architecture, illustrated by case studies from classic and modern processors. Fundamentals of quantitative analysis. Pipelining. Memory hierarchy design. Instruction-level and thread-level parallelism. Data-level parallelism and graphics processing units. Multiprocessors. Cache coherence. Interconnection networks. Multi-core processors and systems-on-chip. Platform architectures for embedded, mobile, and cloud computing

CSEE W4840 EMBEDDED SYSTEMS. 3.00 points .

Prerequisites: ( CSEE W4823 ) Embedded system design and implementation combining hardware and software. I/O, interfacing, and peripherals. Weekly laboratory sessions and term project on design of a microprocessor-based embedded system including at least one custom peripheral. Knowledge of C programming and digital logic required

CSEE W4868 SYSTEM-ON-CHIP PLATFORMS. 3.00 points .

Prerequisites: ( COMS W3157 ) and ( CSEE W3827 ) Design and programming of System-on-Chip (SoC) platforms. Topics include: overview of technology and economic trends, methodologies and supporting CAD tools for system-level design, models of computation, the SystemC language, transaction-level modeling, software simulation and virtual platforms, hardware-software partitioning, high-level synthesis, system programming and device drivers, on-chip communication, memory organization, power management and optimization, integration of programmable processor cores and specialized accelerators. Case studies of modern SoC platforms for various classes of applications

Computer Science - Biomedical Engineering

CBMF W4761 COMPUTATIONAL GENOMICS. 3.00 points .

Prerequisites: Working knowledge of at least one programming language, and some background in probability and statistics. Computational techniques for analyzing genomic data including DNA, RNA, protein and gene expression data. Basic concepts in molecular biology relevant to these analyses. Emphasis on techniques from artificial intelligence and machine learning. String-matching algorithms, dynamic programming, hidden Markov models, expectation-maximization, neural networks, clustering algorithms, support vector machines. Students with life sciences backgrounds who satisfy the prerequisites are encouraged to enroll

Columbia College

Columbia University in the City of New York 208 Hamilton Hall , Mail Code 2805 1130 Amsterdam Avenue New York, NY 10027

[email protected] Phone: 212-854-2441

College Offices

  • Alumni Affairs and Development
  • Berick Center for Student Advising
  • Center for Career Education
  • Center for Undergraduate Global Engagement
  • Double Discovery Center
  • Eric H. Holder Jr. Initiative for Civil and Political Rights
  • Financial Aid & Educational Financing
  • Undergraduate Admissions
  • Undergraduate Research and Fellowships
  • Columbia College on Facebook
  • Columbia College on Twitter
  • Columbia College on Instagram

© 2023-2024 Columbia University   |   Privacy Policy   |   Notice of Non-Discrimination   |   Terms of Use   |   Accessibility   |   University Home Page

Print this page including tabs.

columbia university computer science phd students

MASTER OF SCIENCE PROGRAM

The Master of Science (MS) program is intended for people who wish to broaden and deepen their understanding of Computer Science. Columbia University and the New York City environment provide excellent career opportunities in multiple industries.

The program provides a unique opportunity to develop leading-edge in-depth knowledge of specific computer science disciplines. The department currently offers concentration tracks covering eight such disciplines. MS students are encouraged to participate in state-of-the-art research with our research groups and labs.

REQUIREMENTS

  • Complete a total of 30 points (Courses must be at the 4000 level or above)
  • Maintain at least a 2.7 overall GPA. (No more than 1 D is permitted). The full Academic Standing Policy can be found here .
  • Complete the Columbia Engineering Professional Development & Leadership (PDL) requirement (Not applicable to CVN students)
  • Satisfy breadth requirements
  • Take at least 6 points of technical courses at the 6000 level
  • At most up to 3 points of your degree can be Non-CS/Non-track If they are deemed relevant to your track and sufficiently technical in nature. Submit the Non-CS/NonTrack form and the course syllabus to your CS Faculty Advisor for review

TRACK OPTIONS

Choose one of the tracks below, view each track webpage for details on requirements.

Columbia Video Network (CVN) students should also choose from one of the above tracks. For faculty advisement, please contact the assigned track advisors .

Cs ms faculty track advisors.

CS Faculty Advisors will be assigned after you select a track in Mice. If you do not yet have a Mice account but are a CS MS student, please contact [email protected] . Contact your Track Advisor to get special permission for any course not specifically approved on your CS track websites .

DEGREE PROGRESS CHECKLIST

Students should keep an updated copy of their Degree Progress Checklist on hand for any academic progress reviews with their Faculty and/or Admin advisor. This form will also be requested a few weeks before graduation to verify your program requirements are met.

If you are following the old MS track requirements, please refer to the old requirements page

Topics courses.

If you are interested in applying a specialized Topics in Computer Science courses (COMS 4995 or COMS 6998) to your Track electives, please view Topics Courses by Track Approval . 

Students may take multiple sections of COMS 4995 and/or COMS 6998, as each topic title will vary by content each semester. If you aren’t sure if a course is the same, please email your MS Faculty Track Advisor.

No approval is required for the course to count as a General Elective.

A list of current and recent Topics Course Descriptions can be found here .

MS IN COMPUTER ENGINEERING

In addition to the Computer Science MS Program, we offer the Computer Engineering MS Program jointly with the Electrical Engineering Department. More information about the program can be found in the Computer Engineering section of the SEAS bulletin and on the Computer Engineering website .

DUAL MS IN JOURNALISM AND COMPUTER SCIENCE

Admitted students will enroll for a total of four semesters. In addition to taking classes already offered at the Journalism and Engineering schools, students will attend a seminar and workshop designed specifically for the dual degree program. The seminar will teach students about the impact of digital techniques on journalism; the emerging role of citizens in the news process; the influence of social media; and the changing business models that will support news gathering. In the workshop, students will use a hands-on approach to delve deeply into information design, focusing on how to build a site, section, or application from concept to development, ensuring the editorial goals are kept uppermost in mind. For more information, please visit the program website .

IMPORTANT AND USEFUL LINKS

  • MS TRACK ADVISORS
  • MS PROGRAM FAQ
  • FIELDWORK/CPT FAQ
  • COLUMBIA ENGINEERING RESEARCH OPPORTUNITIES
  • COLUMBIA ENGINEERING PROFESSIONAL DEVELOPMENT & LEADERSHIP (PDL) PROGRAM
  • COMPUTER SCIENCE ACADEMIC HONESTY POLICY

ADMISSIONS INFORMATION

Updated 03/25/2024

Find open faculty positions here .

Computer Science at Columbia University

Upcoming events, last day of classes.

Monday 10:00 am

Class Day Graduate Ceremony

Sunday 3:00 pm

South Lawn, Morningside Campus

Class Day Undergraduate Ceremony

Monday 11:45 am

CS Awards Ceremony and Celebration

Monday 1:00 pm

CSB 451 CS Auditorium

In the News

Press mentions, dean boyce's statement on amicus brief filed by president bollinger.

President Bollinger announced that Columbia University along with many other academic institutions (sixteen, including all Ivy League universities) filed an amicus brief in the U.S. District Court for the Eastern District of New York challenging the Executive Order regarding immigrants from seven designated countries and refugees. Among other things, the brief asserts that “safety and security concerns can be addressed in a manner that is consistent with the values America has always stood for, including the free flow of ideas and people across borders and the welcoming of immigrants to our universities.”

This recent action provides a moment for us to collectively reflect on our community within Columbia Engineering and the importance of our commitment to maintaining an open and welcoming community for all students, faculty, researchers and administrative staff. As a School of Engineering and Applied Science, we are fortunate to attract students and faculty from diverse backgrounds, from across the country, and from around the world. It is a great benefit to be able to gather engineers and scientists of so many different perspectives and talents – all with a commitment to learning, a focus on pushing the frontiers of knowledge and discovery, and with a passion for translating our work to impact humanity.

I am proud of our community, and wish to take this opportunity to reinforce our collective commitment to maintaining an open and collegial environment. We are fortunate to have the privilege to learn from one another, and to study, work, and live together in such a dynamic and vibrant place as Columbia.

Mary C. Boyce Dean of Engineering Morris A. and Alma Schapiro Professor

Add Event to GMail

{{title}} {{fullname}}

columbia university computer science phd students

Courses This Semester

  • {{title}} ({{dept}} {{prefix}}{{course_num}}-{{section}})

Theory of Computation at Columbia

The Theory of Computation group is a part of the Department of Computer Science in the Columbia School of Engineering and Applied Sciences .

We research the fundamental capabilities and limitations of efficient computation. In addition, we use computation as a lens to gain deeper insights into problems from the natural, social, and engineering sciences. Our active research areas include algorithmic game theory, complexity theory, cryptography, the design and analysis of algorithms, interactive computation and communication, theoretical neuroscience, property testing, the role of randomness in computation, sublinear and streaming algorithms, and the theoretical foundations of machine learning.

Our group is highly collaborative, both within Columbia and among peer institutions. We have a weekly Theory Lunch and Student Seminar . We also have an Undergraduate Theory Learning Seminar that organizes student-run reading groups for undergraduates. Most graduate students have (at least) two advisors and collaborate with several professors and other students. Some of our faculty are cross-listed with the IEOR department and the Data Science Institute . We interact with the New York theory community at large through NYCAC , NYC Theory Day , NYC Crypto Day , and the Simons Collaboration on Algorithms and Geometry .

We regularly communicate on two listservs, which you can join on the attached links: theory-read (for seminar talks that include faculty) and theory-phd (for student-centric things, including our student seminar).

Our department and research group are growing, and we're always looking for new members and collaborators. If you would like to join our group as a graduate student, please apply to the PhD program in Computer Science at Columbia. Please reach out to faculty directly for inquiries about postdoc positions.

columbia university computer science phd students

Recurring Events

  • Theory Lunch
  • Student Learning Seminar
  • Undergraduate Theory Learning Seminar
  • NYC Crypto Day and NYC Theory Day

Our Friends

  • Columbia's Data Science Institute
  • IEOR and Statistics at Columbia
  • IAS School of Mathematics
  • Rutgers DIMACS
  • Simons Algorithms and Geometry Collaboration
  • Columbia's Year on Statistical ML

Recent Courses

  • COMS 4281: Introduction to Quantum Computing (F23)
  • COMS 4261: Introduction to Cryptography (F23)
  • COMS 4252: Computational Learning Theory (F23)
  • COMS 4236: Introduction to Computational Complexity (F23)
  • COMS 6998: Foundations of Data Privacy (F23)
  • COMS 6998: Introduction to Property Testing (F23)
  • COMS 6998: Algebraic Techniques in TCS (F23)
  • COMS 6998: Algorithms for Massive Data (F23)
  • COMS 6998: Reading the CS Classics (S23)
  • COMS 4261: Introduction to Cryptography (S23)
  • COMS 4232: Advanced Algorithms (S23)
  • COMS 4236: Introduction to Computational Complexity (S23)
  • COMS 4252: Computational Learning Theory (F22)
  • COMS 4236: Introduction to Computational Complexity (F22)
  • COMS 4995: Logic and Computability (F22)
  • COMS 6998: Fair and Robust Algorithms (F22)
  • COMS 6998: Fine Grained Complexity (F22)
  • COMS 6998: Communication Complexity & Apps. (S22)
  • COMS 6998: Frontiers of Quantum Complexity (S22)
  • COMS 6998: Quantum Computing: Theory & Practice (S22)
  • COMS 4261: Introduction to Cryptography (S22)
  • COMS 4236: Introduction to Computational Complexity (S22)
  • COMS 4232: Advanced Algorithms (S22)
  • COMS 4252: Computational Learning Theory (F21)
  • COMS 4995: Foundations of Blockchains (F21)
  • COMS 4995: Logic and Computability (F21)
  • COMS 6995: Algebraic Techniques in TCS (F21)
  • COMS 6995: Computation and the Brain (F21)
  • COMS 4252: Computational Learning Theory (S21)
  • COMS 4281: Introduction to Quantum Computing (S21)
  • COMS 4995: Advanced Algorithms (S21)
  • COMS 4995: Information Theory in TCS (F20)
  • COMS 4995: Foundations of Blockchains (F20)
  • COMS 6995: Computation and the Brain (F20)
  • COMS 4232: Advanced Algorithms (S20)
  • COMS 4995: Incentives in Computer Science (S20)
  • COMS 6261: Information-Theoretic Cryptography (S20)

Recent Alumni (PhDs and Postdocs)

  • Hamoon Mousavi
  • Chengyu Lin
  • Emmanouil Vlatakis
  • Kiran Vodrahalli
  • Sandip Sinha
  • Peilin Zhong
  • Kira Goldner
  • Chin Ho Lee
  • Arnold Flitser
  • Marshall Ball
  • Erik Waingarten
  • Victor Lecomte
  • Timothy Sun
  • Ghada Almashaqbeh
  • Lucas Kowalczyk
  • Fabrice Benhamouda
  • Sepideh Mahabadi
  • Ilya Razenshteyn
  • Alexander Golovnev
  • Stuart Hadfield
  • Clément Canonne
  • Xiaorui Sun
  • Dimitris Paparas
  • Fernando Krell
  • Igor Carboni Oliveira
  • Li-Yang Tan
  • Iasonas Petras
  • Dana Dachman-Soled
  • Mariana Raykova
  • Seung Geol Choi
  • Yevgeniy Vahlis
  • Spyridon Antonakopoulos
  • Ilias Diakonikolas
  • Ragesh Jaiswal
  • Emanuele Viola
  • Homin K. Lee
  • Hoeteck Wee

Ph.D. Specialization in Data Science

The ph.d. specialization in data science is an option within the applied mathematics, computer science, electrical engineering, industrial engineering and operations research, and statistics departments..

Only students already enrolled in one of these doctoral programs at Columbia are eligible to participate in this specialization. Students should fulfill the requirements below in addition to those of their respective department's Ph.D. program. Students should discuss this specialization option with their Ph.D. advisor and their department's director for graduate studies.

Applied Mathematics Doctoral Program

Computer Science Doctoral Program

Decision, Risk, and Operations (DRO) Program

Electrical Engineering Doctoral Program

Industrial Engineering and Operations Research Doctoral Program

Statistics Doctoral Program

The specialization consists of either five (5) courses from the lists below, or four (4) courses plus one (1) additional course approved by the curriculum committee. All courses must be taken for a letter grade and students must pass with a B+ or above. At least three (3) of the courses should come from outside the student’s home department. At least one (1) course has to come from each of the three (3) thematic areas listed below.

Specialization Requirements

  • COMS 4231 Analysis of Algorithms I
  • COMS 6232 Analysis of Algorithms II
  • COMS 4111 Introduction to Databases
  • COMS 4113 Distributed Systems Fundamentals
  • EECS 6720 Bayesian Models for Machine Learning
  • COMS 4771 Machine Learning
  • COMS 4772 Advanced Machine Learning
  • IEOR E6613 Optimization I
  • IEOR E6614 Optimization II
  • IEOR E6711 Stochastic Modeling I
  • EEOR E6616 Convex Optimization
  • STAT 6301 Probability Theory I
  • STAT 6201 Theoretical Statistics I
  • STAT 6101 Applied Statistics I
  • STAT 6104 Computational Statistics
  • STAT 5224 Bayesian Statistics
  • STCS 6701 Foundations of Graphical Models (joint with Computer Science) 

Information Request Form

Ph.d. specialization committee.

  • View All People
  • Faculty of Arts and Sciences Professor of Statistics
  • The Fu Foundation School of Engineering and Applied Science Professor of Computer Science

Richard A. Davis

  • Faculty of Arts and Sciences Howard Levene Professor of Statistics

Vineet Goyal

  • The Fu Foundation School of Engineering and Applied Science Associate Professor of Industrial Engineering and Operations Research

Garud N. Iyengar

  • The Fu Foundation School of Engineering and Applied Science Vice Dean of Research
  • Tang Family Professor of Industrial Engineering and Operations Research

Gail Kaiser

Rocco a. servedio, clifford stein.

  • Data Science Institute Interim Director
  • The Fu Foundation School of Engineering and Applied Science Wai T. Chang Professor of Industrial Engineering and Operations Research and Professor of Computer Science

John Wright

  • The Fu Foundation School of Engineering and Applied Science Associate Professor of Electrical Engineering
  • Data Science Institute Associate Director for Academic Affairs

Explore summer courses and register.

Computer science.

The Computer Science Department advances the role of computing in our lives through research and prepares the next generation of computer scientists with its academic programs.

For questions about specific courses, contact the department.

INTRO-COMPUT SCI/PROG IN JAVA COMS1004W001 3 pts

Course number, summer 2024, times/location, section/call number, development technology coms3102w001 2 pts.

Introduction to software development tools and environments. Each section devoted to a specific tool or environment. One-point sections meet for two hours each week for half a semester, and two point sections include an additional two-hour lab.

Intermediate Computing in Python COMS3132W001 4 pts

Data structures in java coms3134w001 3 pts.

Data types and structures: arrays, stacks, singly and doubly linked lists, queues, trees, sets, and graphs. Programming techniques for processing such structures: sorting and searching, hashing, garbage collection. Storage management. Rudiments of the analysis of algorithms. Taught in Java. Note: Due to significant overlap, students may receive credit for only one of the following three courses: COMS W3134, COMS W3136, COMS W3137.

ADVANCED PROGRAMMING COMS3157W001 4 pts

Discrete mathematics coms3203w001 4 pts, computer science theory coms3261w001 3 pts, intro to cryptography coms4261w001 3 pts.

An introduction to modern cryptography, focusing on the complexity-theoretic foundations of secure computation and communication in adversarial environments; a rigorous approach, based on precise definitions and provably secure protocols. Topics include private and public key encryption schemes, digital signatures, authentication, pseudorandom generators and functions, one-way functions, trapdoor functions, number theory and computational hardness, identification and zero knowledge protocols.

ARTIFICIAL INTELLIGENCE COMS4701W001 3 pts

Artificial intelligence coms4701wv01 3 pts.

Prior knowledge of Python is recommended. Provides a broad understanding of the basic techniques for building intelligent computer systems. Topics include state-space problem representations, problem reduction and and-or graphs, game playing and heuristic search, predicate calculus, and resolution theorem proving, AI systems and languages for knowledge representation, machine learning and concept formation and other topics such as natural language processing may be included as time permits.

NATURAL LANGUAGE PROCESSING COMS4705W001 3 pts

Natural language processing coms4705wv01 3 pts.

Computational approaches to natural language generation and understanding. Recommended preparation: some previous or concurrent exposure to AI or Machine Learning. Topics include information extraction, summarization, machine translation, dialogue systems, and emotional speech. Particular attention is given to robust techniques that can handle understanding and generation for the large amounts of text on the Web or in other large corpora. Programming exercises in several of these areas.

MACHINE LEARNING COMS4771W001 3 pts

Machine learning coms4771wv01 3 pts.

Topics from generative and discriminative machine learning including least squares methods, support vector machines, kernel methods, neural networks, Gaussian distributions, linear classification, linear regression, maximum likelihood, exponential family distributions, Bayesian networks, Bayesian inference, mixture models, the EM algorithm, graphical models and hidden Markov models. Algorithms implemented in MATLAB.

TOPICS IN COMPUTER SCIENCE COMS4995W001 3 pts

Topics in computer science coms4995w002 3 pts.

Selected topics in computer science. Content and prerequisites vary between sections and semesters. May be repeated for credit. Check “topics course” webpage on the department website for more information on each section.

ANALYSIS OF ALGORITHMS I CSOR4231W001 3 pts

Analysis of algorithms i csor4231wv01 3 pts.

Prerequisites: (COMS W3134 or COMS W3136COMS W3137) and (COMS W3203) Introduction to the design and analysis of efficient algorithms. Topics include models of computation, efficient sorting and searching, algorithms for algebraic problems, graph algorithms, dynamic programming, probabilistic methods, approximation algorithms, and NP-completeness.

INTRO TO COMP FOR ENG/APP SCI ENGI1006E001 3 pts

Workplace communication in english engi5000e001 0 pts.

English communication proficiency is important for academic achievement and career success. Columbia Engineering provides English communication instruction for students who would like to improve their communication skills in English. In a small group setting (15-20 students), enrollees will obtain opportunities to interact with the instructor and fellow classmates to improve communication skills.

PROFESSIONAL PRESENTATION ENGI5001E001 0 pts

Professional communication in english engi5002e001 0 pts, academic writing engi5003e001 0 pts.

A growing number of our students decide to pursue doctoral studies after graduation. Graduate placements of MA in Statistics Alumni span several countries, institutions, and diverse fields and disciplines.

To support our qualified MA Students, we offer research and faculty-led hands-on project opportunities.  In particular, the MA Mentored Research Course and select Ph.D. level courses are available. 

MA Mentored Research is a mentored on-campus learning and research program providing our PhD-oriented MA students with research experience. It allows our students to gain experience and skills to grow as researchers.  Topics span various areas, ranging from machine learning and data science to specific problems in financial and medical research.  Meanwhile, faculty mentors receive research support from our students who have rigorous preparation in statistics, data science, and machine learning. 

In addition, our students can apply for the department’s yearly Joint Statistical Meetings (JSM) Conference Awards to present their work, network with statisticians in academia, industry, and government and participate in professional development opportunities. The award covers the full cost of conference registration and a portion of travel and lodging costs.

Our Fall Ph.D. Information Session is open to all MA students. It is moderated by professors and advanced Ph.D. students. The discussion revolves around topics relating to academic preparation and career opportunities in research and the corporate world. 

Students interested in pursuing a Ph.D. are encouraged to register for the Professional Development Course STAT GR 5391 in their first semester.  The first half of the semester of this course supports career building for all MA Students.  The second half offers specific support for the PhD-oriented students. 

  • Alumni Profiles

Class of 2017

"I am a first-year mathematical informatics PhD student at the University of Tokyo, Graduate School of Information Science and Technology at the Yamanishi Lab researching model-change detection in online advertising platforms. Studying applied data science taught me how important it was to improve my programming skills. My statistical inference courses gave me a solid theoretical foundation, especially when inventing new algorithms and frameworks, and my machine learning courses gave me an understanding of machine-learning algorithms and their relationships. These are three very essential areas to master in order to become a successful data and/or algorithm scientist."

Class of 2014

"I am currently a Research Engineer at Verizon Media where I am responsible for identifying business trends and discovering information hidden in vast amounts of data, and working closely with the business team to develop and improve new product features. My daily work typically includes creating various machine learning-based tools, conducting end-to-end testing to deliver better products, performing statistical analysis, and doing ad-hoc analysis and presenting results in a clear manner. After completing my MA at Columbia, I joined North Carolina State’s statistics department where I obtained my PhD. My experience in the MA program provided me with a solid foundation in research and methodology. The faculty supported my interests and guided me through the program and after."

Yiran Jiang

Class of 2018

“I am a second year PhD student in Statistics at Purdue University. I received my Bachelors degree in Economics at Fudan University and Masters degree in Statistics at Columbia. I took 15 courses during my MA study, most of them are from the Department of Statistics. These courses helped me build concepts in Statistics and allowed me to continue my study in PhD level courses.”

For more Alumni Profiles, click here.

PhD Placement

Graduates of the MA in Statistics program have been accepted into the following Ph.D. programs:

2021 – 2018 (partial survey results)

2017 and earlier  (partial survey results).

  • General Info
  • Location and Directions
  • Videos of Students and Alumni
  • Videos of Faculty
  • MA Statistics Program Requirements
  • Good Academic Standing
  • Application Procedures
  • Application Checklist
  • Admissions Decisions
  • Admissions FAQs
  • MA Program in Statistics: Tuition and Fees
  • BA/MA Program
  • Option for GSAS PhDs
  • Scholarship & Funding Opportunities
  • Student Profiles
  • Required Courses
  • Approved Electives
  • Columbia Course Directory
  • STAT GR5398: MA Mentored Research 
  • Stat GR5399: Statistical Fieldwork
  • Career Management Resources
  • Summer Internships
  • Events Calendar
  • Registration
  • Academic Advising
  • PhD Interest Resources
  • MA Mentored Research
  • Student Life
  • Student Resources
  • Find Essential Info
  • M.A. Students Only
  • Alumni Resources
  • GSAS Alumni Association
  • Recent Alumni Videos

Upcoming Events

Last day of spring term classes., gsas convocation, university commencement, recent student achievements, student videos.

Watch interviews of current students and alumni about their experience in the MA Statistics program at Columbia.

Faculty Videos

Watch interviews of faculty about their courses in the MA Statistics Program at Columbia.

Columbia | Engineering

A Student’s Journey on the Bridge to PhD Program

Columbia’s bridge to phd program supports eden shaveet in her journey as a public health infodemiologist..

Eden Shaveet

Eden Shaveet

Eden Shaveet is about to ”graduate” as a public health infodemiologist from Columbia Engineering’s Bridge to PhD Program, designed to support students who’ve encountered barriers on their path to a graduate education in STEM. Shaveet, who holds an MS in health informatics and analytics from the Tufts University School of Medicine (TUSM), is the first Bridge Scholar taken on by the Department of Computer Science.

Interest in infodemiology

While at Tufts, she maintained one of the highest GPAs in the TUSM program and won their 2023 Health Informatics and Analytics Academic Achievement award. A faculty member there mentioned “infodemiology” to Shaveet in passing and she was instantly intrigued. While she was already interested in epidemiology and information science, she’d never considered that the two fields could overlap.

Shaveet’s path to graduate school has been far from traditional. She completed secondary school through the Gateway to College program and received her BA with honors in psychology and behavioral health. During clinical internships as an undergraduate, Shaveet found herself gravitating more towards databases and decided to pursue informatics.

Coming to Columbia

Shaveet came to the Bridge to PhD Program in STEM to hone in on her computational skill set. She was already trained as a health informatician, but she recognized that pursuing computer science research and coursework as a bridge scholar would not only enhance her skills as an interdisciplinary informatician but also increase her competitiveness as an applicant for PhD programs in informatics and information science. She knew that the Bridge program catered to people like her -- those who came from nontraditional educational backgrounds or have been historically underrepresented in their fields. Being offered a spot in the program has been one of the most fulfilling training experiences of her life.

“The Bridge to PhD Program is an exceptional program led by exceptional people that cultivates capable and successful academics,” Shaveet said. “I'm lucky to be a part of it.”

Shaveet didn’t arrive at Columbia Engineering with a comprehensive background in computing -- she saw herself as a potential public health practitioner. But during her first hackathon, her team won the first-place Patient Safety award through the Patient Safety Technology Challenge, alongside this reporter’s team, at the 2023 DivHacks Hackathon —an unexpected feat, she admitted. After taking courses in computer science and conducting computational research, Shaveet feels like this is where she is meant to be: “It’s what has kept my attention.”

Using data to explore food-poisoning outbreaks

And now her specialty at Columbia has become just that: public health infodemiology. Her work is focused on using publicly available data from sources such as social media and discussion forums to explore outbreaks of food-borne illnesses. She appreciates that “at Columbia, it’s not just hobbyists” who are interested in this work, but researchers who are integrating it into public health departments, including the New York City Department of Health and Mental Hygiene and the Los Angeles County Department of Public Health.

Shaveet is working with Computer Science Professors Luis Gravano and Daniel Hsu on the Adaptive Information Extraction from Social Media for Actionable Inferences in Public Health team. She describes the research as “grounded in the idea that we can augment current methods in public health needs assessments and passive syndromic surveillance using…anywhere people congregate and self-disclose information that we can translate into a health status signal for a population.”

Next up? A PhD

Shaveet applied to a range of PhD programs while finishing up her studies, received several offers, and has recently accepted a place in Cornell’s PhD program in information science with a graduate minor in computer science. She’s not going far -- she’ll be based on the Cornell Tech campus on Roosevelt Island.

Shaveet credits the Bridge program for preparing her in ways that she didn’t expect and that she is very grateful for. “I really didn’t expect to be applying to PhD programs in computer science and informatics!” she said. A major confidence builder has been winning the National Science Foundation (NSF) Computer and Information Science and Engineering Graduate (CSGrad4US) Fellowship, which will fund three years of her PhD anywhere she decides to go.

Richard Hagen, the director of the Bridge to PhD Program, praised Shaveet’s stellar performance in the program: “Eden truly embodies the essence of the Bridge to PhD program at Columbia with her outstanding accomplishments and the prestigious grant she received. I am incredibly proud of her and excited to witness her continued success in higher academia.”

The Bridge to PhD at Columbia

Columbia Engineering’s Bridge to PhD Program features intensive research, academic, and mentoring experiences for post-baccalaureates seeking to strengthen their applications for graduate school and to prepare for the transition to a PhD student. Recent alumni have gone on to PhD programs at Columbia University, the University of Chicago, the University of Wisconsin, Harvard University, Johns Hopkins University, and Princeton University. Several recent alumni have also received prestigious awards from the NSF, including the Graduate Research Fellowship Program.

Stay up-to-date with the Columbia Engineering newsletter

Skip to Content

PhD students earn major NSF graduate research fellowships

Three Electrical, Computer and Energy Engineering graduate students have received 2024 National Science Foundation (NSF) Graduate Research Fellowships for their promising quantum and metameterial antennas research.  

This year, the NSF awarded 27 students from CU Boulder , including 18 from the College of Engineering and Applied Science with the 2024 graduate research fellowship, a prestigious award recognizing students in a wide variety of STEM disciplines, exploring some of the most pressing issues of our time. 

Each recipient will receive three years of financial support, including an annual stipend of $37,000, as well as professional development and research opportunities.

Aliza Siddiqui headshot

Aliza Siddiqui

Advisor: Joshua Combes Lab: Combes Group

Bio: Siddiqui is a first-year PhD student with a research concentration in Quantum Engineering and Architecture. She graduated from Louisiana State University, home of the Tigers, with a degree in computer science.

My proposal involves creating a new benchmarking/testing framework for the next generation of error-corrected quantum computers. Given the noise of physical qubits, recent work has suggested combining the state of several physical qubits to create a logical qubit. I will collaborate with Dr. Josh Combes and Sandia National Labs for my PhD. Through this work, the quantum community will have a tool-kit that will help us determine how well a quantum computer performs, diagnose what and where the issues are and create solutions to realize full-scale, error-corrected quantum systems. 

Dylan Meyer headshot

Dylan Meyer

Advisor: Scott Diddams Lab: Frequency Comb & Quantum Metrology Lab

Bio: Meyer is a first-year PhD student in the FCQM group. He received his undergraduate degree from the University of Alabama in Electrical Engineering.

My research proposal is the development of highly stable and robust millimeter wave time and frequency (T&F) transfer, supporting T&F transfer between atomic clocks. T&F transfer is used to create clock networks that are essential for positioning and navigation, such as GPS and essential infrastructure like the Internet and power grid. These technologies support up to $1 billion dollars of trade and financial transactions a day. In addition, these clock networks are capable of fundamental science experiments capable of probing new and exciting questions related to physics and geodesy.

Alex Pham headshot

Advisors:  Cody Scarborough and Robert MacCurdy Lab Groups:  EMRG and MAClab

Bio:  Pham received their Bachelor's and Master's degrees in Electrical & Computer Engineering from the University of Oklahoma, where he conducted research on RF filters. After graduating, he worked for 3 years in industry as an RF engineer developing radar systems. He will begin his PhD this fall 2024. 

My research proposal is on the application of multi-material additive manufacturing techniques for metamaterial antennas. Metamaterial antennas are capable of more sophisticated capabilities and unique form-factors compared to conventional antennas. By leveraging multi-material additive manufacturing, there are more degrees-of-freedom for the shape and composition of the metamaterials. This research would enhance the design flexibility and capabilities of next-generation antennas to meet the growing performance demands of future wireless systems.

Related Articles

Bruno Armas and Jasleen Batra ECEE awards 2024

ECEE students earn college undergraduate awards 2024

capstone preview

Innovation unveiled: ECEE students to showcase design projects

Zoya Thumbnail

Zoya Popovic elected to the National Academy of Inventors

Apply   Visit   Give

Departments

  • Ann and H.J. Smead Aerospace Engineering Sciences
  • Chemical & Biological Engineering
  • Civil, Environmental & Architectural Engineering
  • Computer Science
  • Electrical, Computer & Energy Engineering
  • Paul M. Rady Mechanical Engineering
  • Applied Mathematics
  • Biomedical Engineering
  • Creative Technology & Design
  • Engineering Education
  • Engineering Management
  • Engineering Physics
  • Environmental Engineering
  • Integrated Design Engineering
  • Materials Science & Engineering

Affiliates & Partners

  • ATLAS Institute
  • BOLD Center
  • Colorado Mesa University
  • Colorado Space Grant Consortium
  • Discovery Learning
  • Engineering Honors
  • Engineering Leadership
  • Entrepreneurship
  • Herbst Program for Engineering, Ethics & Society
  • Integrated Teaching and Learning
  • Global Engineering
  • Mortenson Center for Global Engineering
  • National Center for Women & Information Technology
  • Western Colorado University

IMAGES

  1. Life of masters student in USA

    columbia university computer science phd students

  2. Department of Computer Science, Columbia University

    columbia university computer science phd students

  3. Student Life

    columbia university computer science phd students

  4. Columbia University Online PhD Computer Science

    columbia university computer science phd students

  5. Congratulations to the Class of 2020

    columbia university computer science phd students

  6. Computer Science PhD Pre-Submission Application Review (PAR) Program

    columbia university computer science phd students

VIDEO

  1. Fully Funded PhD Scholarship at the Institute of Science and Technology Austria (ISTA)

  2. Meet our Materials Science PhD Students: Marta

  3. Watch the Robot Iron

  4. Columbia Computer Science 여러분도 입학 가능합니다! #미국 #미국대입 #미국유학 #미국입시컨설팅 #미국대학컨설팅 #미국대학 #미국대학입시 #sat학원

  5. Meet our Materials Science PhD Students: Mengnan

  6. Coding in Learning and Life

COMMENTS

  1. Ph.D.

    Ph.D. The primary focus of the doctoral program is research, with the philosophy that students learn best by doing—beginning as apprentices and becoming junior colleagues working with faculty on scholarly research projects. The faculty in the department conduct research in all areas of computer science. The degree of Doctor of Philosophy ...

  2. Admissions

    The online application system is available on the SEAS Admissions website. The deadlines for the submission of your fully completed applicationare: Starting the PhD Program in the Spring semester: apply by November 15 of the previous year. Starting the PhD Program in the Fall semester: apply by December 15 of the previous year.

  3. graduate student

    He is a first-year PhD student who will work with professors Vishal Misra and Dan Rubenstein. Dozier has two degrees from MIT - a BS Electrical Engineering (2012) and an M.Eng Electrical Engineering (2014). He also earned an MS in computer science from the University of Southern California (USC) in 2020. Loqman Salamatian

  4. Department of Computer Science, Columbia University

    Computer Science Department 500 West 120 Street, Room 450 MC0401 New York, New York 10027 Main Office: +1-212-853-8400 Directions Map Directory

  5. Computer Science Degrees

    Current Graduate Students; Faculty & Staff; ... Department of Computer Science Columbia University 500 West 120 Street Room 450, Mail Code 0401 New York, NY 10027 Phone: 212-853-8400 Fax: 212-666-0140 Email - Undergrads: [email protected] Email - Grad students: [email protected]

  6. Computer Science < Columbia College

    The majors in the Department of Computer Science provide students with the appropriate computer science background necessary for graduate study or a professional career. Computers impact nearly all areas of human endeavor. ... Columbia University students may receive credit for only one of the following two courses: ...

  7. M.S.

    The Master of Science (MS) program is intended for people who wish to broaden and deepen their understanding of Computer Science. Columbia University and the New York City environment provide excellent career opportunities in multiple industries. The program provides a unique opportunity to develop leading-edge in-depth knowledge of specific ...

  8. CS Theory at Columbia

    CS Theory at Columbia. The Theory of Computation group is a part of the Department of Computer Science in the Columbia School of Engineering and Applied Sciences . We research the fundamental capabilities and limitations of efficient computation. In addition, we use computation as a lens to gain deeper insights into problems from the natural ...

  9. Ph.D. Specialization in Data Science

    Students should discuss this specialization option with their Ph.D. advisor and their department's director for graduate studies. The specialization consists of either five (5) courses from the lists below, or four (4) courses plus one (1) additional course approved by the curriculum committee. All courses must be taken for a letter grade and ...

  10. Application Requirements

    A student who holds an appropriate bachelor's degree in engineering may apply for admission to either the MS only or MS leading to PhD program. A student who has not already earned an MS degree and is looking to pursue a doctoral degree should apply for admission to the MS/PhD track program, with the exception of the Computer Science PhD program.

  11. Computer Science, Ph.D.

    The primary focus of the Computer Science program from the Columbia University is research, with the philosophy that students learn best by doing—beginning as apprentices and becoming junior colleagues working with faculty on scholarly research projects. Columbia University. Manhattan , New York , United States. Top 0.1% worldwide.

  12. Apply

    APPLY NOW! The MS Express application is a simplified process of applying to Columbia Engineering's Master of Science programs available to currently enrolled seniors at Columbia Engineering, Columbia College, Barnard, General Studies and young alumni (y oung alumni are students who graduated from Columbia Engineering, Columbia College, Barnard, or General Studies within the last five years).

  13. Graduate Funding Opportunities

    Opportunities for Doctoral Students. The graduate departments of Columbia Engineering offer a comprehensive program of funding for students admitted to Ph.D. or MS/Ph.D. track programs, including fellowships and appointments in teaching and research as appropriate to the program. Funding packages include an annual stipend provided by the ...

  14. Doctoral Programs

    The Doctor of Science in Engineering (EngScD) program is designed for motivated professionals who want to hone the skills necessary for a career in academic research. This program is particularly appropriate for working professionals who can earn a degree part-time. Learn more about the EngScD degree program. Hear about one doctoral candidate ...

  15. Computer Science Degrees

    Engineering Class Day and University Commencement; Graduate Students Resources. ... Department of Computer Science Columbia University 500 West 120 Street Room 450, Mail Code 0401 New York, NY 10027 Phone: 212-853-8400 Fax: 212-666-0140 Email - Undergrads: [email protected]

  16. Computer Science

    Prior knowledge of Python is recommended. Provides a broad understanding of the basic techniques for building intelligent computer systems. Topics include state-space problem representations, problem reduction and and-or graphs, game playing and heuristic search, predicate calculus, and resolution theorem proving, AI systems and languages for knowledge representation, machine learning and ...

  17. Department of Statistics

    Our students have access to high-speed computer clusters for their ambitious, computationally demanding research. ... Please apply by completing the Application for Admission to the Columbia University Graduate School of Arts & Sciences. Timeline: P.hD students begin the program in September only. ... The Columbia Graduate School of Arts and ...

  18. Columbia University

    MA Mentored Research is a mentored on-campus learning and research program providing our PhD-oriented MA students with research experience. It allows our students to gain experience and skills to grow as researchers. Topics span various areas, ranging from machine learning and data science to specific problems in financial and medical research.

  19. Scholarships, Fellowships, Professorships, Awards and Prizes

    The Wei Family Private Foundation is a 501 (c) (3) nonprofit organization established to honor the memory of Dr. Chung Kwai Lui Wei and Mr. Hsin Hsu Wei. The purpose of the foundation is to award scholarship grants to students of Chinese heritage with high academic credentials who are pursuing a graduate degree in Electrical Engineering.

  20. A Student's Journey on the Bridge to PhD Program

    Columbia Engineering's Bridge to PhD Program features intensive research, academic, and mentoring experiences for post-baccalaureates seeking to strengthen their applications for graduate school and to prepare for the transition to a PhD student. Recent alumni have gone on to PhD programs at Columbia University, the University of Chicago, the ...

  21. Columbia University Fully Funded PhD Program in Computer Science

    Columbia University located in New York City offers a fully funded PhD program in Computer Science. Students at Columbia are supported through research assistantships which provide full tuition waivers and a monthly stipend. Students learn through first-hand experience working with their professors and mentors. As the university is located in ...

  22. Current Research Opportunities

    3) Developing gel polymer electrolytes for anode-free lithium batteries. The two master students will assist a postdoc working on this project and carry out research activities such as preparing electrolyte, cell testing, and data analysis. The two master students has started to work in my lab since Jan 1, 2024.

  23. PhD students earn major NSF graduate research fellowships

    Bio: Siddiqui is a first-year PhD student with a research concentration in Quantum Engineering and Architecture. She graduated from Louisiana State University, home of the Tigers, with a degree in computer science. My proposal involves creating a new benchmarking/testing framework for the next generation of error-corrected quantum computers.

  24. An Opportunity to Take a Deep Dive Into the Field of Technology

    By Abhijit Rajkumar Patharkar, candidate for an M.S. in Technology Management. Every semester, the Columbia University School of Professional Studies M.S. in Technology Management program hosts a four-day residency on Columbia's New York City Morningside campus that gives students in the executive cohort the opportunity to come together, further relationships developed in the program, and ...