Media as a Context for Learning Computation - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Media as a Context for Learning Computation

Description:

Media as a Context for Learning Computation Mark Guzdial College of Computing/GVU – PowerPoint PPT presentation

Number of Views:166
Avg rating:3.0/5.0
Slides: 35
Provided by: Collegeo414
Category:

less

Transcript and Presenter's Notes

Title: Media as a Context for Learning Computation


1
Media as a Context for Learning Computation
  • Mark Guzdial
  • College of Computing/GVU

2
Story
  • Computer science education is in a sorry state
  • Thats a serious problem for GVU
  • The challenges we need to face
  • The argument for a course in digital media
  • Description of the course thats on-going now

3
Computer Science Classes Today
  • CS1 is one of the most despised courses for
    non-majors
  • CS retention rates are lower than the rest of
    campus
  • 65 for 1995 cohort, vs. 73 for Engineeering
  • Drop-out rates near 50 at many institutions
  • Female enrollment in CS is dropping nationally
  • At Georgia Tech, were below the average

4
Why?
  • Tedious, boring, lacking creativity,
    asocial
  • CS culture seems most attractive to white males.

5
CS Freshmen Majors, Fall 2001
Number SAT avg(combined)
Female 38 1342
Male 303 1371
African-American 15 1349
Hispanic 2 1350
Caucasian 233 1379
Total 341 1368
6
Why should GVU care?
  • What is our vision of computation and new media?
  • Should people just consume media? Or should they
    understand it? And even be able to create it?

In Alan Kays vision of the computer, the
Dynabook, programming itself is a medium
7
The best uses for our technologies will come from
others
  • Thomas Edison vs. D.W. Griffith
  • If we want our technologies to become useful,
    they have to get out of our hands.
  • It cant be just through applications
  • That presumes that we the researchers know how
    the technologies should be used.
  • Suggestion D.W. Griffith knew things that Edison
    didnt.

8
Why should anyone care?
  • In 1961, Alan Perlis argued that computer science
    is more important in a liberal education than
    calculus
  • Calculus is about rates, and thats important to
    many.
  • Computer science is about process, which is
    important to everyone

9
The Challenges
  • We have to motivate non-CS students to care about
    computing
  • We have to make it social, creative, exciting,
    and not tedious
  • Which is how many of us already see Computing,
    but thats not getting communicated

10
Our Attempt Introduction to Media Computation
  • A course for non-CS and non-Engineering majors
  • International Affairs, STAC, Architecture,
    Management, Biology, etc.
  • 120 students this semester,planning 400-600 in
    the Fall
  • 2/3 female in this semesters CS1315
  • Focus Learning programming within the context of
    media manipulation and creation

11
Motivating the Computing
  • As professionals, these students will often the
    use the computer as a communications medium.
  • All media are going digital,and digital media
    are manipulated with software.
  • Knowing how to program, then, is a communications
    skill.

12
Programming as a Communications Skill
  • Knowing how to program means to understand ones
    tools.
  • Maybe means can transfer tool skills more easily
  • Students already telling us that theyre excited
    to learn how PhotoShop works.
  • And it means that, if you have to, you may be
    able to grow your own

13
Programming as Communicating Process
  • A program is a succinct, executable process
    description
  • That makes valuable for explaining process
  • We use examples from Biology and Management to
    make this point

14
Python as the programming language
  • Huge issue
  • Use in commercial contexts authenticates the
    choice
  • ILM, Google, Nextel, etc.
  • Minimal syntax
  • Looks like other programming languages
  • Potential for transfer

15
How the class was developed
  • Created in response to recent unpleasantness
  • On-line surveys, meetings with students
  • Inspired in part by ECEs DSP First
  • Developed with an advisory board from across
    campus Psych, HPS, Math, ECE, CETL
  • Trialed in faculty workshop in mid-December

16
Course Objectives
  • Students will be able to read, understand, and
    modify programs that achieve useful communication
    tasks
  • Not programming from a blank piece of paper
  • Students will learn what computer science is
    about, especially data representations,
    algorithms, encodings, forms of programming.
  • Students will learn useful computing skills,
    including graphing and database concepts

17
Use a loop!Our first picture recipe
original
def decreaseRed(picture) for p in
getPixels(picture) valuegetRed(p)
setRed(p,value0.5)
Used like this gtgtgt file"/Users/guzdial/mediasour
ces/barbara.jpg" gtgtgt picturemakePicture(file) gtgtgt
show(picture) gtgtgt decreaseRed(picture) gtgtgt
repaint(picture)
18
A Sunset-generating function
  • How do we turn this beach scene into a sunset?
  • What happens at sunset?
  • Tried increasing the red, but that failed.
  • New 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) valuegetBlue(p)
setBlue(p,value0.7) valuegetGreen(p)
setGreen(p,value0.7)
20
def clearRed(picture) for pixel in
getPixels(picture) setRed(pixel,0)
def greyscale(picture) for p in
getPixels(picture) rednessgetRed(p)
greennessgetGreen(p) bluenessgetBlue(p)
luminance(rednessbluenessgreenness)/3
setColor(p, makeColor(luminance,luminance,
luminance))
def negative(picture) for px in
getPixels(picture) redgetRed(px)
greengetGreen(px) bluegetBlue(px)
negColormakeColor(255-red,255-green,255-blue)
setColor(px,negColor)
21
Using your personal pictures
22
And messin with them
23
Data-first
  • Real users come to a user with data that they
    care about, then they (unwillingly) learn the
    computer to manipulate their data as they need.
  • CS1315 can work the same.
  • Students can bring their pictures, sounds, and
    movies as starting points for manipulations.

24
Rough overview of Syllabus
  • Defining and executing functions
  • Pictures
  • Psychophysics, data structures, defining
    functions, for loops, if conditionals
  • Sounds
  • Psychophysics, data structures, defining
    functions, for loops, if conditionals
  • Text
  • Converting between media, generating HTML,
    flattening media and saving to a database
  • Movies
  • Then, Computer Science

25
Computer science as a solution to their problems
  • Writing programs is hard! Are there ways to make
    it easier or shorter?
  • Functional programming and recursion
  • Object-oriented programming
  • Movie-manipulating programs take a long time to
    execute. Why?
  • Algorithmic complexity
  • Why is PhotoShop so much faster?
  • Compiling vs. interpreting

26
Assignments encourage collaboration
  • Homework are all collaborative
  • Quizzes are preceded by nearly-identical,
    collaborative pre-quizzes
  • Two take-home exams (programming assignments)
    are non-collaborative

27
Assignments encourage creativity
  • For several homework, the task is to manipulate
    media in some way, but we dont care what media
  • Creating a collage, building an animation
  • Encouraging homework results to be posted to
    CoWeb in galleries
  • Purchasing Webcams to loan to students to create
    their own media

28
These arent CMU CS undergrads
  • Were realizing that these students are not like
    the ones in the Fisher Margolis class.
  • Students who can get into CMUs CS program (often
    the computer experts in their families and
    schools) are not the same as non-CS and
    non-Engineering students at Georgia Tech.
  • I type the command and nothing happens. The
    Enter key?
  • Do I need a Zip disk to unpack a zip file?

29
Tying it back to student goals and GVU
  • Working with Jay Bolter (jay.bolter_at_lcc.gatech.edu
    ) and Diane Gromalas new course LCC 3404e
    Designing for the Internet
  • Aimed at Freshmen and Sophomores
  • Students learn to analyze and design Web sites
  • Approach combines
  • Visual design principles
  • Information architecture and HCI
  • CS1315 teaches the students the
    technologies,LCC3404e teaches them how to use
    the technology to communicate.

30
Assessing the effort
  • Comparing CS1321, COE1361, and CS1315 in terms of
    learning and motivation, broken out by gender and
    major
  • Observational study of student performance to
    understand problems and strategies
  • Interview study of impact on women

31
Summary
  • CS Education is in a sorry state,and fixing it
    is important to us and others
  • Media Computation may be a useful context to
    motivate student performance
  • Our class is aimed at addressing the challenges
    weve identified, and were trying it now

32
Acknowledgements
  • Course materials development Jason Ergle, Claire
    Bailey, David Raines, Joshua Sklare, Adam Wilson,
    Andrea Forte, Mark Richman, Matt Wallace, Alisa
    Bandlow.
  • Assessment Andrea Forte, Rachel Fithian, Lauren
    Rich
  • Thanks to Bob McMath and the Al West Fund, to GVU
    and CoC, and the National Science Foundation

33
For further information
  • Course CoWeb http//coweb.cc.gatech.edu/cs1315
  • Where we planned the coursehttp//coweb.cc.gatec
    h.edu/mediaComp-plan
  • guzdial_at_cc.gatech.edu

34
def chromakey(source,bg) for x in
range(1,getWidth(source)) for y in
range(1,getHeight(source)) p
getPixel(source,x,y) My definition of
blue If the redness greenness lt blueness
if (getRed(p) getGreen(p) lt getBlue(p))
Then, grab the color at the same spot from the
new background setColor(p,getColor(getPixe
l(bg,x,y))) return source
Write a Comment
User Comments (0)
About PowerShow.com