Mark Guzdial



Yüklə 10,92 Mb.
tarix08.08.2018
ölçüsü10,92 Mb.
#61098


Mark Guzdial


Computing is important for more than just those who choose to major in computing.

  • Computing is important for more than just those who choose to major in computing.

    • Helping others to innovate with computing technology
    • The challenge of computer science isn’t enrollment, it’s in meeting the demand.
  • Part 1: The History of Teaching Computing to “All”

  • Part 2: Who are “all,” what do they want, and why don’t they take computer science degrees?

  • Part 3: How do we teach those who do not want to become software engineers or computer scientists?

    • Computing for All at Georgia Tech
      • 1999-2003: One course for all
      • 2003-2008: Contextualized Computing Education






To produce reliable, robust, secure software.

  • To produce reliable, robust, secure software.

  • To work in interdisciplinary teams.

  • To use appropriate design notations, such as UML.

  • To work in multiple programming languages.





Computing is at the core of the modern society and modern economy.

  • Computing is at the core of the modern society and modern economy.

  • Computing is key to innovation in many disciplines.

  • Computer Science has a much larger potential audience beyond software developers.

    • Estimates: ~13 million non-professional programmer/end-user programmers in US by 2012, vs. ~3 million professional software developers (Scaffidi, Shaw, & Myers, 2005)


To use computation as a tool to enhance understanding.

  • To use computation as a tool to enhance understanding.

  • To write programs of (at most) 100 lines (most often, 10 lines) for themselves.

    • They care about the products of the programs, not the programs.
  • To learn as few languages as are needed for their tasks.

  • To work in interdisciplinary teams, including software engineers.



To use code to explore and understand ideas of computation.

  • To use code to explore and understand ideas of computation.

  • To learn what languages are necessary to meet standards and engage students.

  • To work with students with a wide range of interests.

    • Probably won’t work with professional software engineers


To write programs to improve their efficiency, and to implement their dynamic (e.g., Web) designs.

  • To write programs to improve their efficiency, and to implement their dynamic (e.g., Web) designs.

  • To do as little coding as possible.

  • To learn about computing ideas in order to improve their process, but with a focus on people and creativity.

      • Probably won’t work with professional software engineers


Our track record for the first CS course is poor.

  • Our track record for the first CS course is poor.

    • 30-50% failure or withdrawal rates (Bennedsen & Caspersen, 2007)
    • Other majors tend to be more female and more ethnically diverse than the typical computing student.
  • If we can’t succeed in the first course with people who want to major in CS, how do we teach others?

    • Different motivations, different tools, different products, and different languages.


Part 1: Historical: Should CS be teaching computing to everybody?

  • Part 1: Historical: Should CS be teaching computing to everybody?

  • Part 2: Do students need education about computing? What’s the cost of not learning about computing?

  • Part 3: How do we teach everyone? What methods do we use?





Alan Perlis argued that computer science should be part of a liberal education.

  • 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
      • Including how we think about things we already know


The Economist (Sept., 2007) spoke to the algorithms that control us, yet we don’t understand.

  • The Economist (Sept., 2007) spoke to the algorithms that control us, yet we don’t understand.

    • Credit Ratings, Adjustable Rate Mortgages, Search Rankings
  • C.P. Snow foresaw this in 1961.

    • Those who don’t understand algorithms, can’t understand how the decisions are made.


Alan Kay (2004 ACM Turing Awardee) sees the Computer as humanity’s first metamedium

  • Alan Kay (2004 ACM Turing Awardee) sees the Computer as humanity’s first metamedium

  • The computer-as-Dynabook is for creative metamedia exploration and reading



Perlis: To have a powerful new tool to think with.

  • Perlis: To have a powerful new tool to think with.

  • Snow: Because it’s necessary to participate and understand in the modern world.

  • Kay: To have full expressive power with the most powerful and creative medium humans have ever invented.



Brian Dorn has been studying professional graphics designers who program.

  • Brian Dorn has been studying professional graphics designers who program.

  • Conducted a series of interviews and assessment activities.

  • Found that these subjects want more computer science, but don’t find CS courses adequate (ICER, 2010)



P2: I was able to take different samples from different places and instead of just being let's say an MIS major, or computer science major, you know it's—you're not going to be front-end anything with computer science. You're going to be back-end everything.

  • P2: I was able to take different samples from different places and instead of just being let's say an MIS major, or computer science major, you know it's—you're not going to be front-end anything with computer science. You're going to be back-end everything.

  • P4: I think as a front-end developer, you focus more on the design and the usability, and you're focusing more on the audience. And then on the back-end I think you're focused on more, these are like the software developers. And they're programming something, and they don't really see what it's gonna look like; they're just making it work.



As Yardi and Bruckman (ICER 2007) found, participants held negative stereotypes of those in CS:

  • As Yardi and Bruckman (ICER 2007) found, participants held negative stereotypes of those in CS:

  • P2: I went to a meeting for some kind of programmers, something or other. And they were OLD, and they were nerdy, and they were boring! And I'm like, this is not my personality. Like I can't work with people like that. And they worked at like IBM, or places like that. They've been doing, they were working with Pascal. And I didn’t…I couldn't see myself in that lifestyle for that long.

  • P5: I don't know a whole ton of programmers, but the ones I know, they enjoy seeing them type up all these numbers and stuff and what it makes things do. Um, whereas I just do it, to get it done and to get paid. To be honest. The design aspect is what really interests me a lot more.



P7: I started out in computer science, but didn't like it at all. The fact that I wasn't learning anything new. I took an intro to programming course, and then I talked to some other people in the program and it was all repetition and I guess there wasn't any really new. So you weren't really learning any concepts. You were learning the languages, and I didn't like that at all. So that's why I left…

  • P7: I started out in computer science, but didn't like it at all. The fact that I wasn't learning anything new. I took an intro to programming course, and then I talked to some other people in the program and it was all repetition and I guess there wasn't any really new. So you weren't really learning any concepts. You were learning the languages, and I didn't like that at all. So that's why I left…

  • Do we just teach languages? Why don’t they see the concepts?



“What interests you about web design?”

  • “What interests you about web design?”

  • P12: The coding! I don't like to code. But the things that the code can do is amazing, like you can come up with this and voila, you know, it's there. Javascript for one. The plugins and stuff. I think that's very interesting, intriguing and stuff. Because I mean like the code is just, there's so much you can do with code and stuff. It's just like wow.



They learn from websites, reading lots of code, books where they can, friends.

  • They learn from websites, reading lots of code, books where they can, friends.

    • Rarely courses.
  • Surprising tidbit: Learning less than they might because of a lack of deep knowledge.

    • For example: Exploring code by searching Google for function and variable names.
  • Brian’s experiment: Given a case library with conceptual information vs. a code repository alone, what gets learned, used, and liked?



“Case Library”

  • “Case Library”

  • Project Pages

    • Project Description
    • Primary Tags
    • Use Scenarios
    • Script Development
    • Downloadable Files
    • Creative Attribution
    • Full Tag Listing
  • Indexing

  • Search





They like the cases.

  • They like the cases.

  • They code the same.

  • Case-users learn the concepts, while repository users do not.

  • Suggests how we might help non-CS professionals who discover computing late.



  • Fall 1999: All students at Georgia Tech must take a course in computer science.

    • Considered part of General Education, like mathematics, social science, humanities…
  • 1999-2003: Only one course met the requirement.

    • Shackelford’s pseudocode approach in 1999
    • Later Scheme: How to Design Programs (MIT Press)




What’s going on?

  • What’s going on?

    • Research results: Computing is “tedious, boring, irrelevant”
  • Since Spring 2003, Georgia Tech teaches three introductory CS courses.

    • Based on Margolis and Fisher’s “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)


CS1301/1321 Introduction to Computing Traditional CS1 for our CS majors and Science majors (math, physics, psychology, etc.). Now, uses robots.

  • CS1301/1321 Introduction to Computing Traditional CS1 for our CS majors and Science majors (math, physics, psychology, etc.). Now, uses robots.

  • CS1371 Computing for Engineers CS1 for Engineers. Same topics as CS1301, but using MATLAB with Engineering problems.

  • CS1315 Introduction to Media Computation for Architecture, Management, and Liberal Arts students.



Presenting CS topics with media projects and examples

  • 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








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

  • 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.”

  • “I dreaded CS, but ALL of the topics thus far have been applicable to my future career (& personal) plans—there isn't anything I don't like about this class!!!"

  • "Media Computation is a CS class but with less severity. The media part of the class is extremely visually interesting. I would only take another CS class if it were Media Computation."



19% of respondents had programmed since class ended

  • 19% of respondents had programmed since class ended

  • "Did the class change how you interact with computers?”

    • “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.’


Similar results at a 2 year public college.

  • Similar results at a 2 year public college.

  • What is relevance?

    • Not useful for degree.
    • Somewhat useful for career.
    • Mostly useful for life.
  • Would you like more CS?

    • GT 15.2% “Strongly Disagree.” <25% agree.
    • More MediaComp? GT and Gainesville over 40% agree.


A CS 0.5 (for CS majors not ready for CS1) using MediaComp Python.

  • A CS 0.5 (for CS majors not ready for CS1) using MediaComp Python.

  • Improvements in success rates.

    • Even with a more diverse population.


Using Java Media Computation as normal CS1 for CS majors at a research university.

  • Using Java Media Computation as normal CS1 for CS majors at a research university.

  • Did extensive data collection last semester before switching to Media Computation.

  • Been following two cohorts of CS1 students for comparison.





Mixed model research design

  • Mixed model research design

    • Interviews informing whole-class survey
  • 11% agreed with “Working with media is a waste of time that could be used to learn the material in greater depth.”

    • “I didn’t take this class to learn how to make pretty pictures.”
  • A majority of the class (70%) agreed or strongly agreed that working with media makes the class more interesting.

  • 67% of the students agreed or strongly agreed that they were really excited by at least one class project

  • 66% reported doing extra work on projects to make the outcome look “cool.”



Developed in collaboration with Civil, Mechanical, and Aerospace Engineering.

  • Developed in collaboration with Civil, Mechanical, and Aerospace Engineering.

  • Uses Engineering problems and MATLAB

  • Covers traditional CS1 topics

  • Among our 3 CS1’s, these are the first students to program outside of class.

  • The success rate in this class also rose compared to all-in-one.





Microsoft Research has funded the Institute for Personal Robotics in Education

  • Microsoft Research has funded the Institute for Personal Robotics in Education

    • Leads: Tucker Balch, Deepak Kumar, Doug Blank
    • Joint between Bryn Mawr College and Georgia Tech
    • http://www.roboteducation.org
  • Developing a CS1 with robotics as the context.



Use a context that is relevant to the target audience students.

  • Use a context that is relevant to the target audience students.

    • Media, Engineering, Robotics
    • Video games only captures some of the target audience.
  • Use languages and tools that make sense for the Community of Practice (Lave & Wenger, 1991)

    • Python for Liberal Arts majors
    • MATLAB for Engineering majors


What is a context?

  • What is a context?

  • Do all students learn the same in all contexts?

  • What do students perceive as a relevant context?

  • When do contexts lead to long term retention and transfer?



We don’t know, but now we can know.

  • We don’t know, but now we can know.

  • Allison Elliott Tew has just completed the first language-independent validated test of CS1 knowledge.



The future of computing is not in merely being a good programmer.

  • The future of computing is not in merely being a good programmer.

  • We innovate by bridging areas and differentiating.



We have defined 8 Threads in Computing:

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


Each Thread specifies the courses needed to know that area well.

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


New major: BS in Computational Media

  • New major: BS in Computational Media

    • ~300 students, 27% female
  • Past the first course, we now offer more undergraduate credit hours to NON-CS/CM majors than to our own majors.

  • Where is the greatest potential influence for CS faculty in society?

    • Through CS majors, or through the rest of campus?


Computing is important for everyone, CS has had a goal for over 40 years to be able to teach computing to everyone.

  • Computing is important for everyone, CS has had a goal for over 40 years to be able to teach computing to everyone.

  • End-user programmers want CS has to offer, and there are more of them than there are professional software developers.

  • Contextualized Computing Education has great promise for achieving the goal of teaching everyone (including majors) about computing.

    • We need to learn more about what makes contexts effective, and how to teach with those contexts.


US National Science Foundation

  • US National Science Foundation

    • Statewide BPC Alliance: Project “Georgia Computes!” http://www.gacomputes.org
    • CCLI for Media Computation and CPATH for teaching development Grants
  • Microsoft Research

  • Georgia Tech's College of Computing

  • Georgia’s Department of Education

  • GVU Center



http://www.cc.gatech.edu/~mark.guzdial http://home.cc.gatech.edu/csl http://www.georgiacomputes.org

  • http://www.cc.gatech.edu/~mark.guzdial http://home.cc.gatech.edu/csl http://www.georgiacomputes.org

  • For more on MediaComp approach:

  • http://www.mediacomputation.org



Yüklə 10,92 Mb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə