Collaborative Dynabooks: A research agenda on building systems to support learning through media Mark Guzdial Collaborative Software Lab http://coweb.cc.gatech.edu/csl (School of) Interactive and Intelligent Computing (Division) College of.

Download Report

Transcript Collaborative Dynabooks: A research agenda on building systems to support learning through media Mark Guzdial Collaborative Software Lab http://coweb.cc.gatech.edu/csl (School of) Interactive and Intelligent Computing (Division) College of.

Collaborative Dynabooks:
A research agenda on building systems to
support learning through media
Mark Guzdial
Collaborative Software Lab
http://coweb.cc.gatech.edu/csl
(School of) Interactive and Intelligent Computing
(Division)
College of Computing
Georgia Tech
Story
• Dynabooks (Alan Kay): Learning through and with multimedia
• Story 1: What Learning Science tells us about the Dynabooks
and the power of collaboration
• Collaborative Dynabooks: Learning through collaboration and
multimedia
• Story 2: Making real systems towards Collaborative
Dynabooks
• Using the CoWeb in Architecture and CS
• Story 3: Applying Collaborative Dynabooks to solve hard
learning problems
•
Using Multimedia Collaboration to teach programming
Dynabook to Personal Computer
The Personal Computer as we know it today
was invented in pursuit of the Dynabook
(And Collaborative Systems then were
more flexible and faster than they are
today!)
Alan Kay’s Dynabook (1972)
• Alan Kay (2004 Turing Awardee) sees the Computer as
Man’s first metamedium
• A medium that can represent any other media:
Animation, graphics, sound, photography, etc.
• Programming as yet another medium
• The Dynabook is a computer for creative metamedia
exploration and reading
• Handheld, wireless network connection
• Writing (and typing), drawing and painting, sound
recording, music composition and synthesis
• One goal: End-user programming.
Prototype Dynabook
(Xerox PARC Learning Research Group)
Why?
A Dynabook is for Learning
• The Dynabook offers a new way to learn
new kinds of things…and perhaps old
things in better ways
• Decentralized systems (Resnick, 1997)
• Knowledge representation (Papert, 1980)
• But need a system for creative expression
• In a time when “windows” were made of
glass, and “mice” were undesirable rodents
Smalltalk-72
• For the
Dynabook,
WIMP was
invented:
• overlapping
Windows
• Icons
• Menus
• mouse Pointer
What about collaboration?
• Collaboration was always part of the
Dynabook vision.
• Not always emphasized,
because just assumed.
• The first collaborative system preceded
Smalltalk-72
• And were faster and more flexible than
today’s systems
Engelbart’s Augment (1968)
Engelbart’s Augment (1968)
• Features to Note:
• Dynamically resizable
video and workspace
•Video in a window
•Integrated drawing and
outlining
• From mouse click to
screen repaint in ¼
second!
When computers were
much slower!
Lesson from PARC on system design:
Infrastructure is a two-edged sword
• “Operating System: An operating system
is a collection of things that don't fit into a
language. There shouldn't be one.”
• Dan Ingalls, creator of Xerox PARC Smalltalks
• The lack of standards provided a level of
flexibility (and speed!) that today’s
infrastructure prohibits
Story 1: What ~30 Years of Learning Sciences
tell us about the Dynabook
• Since the 1970’s, Learning Scientists
(Resarchers in Cognitive Science,
Education, AI, etc.) have studied learning
• Do people learn from watching multimedia?
• Do people learn from creating multimedia?
• How well do people learn programming?
Do media make a difference in
learning?
• Not obvious
• “Equivalenced” media show little difference in
learning benefit (Clark, 1983)
• But it may be that equivalencing is the problem
(Kozma, 1991)
• Mixing media may make a big difference
• The case of animation
• Some studies show animations improve learning (Mayer, 1988)
• Many studies suggest animation has no benefit in learning
(Stasko, Badre, Lewis, 1993), and can even hinder learning
(Palmiter, Elkerton, Baggett, 1991)
Do people learn from creating
media?
• Yes, and it’s a clearer case
• Children building educational software for other kids
learn fractions and science (Harel, 1988; Kafai &
Harel, 1990)
• Students building multimedia perform better on
assessments (Hay et al., 1994)
• Students building multimedia recall more a year later
(Carver, Lehrer, Connell, and Erickson, 1992)
How well do people learn
programming?
• Really, really badly
• Freshmen and Sophomores at Yale couldn’t handle
error conditions in loops in 1982 (Soloway et al.)
• Freshmen and Sophomores in 3 countries and 4
institutions can’t build calculators in 2001 (McCracken et
al., 2001)
• Failure/withdrawal rate in CS1 is double-digits in most
institutions
• Percentage of women and minorities in CS is falling
The role of collaboration
• We are social beings
• An audience/critic/colleague
motivates/inspires/drives us
• Vygotsky claims that we practice first on the
social plane what we later internalize
• Collaboration can help with learning
• Constructionism: Building a public
representation of one’s knowledge facilitates
learning (Papert, 1991; Resnick, Bruckman,
Martin, 1996)
Collaboration can even help
with learning programming
•MOOSE Crossing
(Bruckman, 1997)
•Harel and Kafai studies
•STABLE (Guzdial &
Kehoe, 1998)
A Research Goal:
Collaborative Dynabooks
Hypothesis:
Collaboratively creating and
exploring multimedia facilitates
learning
Strategies for achieving
Collaborative Dynabooks
• Integrate across levels to get useful, usable
collaborative systems.
• Systems
• Strategy: Use standards where helpful; build for ourselves
where not.
• Interfaces
• Strategy: Support the range of uses and users.
• Curriculum (Application context)
• Strategy: Aim for the majority—those who are not
succeeding with current practice.
Story 2: CoWeb: Collaborative Websites
as Collaborative Dynabooks
• Based on Ward
Cunningham’s WikiWiki Web
• Hence it’s “other” name:
Squeak Wiki -> Swiki
http://minnow.cc.gatech.edu/swiki
• Simple system:
• It’s a website
• Where any user can edit any
page (caveat “locks”)
• And any user can create new
pages
Using the CoWeb
Use in Architecture
• Originally, CoOL (Collaborative On-Line
Studio)
• Grad students posting courthouse designs for
courthouse designers to critique
• Won Architecture Magazine and American
Institute of Architects Awards
• Why? A virtual design studio without
specialized hardware that people could use
2Cool
Student
Projects
Expert Comments
Use in Computer Science:
As a Project Memory
• Group project in Digital Video Special
Effects
• Each group has its own page for:
• Storing Storyboards.htm
• Storing the script, partials, final movie and
• Even “The Making of…”
Other uses:
• Midterm and final exam reviews
• Glossaries
• Case
libraries
• Key:
Teacher
invented
Designing for the range of users
• Collaborations don’t have one kind of users
• In our university classroom setting:
•
•
•
•
Students have to find what’s new and edit content
Teaching assistants actually build pages for activities
Teachers want to review specific activity quickly
Visitors want to participate without learning all about
the system
Features for the Range
•Students have to find
what’s new and edit content
•Teaching assistants
actually build pages for
activities
•Teachers want to review
quickly
•Visitors want to participate
without learning all about
the system
• For Students: Recent
changes and HTML input
• For TA’s: Ability to rename
and lock pages, and tailor
look-and-feel
• For Teachers: Mail alerts
on new page activity
• For Visitors: Pages can
have “Add to this page”
boxes
Swiki uses Squeak
• Squeak is Smalltalk-80 running on modern
machines (over 30 platforms)
• http://www.squeak.org
• Supporting wide range of media: Flash, MIDI, AIFF/WAV, MPEG
• Open-source
• Alan Kay, Dan Ingalls, Ted Kaehler from original
Xerox PARC LRG
• Apple to Disney to Viewpoints Research
http://www.squeakland.org
Breaking the Lines
Swiki uses Comanche (Squeak),
Not Apache
• Apache has severe limitations
• Limited platform compatibility
• Application complexity
• Aimed toward production systems, not research
exploration
• We built our own webserver in Squeak
• Runs on anything (important for ed context)
• Ease for users (tailored, fast)
• Not standards-free: Standards-selective
Story 3:
Applying Collaborative Dynabooks to a Hard
Learning Problem
• Focusing on multimedia collaboration for
learning
• Creating an introductory programming course for
non-CS majors: Introduction to Media Computation
• Continuing to multimedia data structures (Sp05)
• Using our system, interface, and curriculum to
address Alan Kay’s end-user programming
challenge
The Computer Science Undergraduate
Degree is in Deep Trouble
• We’re losing students, at an increasing
rate.
• Women and minority percentage of
enrollment dropping
• High failure rates in CS1 (35-50% or
more)
• Fewer applications into CS: “All
programming jobs going overseas”
• Research results: “Tedious,” “boring,”
“lacking creativity,” “asocial”
• All of this at a time when we recognize the
critical role of IT in our economy, in all jobs
Can Collaboration help here?
• What if we taught computing as relevant, social,
and creative?
• If the goal of a programming assignment was
not to get a grade, but to produce something
creative to share?
• Strategy: CS1 via Collaborative Dynabooks
• And now, CS2, too!
CS1315 Introduction to Media
Computation
• 121 students in Spring 2003,
with ~300/semester since then
• 2/3 female in Spring 2003 MediaComp
• 51% female over time
• Required in Architecture, Management,
Liberal Arts, and Biology
Providing a Relevant and Creative
Context
• Focus: Learning programming and CS concepts
within the context of media manipulation and
creation
• Converting images to grayscale and negatives,
splicing and reversing sounds, writing programs to
generate HTML, creating movies out of Webaccessed content.
• Computing for communications, not calculation
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)
Rough overview of Syllabus
• Defining and executing functions
• Pictures
•
•
Psychophysics, data structures, defining functions, for loops, if
conditionals
Bitmap vs. vector notations
• Sounds
•
•
Psychophysics, data structures, defining functions, for loops, if
conditionals
Sampled sounds vs. synthesized, MP3 vs. MIDI
• Text
•
•
Converting between media, generating HTML, database, and
networking
Trees, hash tables
• Movies
• Then, Computer Science topics (last 1/3 class)
Computer science topics
as solutions to their problems
• “Writing programs is hard! Are there ways to make it
easier? Or at least shorter?”
•
•
Object-oriented programming
Functional programming and recursion
• “Movie-manipulating programs take a long time to
execute. Why? How fast/slow can programs be?”
•
Algorithmic complexity
• “Why is PhotoShop so much faster?”
•
•
Compiling vs. interpreting
Machine language and how the computer works
Results: Improved success rates
Enrollment
Success
Rate
Georgia Tech’s CS 1
2000 - 2002
930
71.2%
Spring 2003
120
90.0%
Fall 2003
303
86.5%
Spring 2004
395
86.9%
Summer 2004
120
73.3%
Fall 2004
366
80.3%
Spring 2005
317
84.5%
(average)
Media Computation
• Since Spring 2004,
the developers aren’t
the teachers.
• We are getting
transfers into the CS
major.
Were Students Motivated and
Engaged?
• Homework
assignments
suggest they
were.
• Shared on-line in
collaborative web
space (CoWeb)
• Some students
reported writing
programs outside
of class for fun.
Example Student Work
-Shared on the CoWeb Gallery
Example Student Work
-Shared on the CoWeb Gallery
The author of this collage via
IM as soon as she was
done: “Well, I looked at last
years’ collages, and I
certainly can’t be beat.”
Students’ audio collages and
animations
Soup
Stephen Hawking
CS1316 “Representing structure
and behavior”
• Driving
question:
“How did
the
wildebeests
stampede in
The Lion
King?”
Sounds/Music in Trees and Lists
Assignment: Create
music by repeating
and weaving nodes.
Canon
Swan
Bells
Role of the Homework “Galleries”
Q: What do you think about the homework galleries on the
CoWeb?
Student 4: It's nice to see other people, like what they did with
it… And there is no better feeling than getting something
done and knowing that you've done it right.
Student 3: I don't ever look at it [the homework gallery] until after
I'm done. I have a thing about not wanting to copy someone
else's ideas. I just wish I had more time to play around with
that and make neat effects. But JES [Jython Environment for
Students---the programming environment created for this
class] will be on my computer forever, so…the nice thing
about this class is that you could go as deep into the
homework as you wanted. So, I'd turn it [the homework
assignment] in, and then me and my roommate would do
more after to see what we could do with it.
What was the role of
collaboration/CoWeb in the class?
• “Actually, I think [collaboration] is one of the best
things about this class. My roommate and I
abided by all the rules... but we took full
advantage of the collaboration. It was more just
the ideas bouncing off each other. I don’t think
this class would have been as much fun if I
wasn’t able to collaborate.”
• On CoWeb use: “Yes, it’s not just about the
class…people talk about anything, it’s a little bit
more friendly than just here’s your assignment.”
A Research Agenda for Collaborative
Dynabooks
• How do we integrate across these levels?
• Systems
• How do we gain the speed of 1968’s Augment
without surrendering the infrastructure of today?
• Interfaces
• How do we identify and support the different roles
in a collaboration?
• Application/Curriculum
• How do we design to make best use of the
potential of the Collaborative Dynabook?
Conclusions
• The Dynabook vision serves as an inspiration to
us today, as it did to Xerox PARC in the 70’s.
• Learning Science supports that collaborative
dynabooks can help learning
• At Georgia Tech, we are creating and using
Collaborative Dynabooks to improve learning
with some success.
• The Dynabook is also a metaphor: Setting a
high goal to challenge our perspective.
Acknowledgements
• Faculty Collaborators: Lissa Holloway-Attaway, Craig
Zimring, Sabir Khan, Tom Morley, Matthew Realff, Pete
Ludovice
• Research Students: Jochen “Je77” Rick, Colleen Kehoe,
David Craig, Lex Spoon, Bolot Kerimbaev, Karen Carroll
• Course Materials Development: Adam Wilson, Jason
Ergle, Claire Bailey, David Raines, Joshua Sklare, Mark
Richman, Matt Wallace, Alisa Bandlow, Ellie Harmon, Yu
Cheung Ho, Keith McDermott, Eric Mickley, Larry Olson,
Lauren Biddle
• Assessment: Allison Tew, Andrea Forte, Rachel Fithian,
Lauren Rich, Heather Perry, Ellie Harmon
• Thanks to Bob McMath and the Al West Fund, to GVU
and CoC, to the students who participated in our
evaluation, and to the National Science Foundation
Thank you!
Mark Guzdial
http://www.cc.gatech.edu/~mark.guzdial
http://coweb.cc.gatech.edu/csl
To get the CoWeb/Swiki software:
http://minnow.cc.gatech.edu/swiki
For more on courses:
http://coweb.cc.gatech.edu/mediacomp-plan