Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

LaTICE 2016: Learner-Centered Design of Computing Education for All

560 views

Published on

Computing education is in enormous demand. Many students (both children and adult) are realizing that they will need programming in the future. I argue that they are not all going to use programming in the same way and for the same purposes. What do we mean when we talk about teaching *everyone* to program? Should we have the same goals as computer science education for professional software developers? How do we design computing education that works for everyone? I propose the use of a learner-centered design approach to create computing education for a broad audience. I review the history of the idea that programming isn’t just for the professional software developer, and present case studies to explore the idea that computer science for everyone requires us to re-think how we teach and what we teach.

Published in: Education
  • Be the first to comment

LaTICE 2016: Learner-Centered Design of Computing Education for All

  1. 1. Learner-Centered Design of Computing Education for Everyone Mark Guzdial School of Interactive Computing
  2. 2. The Two Cultures
  3. 3. • A software engineer who builds applications for end- users. • A mathematician who works in Mathematica her whole life. • A graphic designer who programs in JavaScript to automate Photoshop processes. • The data scientist who scrubs data with Perl and analyzes in R. • A chemical engineer who writes 20 new lines of MATLAB code each day, then throws them away. • The office worker who builds Excel macros weekly for co- workers. • The homeowner who writes home automation scripts. • The musician who codes live in front of an audience. Do all of these use the same CS practices and knowledge?
  4. 4. Story I. Our Job: The first computer scientists set a goal to achieve a Computing-Literate Society. II. Challenges to Achieving a Computing-Literate Society • Access and the Inverse Lake Wobegon Effect • Learner-Centered Design III. Inventing New Kinds of Computing Education for Different Communities of Practice • Story #1: Providing Computing Education for Graphics Designers’ Community of Practice. • Story #2: Understanding the Needs of High School CS Teachers.
  5. 5. Papert, Logo, DiSessa, Boxer
  6. 6. 1961 MIT Sloan School Symposium
  7. 7. 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 • Including how we think about things we already know
  8. 8. Elias: Does it have to be programming? • Licklider: Peter, I think the first apes who tried to talk with one another decided that learning language was a dreadful bore…But some people write poetry in the language we speak. • Perlis: The purpose of a course in programming is to teach people how to construct and analyze processes…A course in programming is concerned with abstraction: the abstraction of constructing, analyzing, and describing processes…The point is to make the students construct complex processes out of simpler ones….A properly designed programming course will develop these abilities better than any other course. 8
  9. 9. “A handful of people, having no relation to the will of 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.” 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, Search Rankings • C.P. Snow foresaw this in 1961. • Those who don’t understand algorithms, can’t understand how the decisions are made.
  10. 10. II. Challenges • Access and Diversity: We aren’t reaching everyone. • Inverse Lake Wobegon Effect: We see little of the problem. • Learner-Centered Design: A strategy for creating computing for everyone
  11. 11. Thanks to Brian Danielak
  12. 12. Lake Wobegon Effect
  13. 13. Inverse Lake Wobegon Effect • We only know the top half. • People who take CS in undergraduate are above average. • People who get access to CS education are among the most privileged in
  14. 14. Learner-Centered Design • Learners are different than experts (Soloway, Guzdial, & Hay 1994) • Designing for learners starts with understanding learners, their learning needs, and how they want to learn.
  15. 15. III. Inventing New Kinds of Computing Education • Different Communities of Practice => Different Learning Objectives • Story #1: Providing Computing Education for Graphics Designers’ Community of Practice • Story #2: Understanding the Needs of Secondary School Computing Teachers
  16. 16. CS for Everyone/All • Efforts in many countries to make computing education available to all students. • Do all students need or want the same CS education? • Do they all need or want the same expertise? To be the same kind of practitioner?
  17. 17. Sociocognitive Theories of Learning • Situated Learning (Lave & Wenger) says that students seek to join a community of practice. • Students’ Goal: To adopt the practices and learn the values of those at the center of the community of practice.
  18. 18. Beyond a Software Development CoP Most people who program are not part of a software developer community of practice (CoP). http://changetheequation.org/blog/hidden- half
  19. 19. Student values based on perceived CoP Students who value media development want different kinds of programming languages than those who want to be programmers. (DiSalvo, 2015) Authenticity matters. (Shaffer & Resnick, 1999)
  20. 20. Story #1: Computing Education for Graphics Designers’ Community of Practice Significant amount of programming from designers who reject the identity of “programmer.”
  21. 21. Fitting into existing practice: Graphics designers who program • Brian Dorn conducted a series of interviews and assessment activities. • Found that these subjects want more computer science, but don’t find courses (and most other resources) adequate (Dorn & Guzdial, ICER 2010) • P10: So, that was a really long way of saying yes, I think that an academic study would make me a better programmer, but not by a whole lot.
  22. 22. Where are they getting their CS knowledge? • Mostly on-line: • FAQs and other documentation • Books (when applicable) • Lots of examples and networking. • Not so much classes 22 Dorn & Guzdial, CHI 2010
  23. 23. Rejection of programming CoP • They reject, and feel rejected in return, by programmers: • P9: “I met a guy who programs ATM machines, and he busted me for calling myself a coder. He says, well no, you’re a scripter. And the coders you know, they’re down there in the dirty behind the scenes playing with the rendering buffers and you know, moving bits of memory back and forth.” • 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.”
  24. 24. What do software engineers do? Answer: The Boring Stuff. • 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.
  25. 25. They are not afraid of coding • “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.
  26. 26. They’re Inefficient without Initial Knowledge • Learning less than they might because of a lack of deep knowledge. • For example: Exploring code by searching Google for function and variable names. • Learning about Java when programming in JavaScript • Brian’s experiment: Given a case library with conceptual information vs. a code repository alone, what gets learned, used, and liked? (ICER 2011)
  27. 27. 27
  28. 28. Bottomline: Cases work • They like the cases. • They coded the problems the same. • Case-users learn the concepts, while repository users do not. • Graphic designers won’t take classes “for programmers.” • So, we provide learning opportunities where they are looking for them. 28
  29. 29. Story #2: Understanding CS Teacher’s Needs To be successful, CS teachers need: 1. A sense of identity • Where does that sense of identity come from? • Confidence in their ability to teach • For US CS teachers, from community and role models. (Lijun Ni, 2011) 2. More professional learning: CK and PCK
  30. 30. Teachers need their Communities “I’m a better Math teacher, just because I’ve had so much support. Whenever I have problems, I can talk with the people that I work with, most of who have taught for many years in Math.…Every day, I’m eating lunch with Math teachers. With Computer Science, I’ve got nobody to talk to.” From Lijun Ni’s 2011 thesis on CS teacher identity
  31. 31. Disciplinary Commons Group of educators from diverse institutions who teach within the same subject area meeting monthly over an academic year. In monthly increments, the participants prepare a course portfolio. Goals 1. To document and share knowledge about student learning in Computer Science classrooms. 2. To establish practices for the scholarship of teaching by making it public, peer-reviewed, and amenable for future use and development by other educators. [1] [1] Tenenberg, J. and Fincher, S. Opening the door of the computer science classroom: the Disciplinary Commons. SIGCSE Bull., 39, 1 2007, 514-518.
  32. 32. DCCE in Georgia Disciplinary Commons for Computing Educators Adaptation – High School teachers AND University Goals 1. Creating community 2. Sharing resources and knowledge of how things are taught in other contexts AND… 3. Supporting student recruitment within the high school environment Work by Briana Morrison, Lijun Ni, Ria Galanos, & Allison Elliott Tew
  33. 33. Building Community Partnerships Before (PRE) DCCE Partnerships After (POST) DCCE Morrison, Ni, & Guzdial, ICER
  34. 34. Improving Recruiting • 302% increase in number of AP CS students in the year following their participation in the DCCE • Year of participation – 122 students enrolled • Next year – 491 students pre-registered • One teacher 700% increase (3 to 24 students) • Reasons: 1. Venue to share recruitment ideas 2. Sense of community (keep up morale during recruiting)
  35. 35. Teacher Confidence “I think DCCE definitely did help [me feel more confident]. I think it was just being a part of a community of teachers that you can actually talk with about teaching. That gives you confidence when you don’t teach it in a vacuum.”
  36. 36. How do you prepare your students for the AP CS exam? 36 • “Everything in that class is more or less an assessment. They’re supposed to read certain sections in the book, and then they have quizzes over the reading. After they do the reading assignments, they have Gridworld case study quizzes and also Gridworld case study segments of code that they will go in and manipulate to change to get the things in the Gridworld case study to react different ways. Those are pretty much graded as labs or programs or quizzes.”
  37. 37. How do you prepare your students for the AP CS exam? 37 • “Everything in that class is more or less an assessment. They’re supposed to read certain sections in the book, and then they have quizzes over the reading. After they do the reading assignments, they have Gridworld case study quizzes and also Gridworld case study segments of code that they will go in and manipulate to change to get the things in the Gridworld case study to react different ways. Those are pretty much graded as labs or programs or quizzes.”
  38. 38. How do you prepare your students for the AP CS exam? 38 • And then if I read these [student quizzes], I can see any misconceptions or gaps in what I’ve done. I get a picture in my mind of where the current class is. Making them do the explaining is new this year. I’m seeing them do a lot better there. I‘ll do like little code (assignments) that they’ll write once a week. They have to write it by hand away from the computer, and I’ll read that and write them comments on what they’re doing and help them grade it with a rubric, and also pass them back after I’ve read them for them to grade, too, and have them look at what was catching it or where it didn’t quite get to it.
  39. 39. How do you prepare your students for the AP CS exam? 39 • And then if I read these [student quizzes], I can see any misconceptions or gaps in what I’ve done. I get a picture in my mind of where the current class is. Making them do the explaining is new this year. I’m seeing them do a lot better there. I‘ll do like little code (assignments) that they’ll write once a week. They have to write it by hand away from the computer, and I’ll read that and write them comments on what they’re doing and help them grade it with a rubric, and also pass them back after I’ve read them for them to grade, too, and have them look at what was catching it or where it didn’t quite get to it.
  40. 40. A successful CS teacher… 40 • Writes assignments and comments, not code. • Guides students through rubrics. • Focus on learning activities (coding away from the computer, explaining). • Minimal focus on assessment. …is not a Software Developer.
  41. 41. Teaching CS Teachers online 41 • Can we reach more potential CS teachers online? • Emphasizing the skills and knowledge of successful CS teachers. • Providing more efficient learning than apprenticeship. • Providing support for a sense of community
  42. 42. An Ebook for Teaching CS Teachers
  43. 43. Parsons Problems
  44. 44. Findings on Ebook Ericson, Guzdial, & Morrison, ICER 2015 Teachers who engaged in the ebook increased their confidence in teaching CS Ericson, Moore, Morrison, & Guzdial, WiPSCE 2015
  45. 45. Conclusions • It’s a foundational CS problem to develop a computing-literate society. • The challenges are enormous, including providing for different communities of practice. • A solution may be a learner-centered design process. • Two lessons from our work: 1. Provide learning opportunities where the learners are, without the identity of “programmer.” 2. Teachers don’t need to be software developers. They need community, confidence, and more learning options beyond apprenticeship.
  46. 46. Thanks to colleagues and supporters • Colleagues: Barbara Ericson, Tom McKlin, Rick Adrion, Renee Fall, Brad Miller, Ria Galanos, Allison Elliott Tew, Lijun Ni, & Briana Morrison • Our Funders: US National Science Foundation • Statewide BPC Alliance: Project “Georgia Computes!” http://www.gacomputes.org • Expanding Computing Education Pathways Alliance, http://expandingcomputing.org • CCLI and CPATH Grants, and now CE21 and IUSE to produce ebooks • Georgia’s Department of Education • GVU Center, and Institute for People and Technology (iPaT) at Georgia Tech
  47. 47. Thank you! • http://www.cc.gatech.edu/~mark.guzdial • Group pages: http://home.cc.gatech.edu/csl • Ebook Access: http://ebooks.cc.gatech.edu/TeachCSP-Python • Media Computation: http://mediacomputation.org • Institute for Computing Education at Georgia Tech: • http://coweb.cc.gatech.edu/ice-gt • Expanding Computing Education Pathways (ECEP): • http://ecepalliance.org
  48. 48. Spare Slides
  49. 49. They want to know more • P1: So I mean technology changes. So what I am ideally looking to focus on are like the foundation. The things that change less, you know what I'm saying? Like computer science um, theory, you know I'm saying I mean? That kind of like, it's applicable to what I do, and it's not so constantly shifting. • P10: I was the kind of programmer that could make stuff work. But I didn't really have solid understandings. At one point I picked up a book on design patterns and I looked at it, and I was like that's really, that's really interesting…So I was like well I wanna keep doing that because it made me a better programmer. And it was more fun to program, and it was more thought 49
  50. 50. Does it have to be programming? • Elias: If the computers, together with sufficiently ingenious languages and programming systems, are capable of doing everything that Professor Perlis describes—and I believe they are (and more)—then they should be ingenious enough to do it without the human symbiote being obliged to perform the mechanical chores which are a huge part of current programming effort, and which are a large part of what must now be taught in the introductory course that he proposes. 50
  51. 51. Richard Dawkins on Biology as Computer Science • On US National Public Radio in April 2007: • 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.
  52. 52. Creating DCCE Mtg Month Original DC Topic DCCE Schedule 1 Oct Institutional Context & personal trajectory into teaching Personal trajectory into teaching 2 Nov Curricular Context Institutional Context, Recruiting 3 Dec Course Content Curricular Context, Course Content 4 Jan Instructional Design Instructional Design 5 Feb Student Assessment Teaching Philosophy, Reflection Log 6 Mar Evaluation Student Assessment, Grading Rubrics 7 Apr Delivery (including debrief of peer observation) Peer Observation Debrief 8 May Complete “first draft” overview Student Feedback 9 June Portfolio Presentations Portfolio Presentations GA specific: GA university computing curricula, HS competitions, field trip possibilities
  53. 53. Year 3 • HS teachers only • Outside GAMtg Month Portfolio Section 1 Sept Personal trajectory into teaching, Selection Structures 2 Oct Institutional & Curricular Context, Repetition Structures 3 Nov Instructional Design, Recruiting, Teaching Classes 4 Jan Teaching Philosophy, Reflection Log, Arrays and Sorting 5 Feb Student Assessment, Grading Rubrics, Recursion 6 Mar Student Feedback, Inheritance / Polymorphism 7 Apr Peer Observation Debrief 8 May Portfolio Presentations • Discipline specific content area • Mini-conference to bring in University teachers
  54. 54. Histogram of who took AP CS 2012 in US States % female exam-takers # Black exam-takers # Hispanic exam-takers Ericson, Guzdial, SIGCSE

×