Using Storytelling to Make Computer Programming Attractive to Middle School Girls
Total Page:16
File Type:pdf, Size:1020Kb
Motivating Programming: using storytelling to make computer programming attractive to middle school girls Caitlin Kelleher November, 2006 CMU-CS-06-171 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy. Thesis Committee: Randy Pausch (chair) Jessica Hodgins Sara Kiesler Alan Kay, Viewpoints Research Copyright © 2006 Caitlin Kelleher This research was sponsored by the Office of Naval Research under grant no. N00140210439 and by the National Science Foundation (NSF) under grant nos. IIS-0329090, DUE-0339734, IIS-0121629, IIS-9812012 and a generous NSF Graduate Fellowship. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of any sponsoring institution, the U.S. government or any other entity. Keywords: programming environments, gender, computer science education, motivation, storytelling, Alice, Stencils Abstract Women are currently under-represented in computer science. Increasing the numbers of female students who pursue computer science has the potential both to improve the technology we create by diversifying the viewpoints that influence technology design and to help fill projected computing jobs. Numerous studies have found that girls begin to turn away from math and science related disciplines, including computer science, during middle school. By the end of eighth grade, twice as many boys as girls are interested in pursuing science, engineering, or technology based careers. In this thesis, I describe Storytelling Alice, a programming environment that gives middle school girls a positive first experience with computer programming. Rather than presenting programming as an end in itself, Storytelling Alice presents programming as a means to the end of storytelling, an motivating activity for a broad spectrum of middle school girls. The development of Storytelling Alice was informed by formative user testing with more than 250 middle school aged girls. To determine girls’ storytelling needs, I observed girls interacting with Storytelling Alice and analyzed their storyboards and the story programs they developed. To enable and encourage middle school girls to create the kinds of stories they envision, Storytelling Alice includes high-level animations that enable social interaction between characters, a gallery of 3D objects designed to spark story ideas, and a story-based tutorial presented using Stencils, a new tutorial interaction technique. To determine the impact of the storytelling focus on girls’ interest in and success at learning to program, I conducted a study comparing the experiences of girls introduced to programming using Storytelling Alice with those of girls introduced to programming using a version of Alice without storytelling features (Generic Alice). Participants who used Storytelling Alice and Generic Alice were equally successful at learning basic programming concepts. However, I found that users of Storytelling Alice show more evidence of engagement with programming. Storytelling Alice users spent 42% more time programming and were more than three times as likely to sneak extra time to continue working on their programs (51% of Storytelling Alice users vs. 16% of Generic Alice users snuck extra time). Acknowledgements First, I would like to thank my advisor, Randy Pausch, for his frank thoughts and tireless support. He gave me a tremendous amount of freedom to explore what is fundamentally a muddy area while continually encouraging me to find ways to objectively measure success. My committee members Jessica Hodgins, Sara Kiesler, and Alan Kay provided valuable feedback that guided both my research and my presentation of it. Several organizations helped me to find middle school girls for both the formative and summative evaluations. Thanks to the Carnegie Museum of Natural History, Georgia Tech’s TEC camp, the Houston Museum of Natural Science, the PALS homeschooling group, NPHEP, and the Girl Scouts of Western Pennsylvania. I also owe a large debt of gratitude to the many girls (and their parents) who participated in the development and testing of Storytelling Alice. The undergraduates who participated in the Designing Interactive Narrative Components helped me begin to understand the space of inspiring kids’ story ideas. I continued to learn from their work long after the end of the seminar. I would like to thank Dennis Cosgrove, Adam Fass, Andrew Faulring, Desney Tan, Gabriel Yu, and all of the other Stage 3 folk I have had the good fortune to work and play with. Finally, I am grateful for the support of my parents, William and Denise Kelleher, and my sister Erin. Contents Chapter 1 Introduction ...................................................................................1 1.1 Introduction............................................................................................. 1 1.2 A Pragmatic Need for Diversity in Computer Science........................... 2 1.3 Attracting Women to CS......................................................................... 5 1.4 Middle School Girls................................................................................ 7 1.4.1 Gender Expectations....................................................................... 7 1.4.2 Academics....................................................................................... 8 1.4.3 Identity Formation .......................................................................... 8 1.4.4 Middle School Girls and Computers............................................... 9 1.5 Storytelling as a Motivating End .......................................................... 10 1.6 Leveraging Alice 2................................................................................ 11 1.7 Research and Contributions .................................................................. 12 1.7.1 Formative Testing......................................................................... 12 1.7.2 Development of Storytelling Alice ............................................... 13 1.7.3 Development of Storytelling Alice ............................................... 15 1.7.4 Contributions................................................................................. 17 Chapter 2 Introduction to Alice 2.................................................................19 2.1 Why Alice?........................................................................................... 19 2.2 Creating Alice Worlds .......................................................................... 22 2.2.1 Adding and Positioning 3D Objects ............................................. 23 2.2.2 Creating Sequential Programs....................................................... 24 2.2.3 Using Programming Constructs.................................................... 30 2.2.4 Creating New Methods ................................................................. 34 2.2.5 Creating methods with parameters................................................ 35 2.3 Storytelling Alice.................................................................................. 37 2.4 Motivating Novice Programming Environments.................................. 38 Chapter 3 Formative User Testing...............................................................41 3.1 Introduction........................................................................................... 41 3.2 Participants............................................................................................ 41 3.2.1 Girls in STEM Camps................................................................... 41 3.2.2 Home-schooled Students.............................................................. 44 3.2.3 Girl Scouts.................................................................................... 46 3.2.4 Why not schools?.......................................................................... 48 3.3 Types of Data........................................................................................ 49 3.3.1 Classroom observations................................................................ 49 3.3.2 Storyboards ................................................................................... 51 3.3.3 Alice logs...................................................................................... 54 3.3.4 Classroom discussions.................................................................. 55 3.3.5 Surveys.......................................................................................... 55 3.4 Methods................................................................................................. 56 3.5 Usability Changes................................................................................. 58 3.5.1 Switching Between the Scene View and the Programming View 58 3.5.2 Too Many Methods Displayed...................................................... 59 3.5.3 Losing Objects in the Scene.......................................................... 59 3.6 Issues about Programming.................................................................... 60 3.6.1 Editing methods is tempting and dangerous for new users........... 61 3.6.2 New users are often forced to tackle events quickly..................... 61 3.6.3 New users frequently make recursive calls................................... 62 Chapter 4 Enabling Storytelling...................................................................65