How can Alice help teach OOP (Object Oriented Programming)? Alice is an innovative block-based programming environment that makes it easy to create animations, build interactive narratives, or program simple games in 3D. Unlike many of the puzzle-based coding applications, Alice motivates learning through creative exploration. Alice is designed to teach logical and computational thinking skills, fundamental principles of programming and to be the first exposure to object-oriented programming. The Alice Project provides supplemental tools and materials for teaching using Alice across a spectrum of ages and subject matter with proven benefits in engaging and retaining diverse and underserved groups in computer science education.
Who Uses Alice
Alice is used by teachers at all levels from middle schools (and sometimes even younger) to universities, in school classrooms and in after school and out of school programming, and in subjects ranging from visual arts and language arts to the fundamentals of programming and introduction to java courses.
Why is it called Alice?
Alice pays homage to Lewis Carroll, author of Alice’s Adventures in Wonderland and Through the Looking Glass. Carroll was a mathematician, novelist, and photographer. Most important, he could do intellectually difficult things but also realized the most powerful thing was to be able to communicate clearly and in an entertaining way. This inspires Alices efforts to make something as complex as computer programming easy and fun.
The name is also a very practical choice. The artwork associated with the Alice books is now in the public domain, its copyright has lapsed. Also, the name “Alice” has several other advantages:
– It is easy to spell.
– It is easy to pronounce.
– It shows up near the top of alphabetical lists.”
Research has shown that Alice has a measurable positive effect on performance and retention in computer science education. The team has researched and published their findings in support of the increased retention of “at-risk” students in an introductory computer science course when Alice is implemented. It has also been proven to improve up to full letter grade outcomes in early computer science courses when implemented as a mediated transfer from Alice to Java. You can read more about these studies as well as others here.
Alice is not a scripting tutorial where students will learn about the correct syntax used in various programming languages. It isn’t about developing the best structured For Loop. Instead, Alice provides students with a virtual world – a 3D modeling environment where students can learn how putting together various components, which each individual has their own properties, can create a larger, working project. The 3D environment is meant to show students, in a simple way, how the concept of object-oriented programming works.
The software itself has a built-in tutorial, which makes sense because the main purpose is to serve as a teaching tool. The first screen allows students to choose from one of the tutorials, open a recent world they created, see examples or open a world they’ve saved on the computer.