CSE@50: Broadening Computing Education Mark Guzdial, School of Interactive Computing Story • U-M CSE and Broadening Computing Education • Teaching computing to everyone – The future of computing education, from 50 years ago • Making computing for everyone work at Georgia Tech. – Lesson Learned: Contextualized computing education. – Courses for “Computing + X” • Side trip: Applying the lesson to the BS in CS. • Finally, what does it buy us in CS? 2 The (Personal) Broad View of Computing • 1985-1989: Quentin Stout – Parallel computing for the K-12 audience. • 1989-1993: Elliot Soloway – Great Advisor – Programming in high school – Computing as enabler 3 The Two Cultures 4 1961 MIT Sloan School Symposium 5 Learn Programming to Re-Think Process Everywhere • Alan Perlis argued that computer science should be part of a liberal education. – Explicitly, he argued that all students should learn to program. • Why? – Because Computer Science is the study of process. – Automated execution of process changes everything 6 The Power and Fear of Algorithms • The Economist (Sept., 2007) spoke to the algorithms that control us, yet we don’t understand. – Credit Ratings, Adjustable Rate Mortgages, Google • C.P. Snow foresaw this in 1961. – Those who don’t understand algorithms, can’t understand how the decisions are made. “A handful of people, having no relation to the will of the society, having no communication with the rest of society will be taking decisions in secret which are going to affect our lives in the deepest sense.” 7 Fall 1999: Georgia Tech • Fall 1999: All students at Georgia Tech must take a course in computer science. – Considered part of General Education, like mathematics, social science, humanities… • Why did Georgia Tech make that decision? – Computing was a College. •Solved a problem for Engineering – Making a competitive distinction for Liberal Arts 9 It’s Already Happening: Computational Thinking • Computing is already cross-campus – Bio2010 (NRC) calls for programming for mathematical and computational models. – Physics teaches VPython for labs where they solve threebody problems. • Computer science provides the tools and metaphors for understanding our world – Jeanette Wing’s “Computational Thinking” • Scientists and engineers use computing to model, simulate, and understand. – Why shouldn’t students? 10 Richard Dawkins on Fresh Aire GROSS: You close your book saying, "I am thrilled to be alive at a time when humanity is pushing against the limits of understanding." How do you think that's happening in your field of evolutionary biology? Mr. DAWKINS: Well, it's the most exciting time to be a biologist… Since Watson and Crick in 1953, biology has become a sort of branch of computer science. I mean, genes are just long computer tapes, and they use a code which is just another kind of computer code. It's quaternary rather than binary, but it's read in a sequential way just like a computer tape. It's transcribed. It's copied and pasted. All the familiar metaphors from computer science fit. 11 Computer Science == Computer Science • Key Point: Only one course met the requirement: CS1321 Introduction to Computing – Shackelford’s pseudocode approach in 1999 – Later Scheme: How to Design Programs • Why only one? – It’s all the same computer science. – Resource issues – “Service Ghetto” – The offer to help them do their own 12 CS1321: Pass (A, B, or C) vs. WDF (Withdrawal, D or F) Pass 02 Fall Total WDF 74.01% Female 62.99% Success rates in CS1 from Fall 1999 to Fall 2002 02 Spring Architecture Biology Economics 26.74% 36.65% Male 77.00% 22.90% Total46.7% 65.03% 34.87% Female 65.56% 34.44% 64.4% Male 64.81% 35.04% 54.5% 01 Fall Total 70.98% 29.02% History 46.5% Female 59.55% 40.45% Management Male 48.5% 73.63% 26.37% Public Policy 47.9% 13 Contextualized Computing Education • What’s going on? – Research results: Computing is “irrelevant” • Since Spring 2003, we teach 3 introductory CS courses. – Based on Margolis and Fisher “alternative paths” • Each course introduces computing using a context (examples, homework assignments, lecture discussion) relevant to majors. – Make computing relevant by teaching it in terms of what computers are good for (from the students’ perspective). 14 Our Three CS1’s Today • CS1301/1321 Introduction to Computing Traditional CS1 for our CS majors and Science majors (math, physics, psychology, etc.). • CS1371 Computing for Engineers CS1 for Engineers. Same topics as CS1301, but using MATLAB with Engineering problems in homework and examples. • CS1315 Introduction to Media Computation 15 Introduction to Media Computation • Average 400 students/term – Overall, CS1315 has been 51% female – Required in Architecture, Management, Ivan Allen College of Liberal Arts, and Biology • Focus: Learning programming and CS concepts within the context of media manipulation and creation – Computing for communications, not calculation 16 Media Computation: Teaching in a Relevant Context • Presenting CS topics with media projects and examples – Iteration as creating negative and grayscale images – Indexing in a range as removing redeye – Algorithms for blending both images and sounds – Linked lists as song fragments woven to make music – Information encodings as sound visualizations 17 def clearRed(picture): for pixel in getPixels(picture): setRed(pixel,0) def greyscale(picture): for p in getPixels(picture): redness=getRed(p) greenness=getGreen(p) blueness=getBlue(p) luminance=(redness+blueness+greenness)/3 setColor(p, makeColor(luminance,luminance,luminance)) def negative(picture): for px in getPixels(picture): red=getRed(px) green=getGreen(px) blue=getBlue(px) negColor=makeColor(255-red,255-green,255-blue) setColor(px,negColor) 18 Examples of Student Work SoupAudio Collage CanonLinkedList of (MIDI) Music 19 Creating a new degree: BS in Computational Media • Joint with School of Literature, Communications, and Culture • 58 majors in first year, 24% female Over 200 majors today, still about ¼ female • New courses (mostly existing classes): – Media Computation Data Structures – LCC “Introduction to Computational Media” • Programming Atari 2600 Consoles – Media Device Architectures • Computer Organization in C…for Gameboys 20 A Media Computation Data Structures Course • Driving question: “How did the wildebeests stampede in The Lion King?” 21 Connecting to the Wildebeests It’s all about data structures 22 Similar Assignments, but with Objects and Agents 23 Results: CS1315 “Media Computation” Pass 04 Fall Total WDF 80.33% Female 82.90% Success rates in CS1315 from Spring 2003 to Fall ‘05 Male 19.65% 17.10% 77.46% 22.54% 85.7%89.87% 9.37% 91.94% 7.58% 90.4%87.50% 11.41% CS1321 04 Spring Architecture Total46.7% Female Biology Economics 64.4% Male 54.5% 03 Fall Total History 92.0% 86.47% 12.54% 46.5% Female 67.6%88.36% 10.27% Management Male 48.5% 87.8%84.71% 14.65% Public Policy 47.9% 85.4% 24 Voices from Students • Intl Affairs student (female): “I just wish I had more time to play around with that and make neat effects. But JES [IDE for class] will be on my computer forever, so… that’s the nice thing about this class is that you could go as deep into the homework as you wanted. So, I’d turn it in and then me and my roommate would do more after to see what we could do with it.” • “Did the class change how you interact with computers?” – Results from a survey a year later. – 80% say “Yes” •“Definitely makes me think of what is going on behind the scenes of such programs like Photoshop and Illustrator.” 25 Results: CS1371 “Engineering” Pass 04 Fall 04 Spring 03 Fall WDF Total 85.03% 14.87% Female 85.55% 14.45% Male 84.92% 14.96% Total 75.27% 24.27% Female 75.54% 23.74% Male 75.19% 24.42% Total 73.94% 26.06% Female 71.72% 28.28% Male 74.49% 25.51% 26 Side Trip: How about CS? Back to our own CS1 Pass 04 Fall 04 Spring 03 Fall WDF Total 84.34% 15.26% Female 89.36% 10.64% Male 83.17% 16.34% Total 68.26% 31.74% Female 67.57% 32.43% Male 68.46% 31.54% Total 81.42% 18.45% Female 77.86% 22.14% Male 82.18% 17.67% 27 A Context for CS1 for CS majors: Robotics • Microsoft Research has funded the Institute for Personal Robotics in Education – Tucker Balch, Deepak Kumar, Doug Blank – Joint between Bryn Mawr and Georgia Tech – http://www.roboteducation.org • Goal is to develop a CS1 with robotics as the context. – Added a camera and media computation abilities 28 Thomas Friedman on the Two Cultures • “In the latest edition, I added a whole section on why liberal arts are more important than ever. It’s not that I don’t think math and science are important. They still are. But more than ever our secret sauce comes from our ability to integrate art, science, music and literature with the hard sciences. That’s what produces an iPod revolution or a Google. ” 29 Microsoft wants employees who know context for CS “The nature of these jobs is not closing the door and coding,” (Bill) Gates said. “The great missing skill is somebody who’s good at understanding engineering and bridges that [understanding] to working with customers and marketing…We can promise these people most of what they’re doing won’t be coding.” – Gates worried over decline in US computer scientists, ComputerWorld, July 18, 2005 (by Elizabeth Montalbano) 30 The Threads™ Curriculum • We have defined 8 Threads in Computing: – Computing and People – Computing and Information – Computing and Media – Computing and Platforms – Computing and Intelligence – Computing and Foundations – Computing and Computational Modeling – Computing and Devices (was Embodiment) 31 The BS in Computer Science under Threads™ • Each Thread specifies the courses needed to know that area well. – From introductory computing, through advanced courses, to beyond Computer Science (Psychology, Physics, Computer Engineering). • A degree is the union of any two Threads. – Every Combination is a full Computer Science degree, but bridging disciplines and clearly different from “just programming.” – No Thread choice is necessary in first year, Can always choose different Threads during degree. 32 Why should we broaden computing education? •Impact – 5-7K Computing vs. 700K “Computing + X” •Novel Problems – Difference between Computer Science and Computing. •A Healthy Change in our Culture – Pedagogical and research methods. 33 Computer Scientists and Reading • Alan Perlis, Norbert Weiner, J.C.R. Licklider, C.P. Snow • Others included Vannevar Bush, Herbert A. Simon, Marvin L. Minsky, Jay W. Forrester, Grace M. Hopper, Claude E. Shannon, John G. Kemeny, Gene M. Amdahl 34 Summary • The rest of campus needs what we have to offer. – The Power of Computational Thinking • We have found that the way they need computing education is different than the way we offer it to our students. – U-M CSE can figure this out for the whole academy • Contextualized computing approach works for bridging the gap. • Benefits for CS. 35 Thank you! http://www.cc.gatech.edu/~mark.guzdial http://home.cc.gatech.edu/csl For more on Threads: http://www.cc.gatech.edu/threads For more on MediaComp approach (including papers, software, and slides and workshops): http://coweb.cc.gatech.edu/mediaCompplan Media Computation Teachers’ Site: http://coweb.cc.gatech.edu/mediaCompteach Thanks to the National Science Foundation (BPC, CCLI) which has funded this work 36