May 6th, 2008 by amendol

A reader pointed out Alice, a cross-platform 3D programming environment from Carnegie Mellon University intended to teach students object-oriented programming:

In Alice’s interactive interface, students drag and drop graphic tiles to create a program, where the instructions correspond to standard statements in a production oriented programming language, such as Java, C++, and C#. Alice allows students to immediately see how their animation programs run, enabling them to easily understand the relationship between the programming statements and the behavior of objects in their animation. By manipulating the objects in their virtual world, students gain experience with all the programming constructs typically taught in an introductory programming course.

Instructors can also order a textbook and view teaching materials online.

Videos: [ View ] Download: [ ]

3 Responses to “Alice”

  1. royallthefourth Says:

    Ugh…don’t even both with this. It’s tedious and it doesn’t even properly teach people about object oriented programming. In fact, it teaches them ideas that are just plain wrong, like individual instances of classes having different member functions. What’s that all about? Maybe I’m just angry that the IS department at my alma mater uses this in its intro “programming” class. Good thing I was CS….

  2. bubba Says:

    The general opinion during the couple of years that freshmen engineers at my university had to suffer through Alice was that it sucked.

  3. sparr Says:

    I think that a deeper problem is that your freshmen engineers spent a “couple of years” on any single programming language. Not even CS majors should do that, regardless of the quality (or lack thereof) of the language and tools.

    PS: Colobots is the most awesome programming teaching tool ever. Real time strategy game in first person 3D where you can control units manually or write high level programs to make them autonomous, complete with incremental tutorials.

Leave a Reply

You must be logged in to post a comment.