Alice (software)
From Wikipedia, the free encyclopedia
Basic animation of an ice skater |
|
Design by | Carnegie Mellon University |
---|---|
Initial release | 1999 |
Latest release | 2.0 / April 5, 2005 |
Written in | Java |
Type | Educational |
License | Original BSD |
Website | http://www.alice.org |
Alice is a free and open source[1] object-oriented educational programming language with an integrated development environment (IDE). It is implemented in Java. Alice uses a drag and drop environment to create computer animations using 3D models. The software is developed by researchers at Carnegie Mellon, including the late Randy Pausch. Alice was developed to address three core problems in educational programming:[2]
- Most programming languages are designed to be usable for "production code" thus introducing additional complexity. Alice is designed solely to teach programming. Alice can be used for 3D user interface. The user can program in arrow keys and other controls.
- Alice is conjoined with its IDE. There is no syntax to remember. However, it supports the full object-oriented, event driven model of programming.
- Alice is designed to appeal to specific subpopulations not normally exposed to computer programming, such as female students of middle school age, by encouraging storytelling as opposed to most other programming languages which are designed around computation.
In controlled studies at Ithaca College and Saint Joseph's University looking at students with no prior programming experience taking their first computer science course, the average grade went from a C to a B and the retention increased from 47% to 88%.[3]
A variant of Alice 2.0 called Storytelling Alice was created by Caitlin Kelleher for her PhD dissertation. It includes 3 main differences:[4]
- High-level animations that enable users to program social interactions between characters.
- A story-based tutorial that introduces users to programming through building a story.
- A gallery of 3D characters and scenery with custom animations designed to spark story ideas.
It appeared to increase interest (42% increase in programming time and over 3x as many students doing additional work as Generic Alice) without any drop off in basic programming tasks acquired.[5]
Alice 2.2 has been updated but is still in beta status. Although many bugs have been fixed, performance of the video export feature is still somewhat variant with different graphics adapters and different versions of QuickTime.[6]
Alice 3.0 is being underwritten by Electronic Arts and will utilize character models from The Sims 2.[7] In fall 2008, there was an alpha test, which is to be followed by the beta test in spring 2009.[8] The full release is planned in Summer 2009 (assuming that the beta testing goes according to expectations: the backup plan would be to run an unlimited, public beta in the Fall semester, 2009).[9] Further Sun Microsystems will assist in globalizing Alice.[10]
The current release of Alice, version 2.0, runs on Microsoft Windows, Mac OS X, and Linux platforms.
[edit] See also
[edit] References
- ^ Alice uses an attribution required version of the BSD license [1]
- ^ What is Alice?
- ^ M. Moskal, D. Lurie, and S. Cooper, Evaluating the Effectiveness of a New Instructional Approach. In Proceedings of 2004 SIGCSE Conference, (Norfolk, VA).
- ^ Storytelling Alice About page
- ^ Storytelling Alice About page
- ^ Alice 2.2 Beta Update
- ^ Alice Press Release - 03/10/06
- ^ A Preview of Alice 3.0
- ^ Alice 3.0 Progress Report
- ^ Sun collaboration
- Learning to Program with Alice, Wanda P. Dann, Stephen Cooper, Randy Pausch: ISBN 0-13-187289-3
- An Introduction to Programming Using Alice, Charles W. Herbert ISBN 1-4188-3625-7
- Alice 2.0: Introductory Concepts and Techniques; Gary B. Shelly, Thomas J. Cashman, Charles W. Herbert ISBN 1-4188-5934-6
- Starting Out with Alice: A Visual Introduction to Programming; Tony Gaddis; Pearson Addison Wesley, 2007; ISBN-13: 9780321475152
- Motivating Programming: using storytelling to make computer programming attractive to middle school girls [2]