QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. SIGCSE 2007 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Covington, KY Schools “…But What Do the Top-Rated 2007-03-09 @ 10:30 EST Do?” Jeff Forbes Duke Univ A Survey of Introductory Computer Science Curricula Dan Garcia UC Berkeley www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Motivation What do top PhDgranting schools do in their intro CS curricula? What courses offered? Who teaches them? What is taught? How are they run? Who are students? What is the innovation? Who are “sep at birth”? We had questions! SIGCSE 2007 Computer science A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 2/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Survey We surveyed top 32 schools 33 Qs in 7 categories: Institution Staff Demographics Content Delivery Style Meta Method SIGCSE 2007 Swept web sites for info Emailed text questions to faculty at each school Built SurveyMonkey form Phone calls Email follow-ups A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 3/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. WR”) 1. 5. 7. 8. 9. 11. 13. 15. SIGCSE 2007 CMU MIT Stanford UC Berkeley Cornell UI Urbana-Champaign U Washington Princeton UT Austin U Wisconsin-Madison Cal Tech Georgia Tech UC San Diego U Maryland - College Park Harvard UCLA 15. 18. 22. 25. 28. 29. U Michigan-Ann Arbor Columbia Purdue - West Lafayette U Penn Yale Brown Rice UNC - Chapel Hill Duke U Mass - Amherst USC Johns Hopkins NYU Rutgers - New Brunswick UC Irvine Virginia A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 4/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Disclaimers Why these schools? These were NOT necessarily the best undergraduate programs by any means We’re from big schools, and we wanted to find out what our “cousins” were doing Our results may be buggy! SIGCSE 2007 We often have results from only one person, with one perspective on the whole! Other instructors may do things differently A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 5/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Gathering Data Wasn’t Easy! MIT Yale “What you're looking to “We have no interest in do is indeed potentially completing your survey, very worthwhile. which would take a great deal of effort for very little However, after apparent gain.” discussing your request, including with the People answered the department heads, we survey with varying degree have unfortunately had of detail and completeness. to conclude that we're Sometimes responses not in a position to were opinions of one respond at this time.” person, other times of several faculty. SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 6/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Thanks so much to… Jeremy Huddleston UC Berkeley: Mike Clancy & Brian Harvey CMU: Rich Pattis, Tom Cortina & Don Slater Columbia: Adam Cannon Georgia Tech: Mark Guzdial Maryland: Bill Gasarch & Jeff Foster NYU: Victor Shoup Rice: John Greiner Rutgers: Rich Martin, Sesh Venugopal & Don Smith Stanford: Nick Parlante & Julie Zelenski UC Irvine: David Kay UCLA: David Smallberg UIUC: Sam Kamin & Cinda Heeren USC: Claire Bono UW: Stuart Reges Wisconsin: Jim Skrentny & Perry Kivolowitz SIGCSE 2007 Samantha Jones, Brandon Johnson, Beth Trushkowsky Duke: Owen Astrachan & Camelia Eaves Brown: Chad Jenkins & Tom Doeppner Caltech: Leonard Schulman Cornell: David Gries Harvard: Matt Welsh & Mike Smith Johns Hopkins: Rao Kosaraju, Joanne Houlahan Princeton: Kevin Wayne Purdue: Jeff Vitter & Buster Dunsmore UCSD: Beth Simon & Paul Kube UMass: Andrew McCallum UNC: Ketan Mayer-Patel UPenn: C.J. Taylor UT Austin: Mike Dahlin & Roger Priebe A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 7/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Institution Quarters vs. semesters? Offerings? Flexibility? Types? SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 8/41 Is the institution on quarters or semesters? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Some schools on the west coast are on quarters Opportunities for more varied classes and tracks? Type of term 6 Comparisons between courses can be tricky Quarter Semester 26 SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 9/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Course offerings Is a literacy course available for students not interested in programming? Models Yes 21 No 7 Fluency in Information Technology Great Ideas in Computer Science UPenn: Networked Nature of Society UNC: Power Tools for the Mind SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 10/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What is the flexibility in the lower-division sequence? Georgia Tech’s Threads curriculum provides a great deal of flexibility Multiple introductions to CS Brown (Java vs. Scheme/ML-> Java) Columbia (C/Java/Matlab) UCI: multiple majors and 1 7 6 sequences Inflexible curricula SIGCSE 2007 Do not accept AP Required to take CS courses and prereqs in first semester 10 schools noted that courses are part of a common first-year Enormous Moderate Some None 14 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 11/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What types? Ethics 2 schools had required Ethics courses Survey course available? Yes 4 No 15 Non-Majors Only 10 Surveys UCLA & Harvard have survey as CS 1 Irvine & UCSD have courses where profs talk about their work How important is ethics? Essential (2) Important (2) None (11) Minor (8) SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 12/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Staff Who are instructors? Do they change? Who covers section? SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 13/41 Are the instructors research faculty, teaching faculty, or graduate students? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Teaching Both Teaching 9 6 Wisconsin, U Penn, UCLA, Rutgers, UIUC, UC Irvine Harvard, Purdue Quotes SIGCSE 2007 Both Depends on course Research Research 2 UW, NYU, Cal, Cornell, Princeton, Columbia, Georgia Tech Depends on Course USC, CMU, Duke, Maryland, Rice, Stanford, UNC, UCSD, UT Austin 7 UCSD: “In theory Research Fac, Teaching Fac or Lecturers. In reality, the latter 2.” A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 14/41 Are the courses taught by the same person every semester? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Quotes 5 Yes Depends on course Yes Purdue: “No, but the pool is small” UW: “Lecturers teach the course often, but a large pool of people rotate in” UIUC: “Instructor-led courses yes, research-led no” 4 Caltech, Cornell, Harvard, USC, UT Austin 16 Depends on Course SIGCSE 2007 No, but generally regulars U Penn, UC Irvine, UCLA, UIUC A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 15/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Who teaches discussion sections / recitations? Labs? Analysis People said “TAs” -- it was not clear whether grad or undergrad No sections or labs 1 UNC Quotes SIGCSE 2007 Tas UCSD: Closed: Faculty assisted by tutor, Open: TAs 8 9 A Survey of Introductory Computer Science Curricula Some Tas, some Faculty No sections, discussions, labs www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 16/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Demographics What are the enrollment numbers and trends? Who takes the courses? What kinds of grades are awarded? SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 17/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Enrollment Summary Long-term, recent Down,up: 5 Down: 8 Down, level: 7 down over the long term up in recent years down over the long term steady in recent years Up: 7 SIGCSE 2007 7 Down, up 5 Down 8 7 Down, level Up cmu, harvard, princeton, ucla, upenn, ut, uw A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 18/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. One Take on Enrollment UC Berkeley Computer Science Annual Enrollment, 2002-present 900 800 700 600 CS3 500 CS61A CS61B 400 CS61C CS70 300 200 100 0 2002 SIGCSE 2007 2003 2004 2005 A Survey of Introductory Computer Science Curricula 2006 www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 19/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What is the typical grade histogram for the course? Upper end Percentage of As range from 75% at Brown to 15% at Purdue Grade Distribution 40 35 30 A B C D F % 25 20 15 10 5 0 test SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 20/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Content Languages Textbooks Stale vs Fresh What works and what doesn’t SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 21/41 What versions of what languages are taught? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. All Java Some Java No Java 14 Stanford (just enough), Wisconsin & USC Java and 1 other... 2 Java Matlab 9 Maryland Java C++ UCLA Java C All Java CMU, Duke, Princeton, Purdue, UNC, UT Austin, UW, Rutgers & UCSD No Java (C++ & MIPS) 1 3 Cornell Java & Scheme/ML UC Irvine (Java Scheme) Brown (Scheme/ML Java) C++ C only Matlab Scheme 1 1 SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 22/41 What versions of what languages are taught? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. 3: Matlab, Python, Java 3: Java, C, Python 2 Harvard 1 3 4 5 7 UC Berkeley (MIPS) Rice (Patel & Patel’s asm) Columbia 5: Java, C++, C, Assembler, Variety (student’s choice) 1 4: Java, C, Matlab, Python U Penn 4: Scheme, Java, Assembler, C99 Java and >2 others... 4: C, Ruby, little C++ & Java Georgia Tech UIUC 4 7: Scheme, C, C++, Java, Python, ocaml, haskell SIGCSE 2007 Caltech A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 23/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. used? Brown Sanders and van Dam Cal Grillmeyer, SICP, Bates & Sierra, Goodrich & Tammassia, K&R, Patterson & Hennessey SICP, Darnell & Margolis, K&R Varies, sometimes none Cornell Gries & Gries Sedgewick, Sedgewick & Wayne Purdue SIGCSE 2007 Lewis & Loftus, Bates and Sierra, Koffman & Wolfgang, Sestoft, Reek, Bryant & O’Hallaron, Epp Princeton Malik, Goodrich & Tammassia, Deitel & Deitel Maryland K&R Johns Hopkins Smith, Guzdial Harvard Goodrich & Tammassia Georgia Tech CMU Duke Caltech Savitch A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 24/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. used? Savitch, Carraño Weiss UW SIGCSE 2007 Forouzan & Gilberg, Malik, Lauesen, Liang UT Austin Bloch, Metsker & Wake USC Kamin et al, Rosen, Woodbury, Collins, Mano, Patterson & Hennessey, Stallings, McConnell UNC Felliesen, Horstmann, Goodrich & Tamassia UCLA Savitch UIUC Roberts UC Irvine UCSD Downey, Venugopal, Horstmann Stanford Felleisen et all, Rosen, Patt & Patel, Bryant & O’Hallaron Rutgers Rice Reges & Stepp A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 25/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Is there a feeling that the course is “fresh” or “stale”? Lessons Fresh? Stale? Some said no, but the Q was meant to evaluate a range. Q should have asked for a #! Hard to admit staleness! Fresh & Neutral Neutral Fresh & Stale Stale Quotes SIGCSE 2007 Wisc: “I believe, and I sense my students would agree, that I teach the course in a manner that makes it feel fresh regardless of whether the same content has been taught for ages.” UIUC: “Not fresh, but little perceived need to change” Fresh Some Stale? “Probaby stale” Cal, Cornell, UIUC UCSD “Going to discuss overhaul” USC A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 26/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What works really well and what is broken? Brown High TA-student ratio Intro Experience Disparity Closed required labs Undergrad teaching staff More pair programming CS11 is several minicourses. Each student only takes 1 of these a term (of their choice) A course can be repeated three times for credit DrJava demos during lecture Closed required labs 1/2 Matlab, 1/2 Java Georgia Tech (Compared to peers) very low attrition CalTech Cornell Cal No closed labs Harvard 90% success in Media CS2 Teacher training Princeton Appl to commerce, science, engineering w/real datasets CMU Too much to cover! All courses taught in small Huge increase in sections – no large lectures! enrollments A Survey of Introductory Computer Science Curricula SIGCSE 27/41 www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 2007 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What works really well and what is broken? Lecture, lab Hard to have creative projects but consistent grading Some want to move intro Scheme course to Java Easier later transition But, wide background variety! Online exams Java as intro language! Stanford SIGCSE 2007 Undergrad section leaders Staffing in computer cluster while students work on assignments, which are good We (all of us) still tuning CS1 Java Getting students to program to specs Intro Experience disparity UCSD Informatics curriculum UCLA Rutgers UC Irvine Rice Purdue Accelerated intro course track Closed labs Teaching memory allocation to beginners UIUC All courses! Undergrad-led reviews Assembler EOS competition Programming studio structure Low-level understanding New student communities A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 28/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What works really well and what is broken? U Penn Compelling programming assignments USC Intro experience disparity Students move well through CS2 Java doesn’t allow them to learn memory management! One course is “geeked out” which could turn off nonprogrammers UW UT Austin Everything is fine U Wisconsin SIGCSE 2007 Infornation overload Reduce sources of info Active and collaborative learning! “Information overload has been mentioned repeatedly to me by students as a principle problem in many of their courses. It is not uncommon for courses today to have a textbook or two, course notes, as well as lecture slides which overwhelm students with presentations of the same or similar material. Add to that course email, web pages/links, blogs, etc. and students get trapped spending too much time reading and reviewing and insufficient time actively applying their newly gained knowledge. What has worked well for us is to reduce the sources of information and to direct students’ efforts to more active and collaborative learning both in and out of class.” A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 29/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Delivery & Style How are courses run? What style(s) of programming are taught? SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 30/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Contact hours Standard seems to be 3 hours of lecture and 1-2 hours of lab/discussion What drives labs ? Problem Instructor 21 7 Some open labs Discussion sections SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 31/41 What programming paradigms are covered? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Everyone includes some OO Paradigms Programming Paradigms P: Procedural O: Object-oriented F: Functional L: Logical D: Declarative OO is everywhere SIGCSE 2007 About half say they teach “objects-first” A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start P,O P,O,F,L P,O,F,D P,O,F O Varies 32/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Meta Grading guideline? What questions were missing? Anything else? What are the innovative techniques being deployed? SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 33/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Is there an institutional or departmental grading guideline? Who answered yes? Princeton: 35% As UC Berkeley: 2.7 GPA UC San Diego: 2.8 GPA Harvard 4 No Yes Other answers: SIGCSE 2007 UIUC: Grading standard of previous semester sent around 20 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 34/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. What questions are missing on this survey? Brown: Are numbers at day 1 or N? Caltech: Ask more about languages Us: scheme, java, then what the student wants! CMU: What are your ugrads paid? Cornell: % of your incoming kids who have prog experience? (60%) Harvard: Training of teaching staff? Princeton: Demography of course should include major Rice: What related courses exist outside yoru dept? Are courses weeders? (us: no) SIGCSE 2007 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 35/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Was there anything not captured by this survey you would like to add about your institution, staff, demographics, content, delivery or style? Brown: We don’t track ethnicity Caltech: We have outstanding students. We try to give them resources they need to excel, & introduce material not found elsewhere Functional programming, ocaml, haskell Cornell: We give CS or IS majors in three colleges and have two different intro courses (OO-first Java & Matlab) Harvard: We work hard to have gender-balanced (or all male) sections. This yr, > 1/2 of our teaching staff was female. We will soon offer on our own survey of what works best to revamp our intro courses! SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 36/41 What are the innovative techniques being deployed? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. www.eecs.mit.edu/images/EECS_VI_Fall06_FINAL.pdf www-tech.mit.edu/V126/N63/63course6.html MIT Overhauling EECS curriculum 6.001 (Scheme) out, Python in! 6.01 and 6.02 to be new mandatory intro courses Had been unchanged for nearly 30 years Offer intro to dept Cut broadly across EECS Strong hands-on component Build robots, apply concepts like radio, Fourier transform, networks, large systems Then choose 3 or 4 subjects from foundation courses SIGCSE 2007 E.g., Circuits, Signals, A Survey of Introductory Computer Science Curricula Systems www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 37/41 What are the innovative techniques being deployed? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. www.cm.gatech.edu Georgia Tech Computational Media degree! Different entry points to major CS1 for different majors Flexibility Robotics Media Computation CS Majors can take any CS1 Contextualization CS1s are typically dry! Students today use flikr, youtube, etc -- leverage that! Allow the data to be THEIRS movies, sounds, pix Wil Justis, Milton HS SIGCSE 2007 A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 38/41 What are the innovative techniques being deployed? QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. UC Berkeley UC-WISE Web-based learning system Interactive, collaborative & assessment Decrease passive learning in lecture (Old: 3 Lec, 2 Lab) Increase active learning in lab (New: 1 Lec, 6 Lab) Top-down instruction inst.eecs.berkeley.edu/~selfpace www.ucwise.org Scheme, Java, C, Assembler Self-paced courses SIGCSE 2007 1-unit course for programmers in Matlab, Pascal, C, Scheme, Unix, C++, Java, Python Intro to programming in Scheme Awesome undergrad tutors! A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 39/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Meta-lessons we learned? Too many questions! Should have limited scope. Just first course? Could have presented all results in one session Should be answerable in minutes, not hours Some questions redundant Discrete math courses fell through cracks We leaned on friendships to get data SIGCSE 2007 Thank you!! Next time: get funding, provide incentives A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 40/41 QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Conclusion There is so much more to squeeze out of the data! It’s all online!! We encourage you to squeeze! There are clear clusters based on language (& book) choices, tracks for the major, etc. Best & Worst practices There is some great innovation going on around the country! SIGCSE 2007 MIT, GaTech, UC Berkeley, Caltech, U Penn, … A Survey of Introductory Computer Science Curricula www.cs.duke.edu/csed/openwiki/doku.php?id=teaching:start 41/41