ABSTRACT
Scratch is a "media-rich programming environment" recently developed by MIT's Media Lab that "lets you create your own animations, games, and interactive art." Although Scratch is intended to "enhance the development of technological fluency [among youths] at after-school centers in economically disadvantaged communities," we find rarkable potential in this programming environment for higher education as well.We propose Scratch as a first language for first-time programmers in introductory courses, for majors and non-majors alike. Scratch allows students to program with a mouse: programmatic constructs are represented as puzzle pieces that only fit together if "syntactically" appropriate. We argue that this environment allows students not only to master programmatic constructs before syntax but also to focus on probls of logic before syntax. We view Scratch as a gateway to languages like Java.To validate our proposal, we recently deployed Scratch for the first time in higher education via harvard Summer School's Computer Science S-1: Great Ideas in Computer Science, the summertime version of a course at harvard College. Our goal was not to improve scores but instead to improve first-time programmers' experiences. We ultimately transitioned to Java, but we first introduced programming itself via Scratch. We present in this paper the results of our trial.We find that, not only did Scratch excite students at a critical time (i.e.,, their first foray into computer science), it also familiarized the inexperienced among th with fundamentals of programming without the distraction of syntax. Moreover, when asked via surveys at term's end to reflect on how their initial experience with Scratch affected their subsequent experience with Java, most students (76%) felt that Scratch was a positive influence, particularly those without prior background. Those students (16%) who felt that Scratch was not an influence, positive or negative, all had prior programming experience.
- Apple Computer, Inc. Squeak. www.squeak.org.Google Scholar
- J. Bergin, M. Stehlik, J. Roberts, and R. E. Pattis. Karel++: A Gentle Introduction to the Art of Object-Oriented Programming. John Wiley and Sons, Inc., 1996. Google ScholarDigital Library
- J. Bergin, M. Stehlik, J. Roberts, and R. E. Pattis. Karel J Robot: A Gentle Introduction to the Art of Object-Oriented Programming in Java. CafePress.com, 2006.Google Scholar
- Carnegie Mellon University. Alice v2.0. www.alice.org.Google Scholar
- H. Wellenius. JKarel. www.fas.harvard.edu/~libe50a/jkarel.html, 2003.Google Scholar
- Lifelong Kindergarten, MIT Media Lab. llk.media.mit.edu.Google Scholar
- Lifelong Kindergarten, MIT Media Lab. Crickets. llk.media.mit.edu/projects.php?id=1942.Google Scholar
- Lifelong Kindergarten, MIT Media Lab. Scratch. weblogs.media.mit.edu/llk/scratch/.Google Scholar
- Logo Foundation. Logo. el.media.mit.edu/logo-foundation/.Google Scholar
- J. Maloney, L. Burd, Y. Kafai, N. Rusk, B. Silverman, and M. Resnick. Scratch: A Sneak Preview. In Second International Conference on Creating, Connecting, and Collaborating through Computing, pages 104--109, Kyoto, Japan, 2004. Google ScholarDigital Library
- Massachusetts Institute of Technology. StarLogo. education.mit.edu/starlogo/.Google Scholar
- MIT Media Laboratory. www.media.mit.edu.Google Scholar
- R. E. Pattis. Karel The Robot: A Gentle Introduction to the Art of Programming. John Wiley and Sons, Inc., 1995. Google ScholarDigital Library
- M. Resnick and B. Silverman. Some Reflections on Designing Construction Kits for Kids. In Proceedings of International Conference for Interaction Design and Children, Boulder, CO, 2005. Google ScholarDigital Library
- Sun Microsysts, Inc. Java Foundation Classes (JFC/Swing). java.sun.com/products/jfc/.Google Scholar
- Sun Microsysts, Inc. The AWT in 1.0 and 1.1. java.sun.com/products/jdk/awt/.Google Scholar
- U. Wilensky, Center for Connected Learning and Computer-Based Modeling, Northwestern University. Logo. ccl.northwestern.edu/netlogo/.Google Scholar
Index Terms
- Scratch for budding computer scientists
Recommendations
From Scratch to “Real” Programming
Computer science (CS) activities for young students are widely used, particularly visual programming environments. We investigated the use of the Scratch environment for teaching CS concepts to middle school students. In a previous article [Meerbaum-...
Scratch for budding computer scientists
Scratch is a "media-rich programming environment" recently developed by MIT's Media Lab that "lets you create your own animations, games, and interactive art." Although Scratch is intended to "enhance the development of technological fluency [among ...
A Scratch-based CS0 course for at-risk computer science majors
FIE '12: Proceedings of the 2012 IEEE Frontiers in Education Conference (FIE)This paper presents the results of a CS0 course based on the Scratch programming language that was designed to improve the retention of at-risk computer science majors. At the authors' university, prior to the introduction of the CS0 course, students ...
Comments