CSE@50: Broadening Computing Education Mark Guzdial, School of Interactive Computing Story • U-M CSE and Broadening Computing Education • Teaching computing to everyone – The.

Download Report

Transcript CSE@50: Broadening Computing Education Mark Guzdial, School of Interactive Computing Story • U-M CSE and Broadening Computing Education • Teaching computing to everyone – The.

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