Skip to main content

Alice in the JavaLand by Carnegie Melon University

Posted by felipegaucho on June 4, 2009 at 11:24 AM PDT

src="" />

What is Alice?

Alice is a tool to teach
programming skills to people who has never programmed before. It is a
development environment based on scripts to produce 3D scenes. The developer
creates characters (objects) and starts to add functionality (method) to
the character using the drag-and-drop features of the Swing interface.
After creating the scene, the student can export the Java code that
produces the characters animation.

Who should use Alice?

Anyone without programming skills, like mid-school students and
first year college students.

And how is the adoption of Alice?

Alice is only on its beta stage, but we have around a thousand
downloads per week. I would say we have 10 to 15% of the American
universities using it.

Is it open-source? Who is paying for Alice?

Alice is part of a Carnegie Melon research group founded by href="">Randy Pausch (The Last
Lecture). It is open.source and hosted
at under the GPL license

Special features?

There are a lot of interesting tricks in the application, but the
focus is on the learning of the users - what we believe it is very good.
Eletronic Arts donated the characters, so we have a more attractive GUI
- when people recognize the characters they get more interested in play
with them.

Is it possible to export the animations in mpeg or other
format? It may be awesome for marketing.

In the beta version it is not available but we are working to
provide these features.

The students feedback

While my short interview at the Alice booth, a student
approached the booth and then I collected some real world feedback:

  1. Hello, what's your name and what you do?

    I am Kira Morrow, a student of Camden County College (New Jersey

    What you thing about Alice?

    Impressive program, I like because it teaches the basics of
    programming and do stimulates the thinking instead of focusing in
    programming languages syntax.

  2. Hello, what's your name and what you do?

    I am Josh Kitterman - a Software Engineer from Salt Lake City,

    So, what you think about Alice?

    I am excited about that because I have 2 kids (7 and 5 years
    old) I am looking to teach programming skill to them.

    Seriously? It isn't too early to that?

    I don't think so, it is a good time to introduce programming at
    this age with a fancy graphical interface. They will like it.

    I noticed you coded some scenes. How long did it take to
    settle the environment and get it working?

    From installation to final animation: 2 hours.

    And how was it? Very easy? Any bug?

    A few crashes because it is beta, but nothing serious. It is
    very easy of use tool, you should try it.


BlueJ is an entirely different beast. It lacks the graphical luster of Alice, but does include some wonderful graphical feedback that is helpful in understanding OOP. BlueJ is good for visual representations of classes which does ease the idea of polymorphism and inheritance.

How does it compare to BlueJ: