Meeting Computing Needs Across Campus Mark Guzdial, School of Interactive Computing.

Slides:



Advertisements
Similar presentations
Why don’t we ask users to learn?
Advertisements

EDT 612 Unit 7 Agenda- Session 7 Chapter Presentations- 13,14,15 Hypermedia Presentations Daily Journal.
Computers and Robots in Education Using Computing to Understand the World Mark Guzdial, Georgia Institute of Technology The Institute for Personal Robots.
Tracking an Innovation in Introductory CS Education from a Research University to a Two-Year College Allison Elliott Tew and Mark Guzdial Georgia Institute.
Innovative Practices in Computer Science Barbara Ericson Georgia Institute of Technology CCLI Conference Aug 2008.
Deepak Kumar Bryn Mawr College
Impact of Alternative Introductory Courses on Programming Concept Understanding Allison Elliott Tew W. Michael McCracken Mark Guzdial College of Computing.
Living In the KnowlEdge Society VT, NCA&T, SCU, Villanova Living In the KnowlEdge Society (LIKES) North Carolina A & T Santa Clara University Villanova.
Living In the KnowlEdge Society VT, NCA&T, SCU, Villanova Living In the KnowlEdge Society (LIKES) North Carolina A & T Santa Clara University Villanova.
Deepak Kumar Promising Practices in CS1 Personal Robots for CS1 Deepak Kumar Bryn Mawr College.
Intel® Education K-12 Resources Our aim is to promote excellence in Mathematics and how this can be used with technology in order.
University of Jyväskylä – Department of Mathematical Information Technology Computer Science Teacher Education ICNEE 2004 Topic Case Driven Approach for.
CS 1 with Robots CS1301 – Where it Fits Institute for Personal Robots in Education (IPRE)‏
Using Multimedia, Animation, and Robotics to Increase the Number of Students and Teachers in Computing Barbara Ericson ICE, College of Computing Georgia.
Challenges in Computing Education Research: What We Need to Know to Reach Computational Thinking for All Mark Guzdial School of Interactive Computing.
Encouraging Innovation in Computing Across Disciplines Mark Guzdial School of Interactive Computing.
Introduction to Programming Environments for Secondary Education CS 1140 Dr. Ben Schafer Department of Computer Science.
Coding for All Barbara Ericson Georgia Institute of Technology October 18, 2013.
Career Research Project
How is this useful in my class? “I will find some way to use it, by golly!” Will Python work, if students need to pick up C++ later? JES may not be a good.
The Institute For Personal Robots In Education (IPRE) Tucker Balch Associate Professor College of Computing at Georgia Tech Stewart Tansley Program Manager.
Using Technology to Differentiate Instruction By Jeanetta K. Martin, B.S, M.Ed, NBPTS, Reading K-12.
 A set of objectives or student learning outcomes for a course or a set of courses.  Specifies the set of concepts and skills that the student must.
Microsoft Research Faculty Summit Mark Guzdial Professor Georgia Institute of Technology (Georgia Tech)
Integrating Business Education and Computer Science to Prepare Students for the 21 st Century Barbara Ericson Advanced.
Ready – Set – ACTION! Jumpstart your information literacy classes with visual blogs using videos, photos and more! Jane Verostek Associate Librarian SUNY.
Meeting Computing Needs Across Campus Mark Guzdial, School of Interactive Computing.
Computer Science Curricula Computer Science Major Computer Systems Concentration (CSC) Software Engineering Concentration (SEC) –New for Fall 2005.
Introduction to Media Computation: Inventing a new approach to computing education at Georgia Tech Mark Guzdial Associate Professor College of Computing/GVU.
CS 0.5: A Better Approach to Introductory Computer Science for Majors Bob Sloan, Pat Troy University of Illinois at Chicago SIGCSE 2008.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Constructing Media as a Context for Teaching Computing and Motivating Women and Non-Majors: Inventing a new approach to computing education at Georgia.
Georgia Tech’s Three CS1’s CS1321: Introduction to Computing Based on How to Design Programs and the TeachScheme Project Was the only CS1 course, on a.
James Tam CPSC 203: Introduction To Computers (Independent Study) James Tam.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Towards Collaborative Dynabooks In Alan Kay’s vision, the computer’s greatest purpose is to facilitate learning through creation and exploration of multimedia.
Meeting Everyone’s Need for Computing Mark Guzdial School of Interactive Computing.
Chapter 11 – Teaching and Learning with Technology in Mathematics and Science Instruction Cullen Byrne and Abby Harnack.
Hands-On Exploration of Parallelism for Absolute Beginners With Scratch Steven Bogaerts Department of Mathematics & Computer Science Wittenberg University.
Contrasting Women’s Experience in CS at Different Institutions Mark Guzdial College of Computing/GVU Georgia Tech Our Goal: Ubiquitous Computing Education.
A CS1 Course Designed to Address Interests of Women Lauren Rich¹*, Heather Perry, and Mark Guzdial* College of Computing/GVU Georgia Tech *Presenting¹Now,
Contexts in Computer Science Education Mark Guzdial School of Interactive Computing.
Interactive Social Studies Notebooks Presented by Tracee Myers Thursday, July 1, 2010 All information from today is posted on the following website: pennridgeinteractivenotebooks.wikispaces.com/
Chapter 1 Defining Social Studies. Chapter 1: Defining Social Studies Thinking Ahead What do you associate with or think of when you hear the words social.
Best Practices for Introductory Computer Science Valerie Barr, Jessica Bayliss, Monisha Pulimood, Susan Rodger, Ursula Wolz.
Broadening Computing Education Mark Guzdial, School of Interactive Computing.
Design Process for a Non- Majors Computing Course Mark Guzdial & Andrea Forte College of Computing/GVU Georgia Institute of Technology With thanks for.
Contextualized Computing Education Mark Guzdial School of Interactive Computing.
Art Department Outline. The Department of Art at ISAS offers art training that emphasizes experimentation and encourages students to draw from many disciplines.
Meeting Everyone’s Need for Computing Mark Guzdial School of Interactive Computing.
CSE8A: Introduction to Programming in Java Fall 2012 Prof. Christine Alvarado cse8afall.weebly.com.
Meeting Computing Needs Across Campus Mark Guzdial, School of Interactive Computing.
Great Principles of Computing: Computing for Everyone Mark Guzdial College of Computing/GVU Georgia Institute of Technology.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Examples from Georgia Tech’s CS 1315: Introduction to Media Computation Class examples and student work.
Media Computation: Introducing Computing Contextualized in Video and Audio Processing Mark Guzdial and Barbara Ericson.
We believe that children's engineering can and should be integrated into the material that is already being taught in the elementary classroom -it does.
Institute for Computing Education (ICE) at Georgia Tech Fall 2004 BIT Conference.
Barbara Ericson Promising Practices in CS1 Media Computation for CS1 Barbara Ericson Georgia Institute of Technology.
Improving Undergraduate Computing Education NSF Site Visit, December 5, 2008.
Developmentally Appropriate Practices. Five Guidelines For Developmentally Appropriate Practices.
The Current Crisis in Computing: What are the Real Issues? Mark Guzdial School of Interactive Computing Georgia Tech Story: –1 st Order Economics, 2 nd.
CS 1 with Robots CS1301 – Where it Fits Institute for Personal Robots in Education (IPRE)‏
Tel : About iCodeinc: iCode Inc is a state-of-the-art educational institution located in the Dallas area. iCode’s mission.
INTERMEDIATE PROGRAMMING WITH JAVA
CS1315 Introduction to Media Computation
Mark Guzdial College of Computing/GVU Georgia Tech
CS1301 – Where it Fits Institute for Personal Robots in Education
CS1301 – Where it Fits Institute for Personal Robots in Education
CS1301 – Where it Fits Institute for Personal Robots in Education
Presentation transcript:

Meeting Computing Needs Across Campus Mark Guzdial, School of Interactive Computing

2 Story Why we should teach computing to everyone Making computing work for everyone at Georgia Tech. –Lesson Learned: Contextualized computing education. –What our courses are like Side trip into second course –Results Side trip: Applying the lesson to the BS in CS. Finally, what does it buy us in CS?

3 Time Warp to Fall 1999 Fall 1999: All students at Georgia Tech must take a course in computer science. –Considered part of General Education, like mathematics, social science, humanities… –Heroes: Peter Freeman, Rich LeBlanc, Kurt Eiselt, Russ Shackelford Why did Georgia Tech make that decision? –Computing was a College. Solved a problem for Engineering –Making a competitive distinction for Liberal Arts

4 Within Computing: Alan Kay Alan Kay (2004 Turing Awardee) sees the Computer as humanity’s first metamedium –A medium that can represent all other media. –Programming as yet another medium The Dynabook is a computer for creative metamedia exploration and reading –Writing (and typing), drawing and painting, sound recording, music composition and synthesis

5 New reasons: Computational Thinking Everyone needs to learn about process (Alan Perlis) Algorithms control our lives: The tyranny of the computationally literate (C.P. Snow) The tools of learning for computational scientists and engineers brought to the classroom (Jeanette Wing). –Computers are cheaper than Super-Conducting Supercolliders

MIT Sloan School Symposium

7 Computing for Everyone In 1961, 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

8 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 –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.”

9 Adopting Computing: With CS? At Georgia Tech and other Universities: –Biology teaches programming for mathematical and computational models. –Physics teaches VPython for labs where they solve three- body 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 science and engineering students? –History repeating: Telescopes, microscopes. –Computers are already cheap and plentiful.

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 Back to Georgia Tech in 1999 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? –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) PassWDF 02 FallTotal74.01%26.74% Female62.99%36.65% Male77.00%22.90% 02 SpringTotal65.03%34.87% Female65.56%34.44% Male64.81%35.04% 01 FallTotal70.98%29.02% Female59.55%40.45% Male73.63%26.37%

13 Contextualized Computing Education Since Spring 2003, we teach 3 introductory CS courses. –Responding to research results about CS being “irrelevant” –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 MediaComp in Undergraduate, High School, and Teacher Workshops Introductory media computing in Python –Both majors and non-majors. –At Georgia Tech, course is students/term, 51% female Required in Liberal Arts, Architecture, and Management. (Enables BS in Computation Media, 27% female) Introduction to object-oriented programming in Java Introduction to data structures in Java –Used at Georgia Tech, Gainesville College, Lindfield College Introduction to programming and CS AP Integrating Alice and Media Computation

18 Some Media Computation Examples: A Sunset Effect How do we turn this beach scene into a sunset? What happens at sunset? –Theory: As the sun sets, less blue and green is visible, which makes things look more red.

19 A Sunset-generation Function def makeSunset(picture): for p in getPixels(picture): value=getBlue(p) setBlue(p,value*0.7) value=getGreen(p) setGreen(p,value*0.7)

20 SlowSunset as a movie def slowsunset(directory): canvas = makePicture(getMediaPath("beach-smaller.jpg")) for frame in range(0,100): #99 frames printNow("Frame number: "+str(frame)) makeSunset(canvas) # Now, write out the frame writeFrame(frame,directory,canvas) def makeSunset(picture): for p in getPixels(picture): value=getBlue(p) setBlue(p,value*0.99) #Just 1% decrease! value=getGreen(p) setGreen(p,value*0.99)

21 SlowSunset frames

22 Example Movies

23 Background subtraction Let’s say that you have a picture of someone, and a picture of the same place (same background) without the someone there, could you subtract out the background and leave the picture of the person? –Where the same (x,y) pixel differs in color (by some threshold value), assume it’s the person Could you change the background? –When a pixel color differs, take the color from the new background at the same (x,y)

24 Person (Katie) and Background, and new version

25 Fading by background subtraction Background subtraction: def swapbg(person, bg, newbg,threshold): for x in range(1,getWidth(person)): for y in range(1,getHeight(person)): personPixel = getPixel(person,x,y) bgpx = getPixel(bg,x,y) personColor= getColor(personPixel) bgColor = getColor(bgpx) if distance(personColor,bgColor) < threshold: bgcolor = getColor(getPixel(newbg,x,y)) setColor(personPixel, bgcolor) Threshold as an input. Using the frame number

26 SlowFadeout

27 Example Movies

28 Examples of Student Work Soup- Audio Collage Canon- LinkedList of (MIDI) Music

29 Examples of Teacher Work

30 A Media Computation Data Structures Course Driving question: “How did the wildebeests stampede in The Lion King?”

31 Connecting to the Wildebeests It’s all about data structures

32 Similar Assignments, but with Objects and Agents

33 Results: CS1315 “Media Computation” PassWDF 04 FallTotal80.33%19.65% Female82.90%17.10% Male77.46%22.54% 04 SpringTotal89.87%9.37% Female91.94%7.58% Male87.50%11.41% 03 FallTotal86.47%12.54% Female88.36%10.27% Male84.71%14.65%

34 Success Rates for Specific Majors Success rates in traditional CS1 for students in various majors average Fall ’99 to Fall ’02, compared to Spring ’03 to Fall ’05 in Media Computation.

35 Results: CS1371 “Engineering” PassWDF 04 FallTotal85.03%14.87% Female85.55%14.45% Male84.92%14.96% 04 SpringTotal75.27%24.27% Female75.54%23.74% Male75.19%24.42% 03 FallTotal73.94%26.06% Female71.72%28.28% Male74.49%25.51%

36 Results of four years of evaluation MediaComp students are more motivated and engaged (retention data, interviews), and find the course social, creative, and “relevant.” –Replicated at several institutions now. Students in the contextualized courses program outside of class. –Immediately (engineers) and even a year later (MediaComp) Students in MediaComp classes (both, and new Architecture course) spend extra time on homework “because it’s cool.”

37 “Did the class change how you interact with computers?” Results from a survey a year later: –“Definitely makes me think of what is going on behind the scenes of such programs like Photoshop and Illustrator.” –'I understand technological concepts more easily now; I am more willing and able to experience new things with computers now ’ –'I have learned more about the big picture behind computer science and programming. This has helped me to figure out how to use programs that I've never used before, troubleshoot problems on my own computer, use programs that I was already familiar with in a more sophisticated way, and given me more confidence to try to problem solve, explore, and fix my computer.’

38 The Other Results We don’t know if they learn the same. –The challenge of comparative studies when there is no shared experience of computing. While engaging, majority of students do not find the MediaComp courses relevant to their degrees or professions. –Many do find it relevant to their lives. Students distinguish between “more MediaComp classes” and “more CS classes”

39 Next steps… An alternative path and a minor What happens when you have an intro to CS course for non-majors that students pass and even enjoy? Define a CS minor –About 100 students today Create new 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

40 How about CS? Back to our own CS1 PassWDF 04 FallTotal84.34%15.26% Female89.36%10.64% Male83.17%16.34% 04 SpringTotal68.26%31.74% Female67.57%32.43% Male68.46%31.54% 03 FallTotal81.42%18.45% Female77.86%22.14% Male82.18%17.67%

41 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 – Goal is to develop a CS1 with robotics as the context. –Added a camera and media computation abilities

42 Robot Movies Robots have cameras, and Myro has media computation primitives. Wonderful project by Jay Summet: Creative and Collaborative –Robots are characters. –One robot is camera How do you zoom? Aim and go forward! –Post-processing media computation, e.g., for eerie disappearing effects.

43 Example movie

44 Using Context throughout the CS Curriculum The future of computing is not in merely being a good programmer. –Those skills are now commodities that can be outsourced anywhere. When “The World is Flat” (Friedman), we become competitive by bridging areas and differentiating.

45 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)

46 The Threads™ Curriculum We have defined 8 Threads in Computing: –Computing and People –Computing and Information Internetworking –Computing and Media –Computing and Platforms –Computing and Intelligence –Computing and Foundations –Computing and Computational Modeling –Computing and Devices (was Embodiment)

47 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.

48 Back to Computing Across Campus What do we in CS get from teaching computing to the rest of campus? –Maybe make our students more competitive (via diversity and breadth)? Maybe attract more students to the field? –New problems to work on. The difference between Computer Science and Computing. –Where the interesting stuff is. –A change in culture. Pedagogical methods. –Critical design in Architecture Research methods

49 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

50 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. –Maybe we need to change how we offer intro computing to our own students. We have found a contextualized computing approach works (for the measures we have now). There may be benefits for CS in making more connections to the rest of campus.

51 Thank you! Mark Guzdial For more on Threads: For more on MediaComp approach (including papers, software, and slides and workshops): plan Media Computation Teachers’ Site: teach

52 Student voices Intro CS 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.” High School teacher: “This was the best (non- college credit) workshop I have ever taken.” Students in multimedia data structures: “Data structures is an important step. Use of media! It makes it fun.”

53 Next steps in Threads: Roles Threads are about conceptual focus. Within any Thread, might play different roles: –A Master Practitioner –An Entrepreneur –A Researcher –A Communicator/Teacher –A Public Policy Maker We are defining recommendations for these roles in terms of experiences and elective classes in software engineering, management, and other areas.

54 What Georgia Tech Teaches CS1301 Intro to Programming in Python for CS majors CS1331 CS1+2 in Java CS1332 Data Structures and Algorithms in Java CS1315 (Media Computation CS1 in Python) CS1316 (Structure & Behavior— Multimedia data structures in Java) CS1371 (Computing for Engineering in MATLAB (only)) CS2110 (Low-level programming in C) CS2260: Media Device Architectures CS1372 Algorithm Design in C Institute for Computing Education Summer Workshops for High School Teachers: Media Computation CS1 in Java

55 Computing and Devices

56 Computing and Information Internetworking

57 Want a job in Information Security? Information Internetworking + Foundations –Encoding and storing information securely for organizations Information Internetworking + Platforms –Making information flow securely between large databases and small cell phones and PDAs.

58 Preparing for Jobs to Come The Future of Robotics: Devices + People

59 Preparing for Jobs to Come Platforms + Media Platforms + People

60 For More Information…