QuickGuide fr CC, GS, and Barnard CS Students (New Requirements Beginning Fall 2013) This QuickGuide is fr Clumbia Cllege, General Studies, and Barnard students thinking f majring r cncentrating in Cmputer Science. It explains hw the prgram is structured, what curses t take and when. The Cmputer Science Majr at Clumbia Cllege, General Studies, and Barnard Cmputer Science majrs study an integrated curriculum cnsisting f a brad cre f 7 fundatinal curses, and an upper level track f 5 r 6 advanced curses chsen frm ne f six elective tracks fr a ttal f 40 45 pints (22 24 pints fr CS cre, 3 pints Calculus II r III, and 15 18 pints fr track electives). Upper level students in Cmputer Science may assist faculty members in research prjects. Graduates f the Cmputer Science prgram can step int career psitins in industry r gvernment, r cntinue their educatin in graduate r prfessinal degree prgrams in a wide range f disciplines. Prerequisites Calculus II r Calculus III is required fr the majr. Take Calculus II if yu plan n chsing Prb/Stats r Scientific Cmputatin t fulfill the CS cre requirement 7. Take Calculus III if yu plan n chsing Cmputatinal Linear Algebra t fulfill the requirement. Getting started Take the intrductry sequence f curses in Cmputer Science (W1004/W1007, W3134/W3137, W3157, and W3203) in yur first tw years. This will enable yu t cmplete mst f the CS cre and t start yur upper level CS track during yur junir year, which will prvide yu with a brad chice f electives in yur chsen track. First take Intr t Cmputer Science and Prgramming in Java (W1004) r Hnrs Intr t Cmputer Science (W1007) in yur freshman year if pssible. This curse intrduces yu t basic cmputer science cncepts and prblem slving techniques using Java. If yu tk AP CS in Java in high schl and gt a 4 r 5, then yu can g directly int Hnrs Intr t CS (W1007). If yu have already dne extensive prgramming but didn't take AP CS in Java, talk t the W1007 instructr t see if yu need t take W1004. Then take Advanced Prgramming (W3157) and Data Structures (W3134) r Hnrs Data Structures and Algrithms (W3137). Advanced Prgramming teaches C, C++, Internet prgramming, and Unix utilities. It assumes students already have a prgramming backgrund in Java. It is recmmended that yu take Data Structures befre taking Advanced Prgramming. Take Discrete Math (W3203) cncurrently with Hnrs Intr t CS (W1007) r with Data Structures and Algrithms (COMS W3137). CS cre curriculum fr Clumbia Cllege, General Studies, and Barnard The cre f the Cmputer Science curriculum fr CS majrs is built with the fllwing seven curses. These curses prvide the fundatin fr the tracks and the advanced curses. Thugh nt required, Intr t Cmp fr Eng/App (ENGI E1006) is als recmmended fr BA majrs.
1. Intr t CS and Prgramming in Java (COMS W1004) r Hnrs Intr t CS (COMS W1007) 2. Data Structures (COMS W3134) r Hnrs Data Structures and Algrithms (COMS W3137) 3. Advanced Prgramming (COMS W3157) 4. Discrete Mathematics (COMS W3203) 5. Cmputer Science Thery (COMS W3261) 6. Fundamentals f Cmputer Systems (CSEE W3827) 7. 1 curse frm the fllwing: Linear Algebra (COMS W3251, MATH 2010, MATH 2020, APMA 3101, APMA 2101) r Prb/Stats (STAT 4001, frmerly SIEO W4150) Tracks The upper level curriculum in Cmputer Science is rganized int tracks f electives which allw yu t select ne f five majr areas f Cmputer Science fr study in greater depth. A track cnsists f 15 18 pints encmpassing tw r three required curses, ne breadth curse, and ne r tw elective curses fr a ttal f 5 6 curses. In yur secnd year yu might want t discuss which track yu shuld take with yur advisr. Fundatins f Cmputer Science Track This track is fr students interested in algrithms, cmputatinal cmplexity, and ther areas f theretical cmputer science. Tw required curses CSOR W4231 Analysis f Algrithms COMS W4236 Intrductin t Cmputatinal Cmplexity One breadth curse Any 3 pint COMS 3000 r 4000 level curse except thse curses in the CS cre r in the required r elective curses fr this track Tw elective curses frm this list COMS W4203 Graph Thery COMS W4252 Intrductin t Cmputatinal Learning Thery COMS W4261 Intrductin t Cryptgraphy COMS E6232 Analysis f Algrithms II COMS E6253 Advanced Tpics in Cmputatinal Learning Thery COMS E6261 Advanced Cryptgraphy Math V3020 Number Thery and Cryptgraphy Math V3025 Making, Breaking Cdes Math W4032 Furier Analysis Math W4041 Intrductin t Mdern Algebra I Math W4042 Intrductin t Mdern Algebra II Math W4061 Intrductin t Mdern Analysis 1 Math W4155 Prbability Thery Math G6238x. Enumerative Cmbinatrics APMA 4300 Numerical Methds CSPH G4801 Mathematical Lgic 1 CSPH G4802 Mathematical Lgic 11: incmpleteness PHIL G4431 Set Thery IEOR E4407 Game Theretic Mdels f Operatin IEOR E6400 Scheduling: Deterministic Mdels
IEOR E6603 Cmbinatrial Optimizatin IEOR E6606 Advanced Tpics in Netwrk Flws IEOR E6608 Integer Prgramming IEOR E6610 Apprximatin Algrithms IEOR E6613 Optimizatin I (4.5 pints) IEOR E6614 Optimizatin II (4.5 pints) IEOR E6711 Stchastic Mdels I IEOR E6712 Stchastic Mdels II EEORE6616 Cnvex Optimizatin ELEN E6717 Infrmatin Thery ELEN E6718 Algebraic Cding Thery ELEN E6970 Resurce Allcatin and Netwrking Games COMS W3902 Undergraduate Thesis (advisr apprved) COMS W3998 Undergraduate Prjects in Cmputer Science (advisr apprved) COMS W4901 Prjects in Cmputer Science (advisr apprved) COMS W4995 Special Tpics in Cmputer Science, I (advisr apprved) COMS E6998 Tpics in Cmputer Science (advisr apprved) Nte: Students wh declared their Cmputer Science majr prir t Fall 2016 may als cunt COMS 4241, COMS 4205, COMS 4281, COMS 4444, COMS 4771, and COMS 4772 as elective curses. Sftware Systems Track The sftware systems track is fr students interested in the implementatin f sftware systems. Three required curses COMS W4115 Prgramming Languages and Translatrs COMS W4118 Operating Systems CSEE W4119 Cmputer Netwrks One breadth curse Any 3 pint COMS 3000 r 4000 level curse except thse curses in the CS cre r in the required r elective curses fr this track One elective curse frm this list Any COMS W41xx curse Any COMS W48xx curse COMS W4444 Prgramming and Prblem Slving COMS W3902 Undergraduate thesis (with advisr apprval) COMS W3998 Undergraduate prjects in cmputer science r COMS W4901 Prjects in cmputer science (with advisr apprval) COMS W4995 W4996 Special Tpics in Cmputer Science, I and II Any COMS E61xx curse with advisr apprval Any COMS E68xx curse with advisr apprval Intelligent Systems Track This track is fr students interested in machine learning, rbts, and systems capable f exhibiting ''human like" intelligence.
Any tw required curses frm this list COMS W4701 Artificial Intelligence COMS W4705 Natural Language Prcessing COMS W4706 Spken Language Prcessing COMS W4731 Cmputer Visin COMS W4733 Cmputatinal Aspects f Rbtics COMS W4771 Machine Learning One breadth curse Any 3 pint COMS 3000 r 4000 level curse except thse curses in the CS cre r in the required r elective curses fr this track Tw elective curse frm this list COMS W3902 Undergraduate thesis (with advisr apprval) COMS W3998 Undergraduate prjects in cmputer science (with advisr apprval) COMS W4165 Cmputatinal Techniques in Pixel Prcessing COMS W4252 Intrductin t Cmputatinal Learning Thery COMS W47xx (any curse, if nt used as a required curse) COMS W4901 Prjects in cmputer science (with advisr apprval) COMS W4995 Special Tpics in Cmputer Science I (with advisr apprval) COMS W4996 Special Tpics in Cmputer Science II (with advisr apprval) COMS E67xx (any curse) COMS E6998 Tpics in cmputer science I (with advisr apprval) COMS E6999 Tpics in cmputer science II (with advisr apprval) Applicatins Track This track is fr students interested in interactive multimedia applicatins fr the Internet and wireless netwrks Tw required curses COMS W4115 Prgramming Languages and Translatrs COMS W4170 User Interface Design One breadth curse Any 3 pint COMS 3000 r 4000 level curse except thse curses in the CS cre r in the required r elective curses fr this track Tw elective curses frm this list Any COMS W41xx curse Any COMS W47xx curse COMS W3902 Undergraduate thesis (with advisr apprval) COMS W3998 Undergraduate prjects in cmputer science r COMS W4901 Prjects in cmputer science (with advisr apprval) COMS W4995 W4996 Special Tpics in Cmputer Science, I and II Any COMS E69xx curse with advisr apprval Visin, Graphics, Interactin, and Rbtics Track This track is fr students interested in visin, graphics, and advanced frms f human cmputer interactin Any tw curses frm COMS W4160 Cmputer Graphics COMS W4731 Cmputer Visin COMS W4167 Cmputer Animatin
One breadth curse Any 3 pint COMS 3000 r 4000 level curse except thse curses in the CS cre r in the required r elective curses fr this track Tw elective curses frm this list COMS W4162 Advanced Cmputer Graphics COMS W4165 Cmputatinal Techniques in Pixel Prcessing COMS W4167 Cmputer Animatin COMS W4170 User Interface Design COMS W4172 3D User Interfaces COMS W4701 Artificial Intelligence COMS W4733 Cmputatinal Aspects f Rbtics COMS W4735 Visual Interfaces t Cmputers COMS W4771 Machine Learning COMS W4995 Special Tpics in Cmputer Science I (Vide Game Technlgy and Design) COMS W3902 Undergraduate thesis (with advisr apprval) COMS W3998 Undergraduate prjects in cmputer science r COMS W4901 Prjects in cmputer science (with advisr apprval) COMS W4995 W4996 Special prjects in cmputer science, I and II Any COMS E69xx curse with advisr apprval Cmbinatin Track This track is fr students interested in cmbining Cmputer Science with anther discipline. A selectin f six related curses is required: three 3000 r 4000 level Cmputer Science curses and three 3000 r 4000 level curses frm anther discipline. This track shuld be selected by the end f the first semester f the junir year and the curses shuld be planned with yur advisr. The ther discipline can be any ne in the arts, humanities, mathematics, natural sciences, r scial sciences. The required track curses shuld be taken as early as pssible starting in the junir year. In rder t prvide students with as large a variety f elective curses as pssible, sme electives are nly ffered every ther year. Therefre, a student wh begins taking track curses as a first semester junir has a full range f chices. If a student delays taking track curses until the secnd semester f the junir year, the range f chices is narrwed. Waiting t take track curses until the first semester f the senir year will cnceivably delay graduatin. Scheduling yur CS curses The list belw is a suggested path t a BA majr. It's nt cast in stne and taking curses earlier than shwn ffers many advantages. The prgram can be entered ne semester later, but entering the prgram a year r mre later may freclse sme ptins. 0. ENGI E1006 is recmmended but nt required 1. In the first year: COMS W1004 r COMS W1007 2. In the sphmre year: COMS W3157, COMS W3203, and COMS W3134 r COMS W3137 3. In the junir and senir year: the remaining required curses Fr a Cncentratin in Cmputer Science The Cmputer Science Department ffers a cncentratin in Cmputer Science fr Clumbia Cllege cnsisting f the fllwing seven curses with a ttal f 23 pints.
1. Intr t CS and Prgramming in Java (COMS W1004) r Hnrs Intr t CS (COMS W1007) 2. Data Structures (COMS W3134) r Hnrs Data Structures and Algrithms (COMS W3137) 3. Advanced Prgramming (COMS W3157) 4. Discrete Mathematics (COMS W3203) 5. Cmputer Science Thery (COMS W3261) 6. Fundamentals f Cmputer Systems (CSEE W3827) r a 4000 level COMS technical elective (3 pints) 7. 1 curse frm the fllwing: Cmputatinal Linear Algebra (COMS W3251), Prb/Stats (STAT 4001, frmerly SIEO W4150), r Scientific Cmputatin (COMS W3210) Faculty advisr Every Cmputer Science majr is assigned a faculty advisr wh is a leading cmputer science researcher. Yu shuld meet with yur advisr at least nce a semester t discuss yur prgress in the Cmputer Science prgram. Questins? Cntact the curse instructr if yu have questins abut a given curse. If yu have any questins, please send an email t advising@cs.clumbia.edu.