computes science - harvard

Upload: victor-montes-de-oca

Post on 04-Jun-2018

264 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/13/2019 Computes Science - Harvard

    1/10

    THE UNOFFICIAL GUIDE TO

    DESIGNED BY CS50

    Havent taken CS50 yet?

    Visitcs50.net for FAQs.

    COMPUTER

    SCIENCE

    HARVARD

    WWW.

    CS.H

    ARVARD

    .EDU

    VERSION 7

  • 8/13/2019 Computes Science - Harvard

    2/10

    What is CS?We like to say that CS teaches you how to thinkmore methodically and how to solve problems moreeffectively. As such, its lessons are applicable wellbeyond the boundaries o CS itsel.

    But CS is also, more generally, the study o inormation.

    How do you represent it? With what methods (akaalgorithms) can you process it?

    Perhaps the most liberal answer, though, is that CS hasno exclusive domain o its own, and that its importancecomes rom the problems to which it is applied. Andtherein lies the excitement. CS empowers you withtools and ideas that can be applied to practically anydomain o interest to you, both in college and beyond.

    What is CS not?Contrary to popular belie, CS is not really aboutprogramming, even though you do learn how toprogram. Programming languages are tools thatComputer Scientists use or create in order to solveproblems o interest to them.

    How can I get a secondary in CS?ake any our courses numbered 50 or higher. See page9 or popular study cards. See Computer Science under

    Secondary Fields in the Handbook for Students.

    How do I concentrate in CS?ake at least two o CS50, CS51, and CS61; take CS121and another theory course; take our technical electives

    and take Math 21a and Math 21b. Plus take any oMath 1a, Math 1b, and CS20 as needed. See page 8 orpopular study cards. See Computer Science under Fields

    o Concentration in the Handbook for Students.

    Can I change my concentration to CS?Yes, so long as you still have time to satisy the requirementsEven David J. Malan 99, who now teaches CS50, didntake his first CS course until his sophomore year, when he

    switched rom Government to CS.

    Does CS require a thesis?No, not or non-Honors or Honors, but or High Honors andHighest Honors, its expected. See Computer Science under

    Fields o Concentrationin the Handbook for Students.

    Is a thesis just a big program?No, a thesis is a research paper. You might end up writingprograms in order to evaluate your ideas, but those programsare ordinarily means to an end, not an end in themselvesVisit cs.harvard.edu/thesisor examples.

    Photograph by Eliza Grinnel

    UNOFFICIAL GUIDE TOCS @ HARVARD2

  • 8/13/2019 Computes Science - Harvard

    3/10

    UNOFFICIAL GUIDE TOCS @ HARVARD 3

    How do I graduate with Honors in CS?

    ake six technical electives instead o our and have aconcentration GPA in the top hal o your class. SeeComputer Science under Fields o Concentration inthe Handbook for Students.

    How do I graduate with High Honors in CS?High Honors are decided by aculty vote. You mustordinarily write an excellent thesis to be considered.See Computer Science under Fields o Concentrationin the Handbook for Students.

    How do I graduate with Highest Honors in CS?

    Highest Honors are decided by aculty vote. You mustordinarily write an outstanding thesis to be considered.See Computer Science under Fields o Concentration

    in the Handbook for Students.

    Do any CS courses count for Gen Ed?

    Yes! o satisy Empirical & Mathematical Reasoning,take CS1, CS20, CS50, or CS171. (Note that CS1does not count toward a concentration or secondaryin CS.) o satisy Culture & Belie, take CS105.

    Should I study CS even if I dont want to be

    a programmer?

    Yes! CS concentrators head off in all sorts o directions

    afer graduation. See Figure 1 or titles that alumnisince 1984 now hold. See Figure 2or fields in whichalumni since 1984 can now be ound.

    Should I activate Advanced Standing and

    get a fourth-year masters degree in CS?

    Maybe! I you are eligible or Advanced Standing andthink you could handle eight (mostly) 200-level CScourses, its a great opportunity. Your bachelors degreedoesnt even need to be in CS, so long as you can stillsatisy the prerequisites or the 200-level courses. SeeOther Academic Opportunitiesin the Handbook forStudents.

    Can I do a joint concentration between CS

    and another field?

    Yes, but you probably shouldnt. Joint concentrationsare really or students who want to write a thesis onsome research problem in the intersection o two fieldsI you simply want to study both fields, its generally

    best to get a secondary or simply take courses in CS orthe other field.

    Is CS part of Mind, Brain, and Behavior?

    Yes! See Computer Science under Fields oConcentration in the Handbook for Students.

    Does a grade of SAT in CS50 count for

    concentration credit?

    I you intend to concentrate in CS, you should takeCS50 or a letter grade. But should you decide toconcentrate in CS only afer taking CS50, a SA inCS50 would count or concentration credit.

    Figure 1: itles that alumni since 1984 now hold.

  • 8/13/2019 Computes Science - Harvard

    4/10

    Should I concentrate or minor in CS even if

    I dont want to work in tech?Yes! CS empowers you to solve problems in all sortso domains. Heres where alumni since 1984 can be

    ound:

    Figure 2: Fields in which alumni since 1984 can now be ound.

    033 Asset Management 2Wire Inc. AAA NorthernCaliornia, Nevada, Utah Ab Initio SofwareCorporation Acccenture Accel Partners AccentureAccess Global Partners Action Verb LLC ActiveEndpoints, Inc. Acumen Fund AdNectar AdobeSystems Aegon Agile Communications, Inc Agilexechnologies AIG Akamai echnologies AllianceGrowth Equities Alverno College Amazon.com Amdocs American Express Andera, Inc. Angelo,Gordon Apple, Inc. AQR Capital Management Aravo Solutions AristoDigital Asprova Corporation A Kearney Inc Athenahealth, Inc. Authoria, Inc. Autodesk Inc Autonomy Bain Capital BainwoodHuang & Associates Barclays Capital BBNechnologies Beaver Lakeront Resort, Inc. BeeNorth, LLC Bellevue Hospital Center Bessemer

    Venture Partners Big ent Design BinghamMcCutchen Blackhorse Asset Management Bloomberg, LP Blue Cross Blue Shield o NorthCarolina BlueCrest Capital Management Ltd BoozAllen Hamilton Boston Consulting Group BostonHarbor Ship Yard and Marina #F3 Boston UniversityBriar Rose LLC Bridgewater Associates BrontoSofware, Inc Building Educated Leaders or LieCA, Inc. Caliornia State University - HaywardCaltech Cambridge Semantics Cardozo School oLaw Carnegie Mellon University Children's Hospita Ciplex.com Citigroup ClearNow, Inc. CleverMachine Cliff Island Sofware CNA Insurance CoBuechnology Code Red Cognex Corp Coloradoechnical University - Kansas City ColumbiaPresbyterian Hospital Columbia University/HarlemHospital Center CommonMind LLC ComputationaModels Inc Computer Partners Inc CongregationB'nai orah Contra Costa Community CollegeDistrict Council on Spiritual Practices Credit SuisseCredit Suisse First Boston Crossech Group CB/McGraw-Hill Cuil D. E. Shaw & Co. Daiwa SecuritiesAmerica Dangermarc Studios Daniel's Jewelers

    UNOFFICIAL GUIDE TOCS @ HARVARD4

  • 8/13/2019 Computes Science - Harvard

    5/10

    UNOFFICIAL GUIDE TOCS @ HARVARD 5

    Danoo, Inc. Dartmouth Medical School DataDeletives Davis Polk & Wardwell DE Shaw & Co. Deloitte & ouche Department o Justice DeSalesUniversity Deutsche Bank Diamond Management &echnology Consultants Dimagi Inc. Dixie StateCollege DOE/National Nuclear Security Administration

    DoubleClick Inc. DoubleDyno, Inc. Dowling &Partners Securities, LLC Draper Fisher Jurvetson Eastport Analytics Inc Eastwan Kodak Co Effici LLC Electroactive Inc Ellington Management Group EMC Corporation EMC*2 Corp. Endeca echnologies Entelos, Inc. etrials Worldwide, Inc Evans Griffiths& Hart, Inc Facebook FAS Computer Services FeithSystems & Sofware, Inc. Feldman Gale, P.A. FidelityInvestments First Potomac Realty rust Fish &Richardson P. C. Five Oaks echnologies, Inc. Flixster,Inc. Fluidnet Flybridge Capital Partners Fore

    Research and Management Forest View ElementarySchool Franklin W Olin College o Engineering FredHutchinson Cancer Research Center rog design Gao

    Hua Securities Limited Gartner, Inc Genentech, Inc. Goldman Sachs Google Goose Networks, Inc.Greater Greater Washington GreenRoad echnologiesInc Greenwich Capital Guardian echnologiesInternational, Inc. Guidewire Sofware HarvardBusiness School Harvard College Harvard University

    Hasbro, Inc. Highland Financial Holdings GroupHLCSof Holland & Davis LLC Horizon AssetInternational Limited Howard Rice NemerovskCanady Falk & Rabkin Hyperion Solutions Idiomechnologies IL2000 iLike Imagen Incorporated IMakeNews, Inc. Immunity, Inc. Index VenturesIndustry Aspect LLC Inormation Builders IncIngeeni Studios, Inc. Integrative Bodywork InteCorporation Intel Semiconductor Ltd InteractiveFactory InteraceTis International Air ransportAssociation International Business Machines Intuit

    ISI iSkoot, Inc. JP Morgan J2 Interactive LLC Jamison Group Janus Capital Group JefferiesInternational Limited Jones Day Joy Health &

    Photograph by Dan Armendariz

  • 8/13/2019 Computes Science - Harvard

    6/10

  • 8/13/2019 Computes Science - Harvard

    7/10

    UNOFFICIAL GUIDE TOCS @ HARVARD 7

    Can I do research in CS?

    Yes! Many CS courses offer opportunities or research,particularly 200-level courses. And you can takeCS91r to work one-on-one with aculty. Students andaculty do research in all sorts o areas, including, butnot limited to:

    Artificial Intelligence and Computational Linguistics Computation and Economics

    Graphics, Visualization, and Imaging Human-Computer Interaction Inormation, Systems, and Networks Intelligent Systems and Computer Vision Languages, Compilers, and Operating Systems Multi-Agent Systems Privacy and Security Teory o Computation

    Will everyone in CS know more than me?

    No! Contrary to popular belie, not every ComputerScientist has been programming since childhood! Inact, 73% o the students who took CS50 in Fall 2012 hadnever taken a CS course beore. Only 20% had takenone, and only 7% had taken two or more, per Figure 3.

    Photograph by Titus Jahng

    Figure 3: CS50 is most students very first course in CS. 73% othe students who took CS50 in Fall 2012 had never taken a CScourse beore; 20% had taken one; and 7% had taken two or more

    None73%

    One20%

    wo ormore 7%

  • 8/13/2019 Computes Science - Harvard

    8/10

    UNOFFICIAL GUIDE TOCS @ HARVARD8

    Popular Study Cards for

    Concentrators

    Plenty o other combinations are possible.Graduate-level (200-level) courses are also allowed!

    For late converts to CS

    Math 1a: Introduction to Calculus Math 1b: Calculus, Series, and Differential Equations AM21b: Mathematical Methods in the Sciences CS20: Discrete Mathematics or Computer Science CS50: Introduction to Computer Science I CS61: Systems Programming and Machine

    Organization CS109: Data Science CS121: Introduction to Formal Systems and

    Computation CS124: Data Structures and Algorithms CS141: Computing Hardware CS171: Visualization CS179: Design o Usable Interactive Systems

    For those without prior college-level math,interested in human-computer interaction

    Math 1a: Introduction to Calculus Math 1b: Calculus, Series, and Differential Equations AM21a: Mathematical Methods in the Sciences AM21b: Mathematical Methods in the Sciences CS20: Discrete Mathematics or Computer Science CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS61: Systems Programming and Machine

    Organization CS105: Privacy and echnology CS121: Introduction to Formal Systems and

    Computation CS124: Data Structures and Algorithms CS171: Visualization CS179: Design o Usable Interactive Systems CS182: Intelligent Machines: Reasoning, Actions, and

    Plans

    For those with stronger math backgrounds,interested in hard-core systems

    AM21a: Mathematical Methods in the Sciences AM21b: Mathematical Methods in the Sciences CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II

    CS61: Systems Programming and Machine Organization CS121: Introduction to Formal Systems and

    Computation CS124: Data Structures and Algorithms CS127: Introduction to Cryptography CS143: Computer Networks CS144r: Network Design Projects CS152: Programming Languages CS161: Operating Systems CS165: Inormation Management

    For budding theorists writing theses Math 25a: Honors Linear Algebra and Real Analysis I Math 25b: Honors Linear Algebra and Real Analysis II AM106: Applied Algebra AM107: Graph Teory and Combinatorics CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS91r: Supervised Reading and Research CS121: Introduction to Formal Systems and

    Computation CS124: Data Structures and Algorithms

    CS127: Introduction to Cryptography CS141: Computing Hardware CS152: Programming Languages CS175: Computer Graphics

    For those interested in machine intelligence

    AM21a: Mathematical Methods in the Sciences AM21b: Mathematical Methods in the Sciences CS20: Discrete Mathematics or Computer Science CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II

    CS61: Systems Programming and Machine Organization CS121: Introduction to Formal Systems andComputation

    CS124: Data Structures and Algorithms CS141: Computing Hardware CS146: Computer Architecture CS181: Intelligent Machines: Perception, Learning, and

    Uncertainty CS187: Computational Linguistics CS189r: Autonomous Multi-Robot Systems

  • 8/13/2019 Computes Science - Harvard

    9/10

    Popular Study Cards for

    Secondaries

    Plenty o other combinations are possible.Graduate-level (200-level) courses are also allowed!

    For those less comortable

    CS50: Introduction to Computer Science I CS105: Privacy and echnology CS171: Visualization CS179: Design o Usable Interactive Systems

    For those more comortable

    CS51: Introduction to Computer Science II CS61: Systems Programming and Machine Organization CS121: Introduction to Formal Systems and Computation

    CS161: Operating Systems

    For those interested in data

    CS50: Introduction to Computer Science I CS109: Data Science CS165: Inormation Management CS171: Visualization

    For those interested in economics

    CS51: Introduction to Computer Science II CS121: Introduction to Formal Systems and Computation

    CS182: Intelligent Machines: Reasoning, Actions, andPlans

    CS186: Economics and Computation

    For those interested in efficiency

    CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS121: Introduction to Formal Systems and Computation CS124: Data Structures and Algorithms

    For those interested in graphics

    CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS171: Visualization CS175: Computer Graphics

    For those interested in hardware

    CS50: Introduction to Computer Science I CS61: Systems Programming and Machine Organization CS141: Computing Hardware CS148: Design o VLSI Circuits and Systems

    For those interested in lie sciences

    CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS124: Data Structures and Algorithms CS171: Visualization

    For those interested in business CS50: Introduction to Computer Science I CS105: Privacy and echnology CS124: Data Structures and Algorithms CS165: Inormation Management

    For those interested in math

    CS51: Introduction to Computer Science II CS121: Introduction to Formal Systems and Computation CS124: Data Structures and Algorithms CS127: Introduction to Cryptography

    For those interested in networks

    CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS143: Computer Networks CS144r: Networks Design Projects

    For those interested in programming languages

    CS51: Introduction to Computer Science II CS61: Systems Programming and Machine Organization CS152: Programming Languages

    CS153: Compilers

    For those interested in robotics

    CS51: Introduction to Computer Science II CS121: Introduction to Formal Systems and Computation CS182: Intelligent Machines: Reasoning, Actions, and

    Plans CS189r: Autonomous Multi-Robot Systems

    For those interested in speech recognition

    CS50: Introduction to Computer Science I

    CS51: Introduction to Computer Science II CS182: Intelligent Machines: Reasoning, Actions, and

    Plans CS187: Computational Linguistics

    For those interested in sofware development

    CS50: Introduction to Computer Science I CS51: Introduction to Computer Science II CS124: Data Structures and Algorithms CS164: Sofware Engineering

    UNOFFICIAL GUIDE TOCS @ HARVARD 9

  • 8/13/2019 Computes Science - Harvard

    10/10

    Life after 50You can head off in all sorts o directions afer CS50, but here are some popular routes. See Computer Scienceinthe Courses of Instructionor prerequisites.

    CS50Introduction to

    Computer Science I

    CS171

    Visualization

    CS20Discrete Mathematics

    or Computer Science

    CS51

    Introduction toComputer Science II

    CS181

    Intelligent Machines:Perception, Learning,

    and Uncertainty

    CS152

    ProgrammingLanguages

    CS175

    Computer Graphics

    CS165

    InormationManagement

    CS143Computer Networks

    CS187

    ComputationalLinguistics

    CS182

    Intelligent Machines:Reasoning, Actions,

    and Plans

    CS153

    Compilers

    CS161

    Operating Systems

    CS124Data Structuresand Algorithms

    CS141

    ComputingHardware

    CS148Design o VLSI

    Circuits and Systems

    CS179Design o Usable

    Interactive Systems

    CS61

    System Programming &Machine Organization

    FALL

    SPRING

    CS121Introduction to FormalSystems & Computation

    CS189r

    AutonomousMulti-Robot Systems

    UNOFFICIAL GUIDE TOCS @ HARVARD10

    CS164

    SofwareEngineering

    CS146

    ComputerArchitecture

    CS127Introduction toCryptography

    CS109

    DataScience

    CS144r

    NetworksDesign Projects

    CS105Privacy andechnology

    CS186

    Economics andComputation