ABSTRACT
We describe a code reuse tool for use in the Looking Glass IDE, the successor to Storytelling Alice [17], which enables middle school students with little to no programming experience to reuse functionality they find in programs written by others. Users (1) record a feature to reuse, (2) find code responsible for the feature, (3) abstract the code into a reusable Actionscript by describing object "roles," and (4) integrate the Actionscript into another program. An exploratory study with middle school students indicates they can successfully reuse code. Further, 36 of the 47 users appropriated new programming constructs through the process of reuse.
Supplemental Material
- Brandt, J., Dontcheva, M., Weskamp, M., and Klemmer, S.R. Example-Centric Programming: Integrating Web Search into the Development Environment. Stanford University Technical Report, CSTR-2009-01.Google Scholar
- Bruckman, A. MOOSE Crossing: Construction, Community, and Learning in a Networked Virtual World for Kids. MIT Media Lab. Boston, MA., 1997. Google ScholarDigital Library
- Cottrell, R., Chang, J., Walker, R.J., and Denzinger, J. Determining detailed structural correspondence for generalization tasks. Proc. SIGSOFT, (2007), 165--174. Google ScholarDigital Library
- Cottrell, R., Walker, R.J., and Denzinger, J. Semi-automating small-scale source code reuse via structural correspondence. Proc. SIGSOFT (2008), 214--225. Google ScholarDigital Library
- Duala-Ekoko, E. and Robillard, M.P. Tracking Code Clones in Evolving Software. Proc. ICSE (2007), 158--167. Google ScholarDigital Library
- Fischer, G., Henninger, S., and Redmiles, D. Cognitive tools for locating and comprehending software objects for reuse. Proc. ICSE (1991), 318--328. Google ScholarDigital Library
- Gill, J. Shedding Some New Light on Old Truths: Student Attitudes to School in Terms of Year Level and Gender. Proc. of the American Educational Research Association. (1994).Google Scholar
- Goldman, M. and Miller, R. Codetrail: Connecting source code and web resources. Proc. VL/HCC (2008), 65--72. Google ScholarDigital Library
- Gross, P. and Kelleher, C. Non-programmers Identifying Functionality in Unfamiliar Code: Strategies and Barriers. Proc. VL/HCC (2009), 75--82. Google ScholarDigital Library
- Hartmann, B., Wu, L., Collins, K., and Klemmer, S.R. Programming by a sample: rapidly creating web applications with d.mix. Proc. UIST, ACM (2007), 241--250. Google ScholarDigital Library
- Hoffmann, R., Fogarty, J., and Weld, D.S. Assieme: finding and leveraging implicit references in a web search interface for programmers. Proc. UIST, ACM (2007), 13--22. Google ScholarDigital Library
- Holmes, R., Walker, R., and Murphy, G. Approximate Structural Context Matching: An Approach to Recommend Relevant Examples. IEEE Trans. On Soft. Eng. (2006), 952--970. Google ScholarDigital Library
- Holmes, R., Cottrell, R., Walker, R.J., and Denzinger, J. The End-to-End Use of Source Code Examples: An Exploratory Study. Proc. ICSM, (2009), to appear.Google ScholarCross Ref
- Holmes, R., Walker, R.J., and Murphy, G.C. Strathcona example recommendation tool. Proc. ESEC/FSE, ACM (2005), 237--240. Google ScholarDigital Library
- Jablonski, P. and Hou, D. CReN: a tool for tracking copy-and-paste code clones and renaming identifiers consistently in the IDE. Proc. OOPSLA, ACM (2007), 16--20. Google ScholarDigital Library
- Kelleher, C. and Pausch, R. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Comput. Surv. 37, 2 (2005), 83--137. Google ScholarDigital Library
- Kelleher, C. and Pausch, R. Using storytelling to motivate programming. Comm. of ACM 50, 7 (2007), 58--64. Google ScholarDigital Library
- Kelleher, C., Pausch, R., and Kiesler, S. Storytelling alice motivates middle school girls to learn computer programming. Proc. CHI, ACM (2007), 1455--1464. Google ScholarDigital Library
- Ko, A.J. and Myers, B.A. Designing the whyline: a debugging interface for asking questions about program behavior Proc. CHI, ACM (2004), 151--158. Google ScholarDigital Library
- Krueger, C.W. Software reuse. ACM Comput. Surv. 24, 2 (1992), 131--183. Google ScholarDigital Library
- Lanza, M. CodeCrawler-lessons learned in building a software visualization tool. Proc. CSMR, (2003), 409--418. Google ScholarDigital Library
- Leshed, G., Haber, E.M., Matthews, T., and Lau, T. CoScripter: automating & sharing how--to knowledge in the enterprise. Proc. CHI, ACM (2008), 1719--1728. Google ScholarDigital Library
- Lucredio, D., Prado, A., and de Almeida, E. A survey on software components search and retrieval. Proc. Euromicro Conference (2004), 152--159. Google ScholarDigital Library
- Lukoit, K., Wilde, N., Stowell, S., and Hennessey, T. TraceGraph: immediate visual location of software features. Proc. ICSM, (2000), 33--39. Google ScholarDigital Library
- Maloney, J., Burd, L., Kafai, Y., Rusk, N., Silverman, B., and Resnick, M. Scratch: a sneak preview {education}. Proc. C5 (2004), 104--109. Google ScholarDigital Library
- Mili, H., Mili, F., and Mili, A. Reusing software: issues and research directions. Software Engineering, IEEE Trans. on Soft. Eng. 21, 6 (1995), 528--562. Google ScholarDigital Library
- Mili, A., Mili, R., and Mittermeir, R. A survey of software reuse libraries. Annals of Soft. Eng. 5, 1 (1998), 349--414. Google ScholarDigital Library
- Olney, S. and Myers, B. FireCrystal: Understanding Interactive Behaviors in Dynamic Web Pages. Proc. VL/HCC, (2009), 105--108. Google ScholarDigital Library
- Prieto-Diaz, R. Status report: software reusability. IEEE Software 10, 3 (1993), 61--66. Google ScholarDigital Library
- Ruthruff, J., Creswick, E., Burnett, M., et al. End-user software visualizations for fault localization. Proc. SoftVis, ACM (2003), 123--132. Google ScholarDigital Library
- Sahavechaphan, N. and Claypool, K. XSnippet: mining for sample code. SIGPLAN Not. 41, 10 (2006), 413--430. Google ScholarDigital Library
- Schafer, T., Eichberg, M., Haupt, M., and Mezini, M. The SEXTANT Software Exploration Tool. IEEE Trans. on Soft. Eng. 32, 9 (2006), 753--768. Google ScholarDigital Library
- Storey, M. and Muller, H. Manipulating and documenting software structures using SHriMP views. Proc. ICSM, (1995), 275--284. Google ScholarDigital Library
- Thummalapenta, S. and Xie, T. Parseweb: a programmer assistant for reusing open source code on the web. Proc. ASE, ACM (2007), 204--213. Google ScholarDigital Library
- Yongbeom, Kim and Stohr, E.A. Software Reuse: Survey and Research Directions. Journal of Management Info. Sys. 14, 4 (1998), 113--147. Google ScholarDigital Library
- Zimmer, L. and Bennett, S. Gender differences on the California statewide assessment of attitudes and achievement in science. Proc. of the American Educational Research Association, (1987).Google Scholar
- Zweben, S. 2007-2008 Taulbee Survey. Computing Research News 21, 3 (2009), 8--23.Google Scholar
Index Terms
- A code reuse interface for non-programmer middle school students
Recommendations
An Electrical Engineering Summer Academy for Middle School and High School Students
An Electrical Engineering Summer Academy for Pre-College Students was held at the University of Tulsa, Tulsa, OK, during the summers of 2007 and 2008. The Academy participants included students having just completed 7th to 11th grade and teachers from ...
Weaving computing into all middle school disciplines
ITiCSE '14: Proceedings of the 2014 conference on Innovation & technology in computer science educationIn order to get students interested in computing, we teach middle school teachers of different disciplines programming with Alice and work with them on integrating computing into their discipline. Alice provides an interface for novices to create ...
Engaging middle school teachers and students with alice in a diverse set of subjects
SIGCSE '09: Proceedings of the 40th ACM technical symposium on Computer science educationThis paper describes the integration of the Alice 3D virtual worlds environment into a diverse set of subjects in middle school, including the development of tutorials, example worlds and lesson plans. In the summer of 2008 our experiences with middle ...
Comments