"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." (Robert A. Heinlein)

Saturday, 24 October 2009

Alice 3 (beta) on the EEEPC

To be a programmer might result a satisfying activity but hardly it can be defined “fun”. One can work for months to a project with no better reward than an error free log file. I'm not complaining of my job but I understand what makes it sometimes unpopular among students. Alice is an educational development environment that tries to make programming less boring to students by providing an easy way of writing programs that interact with a 3D game-like environment.

What's new in version 3

The key points in Alice are the easy user interface that let you program only by drag-and-drop operation, the availability of many easy methods to manipulate the 3D environment and a rich library of 3D objects and characters ready to be used in programs. In particular Alice version 3 provides an object library enriched by a subset of Electronics Arts™ SIMS 2™ characters.
Among the many improvements of Alice 3 the one that triggered my interest was the availability of a plug-in to import Alice projects in NetBeans, this makes easy using Java to interact with Alice 3D world.

Download and installation

I downloaded Linux version of Alice3 installation program and the netbeans plug-in from the project download page here. The files I downloade are:
Alice3BetaInstaller-Complete-3.0.0.0.64-linux.sh
Alice3ProjectWizard3.0.0.64.1.nbm
of course file names will change with new versions.
I then executed the installer program:
sudo mv Alice3BetaInstaller-Complete-3.0.0.0.64-linux.sh /opt/
cd /opt/
sudo chmod +x Alice3BetaInstaller-Complete-3.0.0.0.64-linux.sh
sudo Alice3BetaInstaller-Complete-3.0.0.0.64-linux.sh
After following installer instruction, and agreeing with the many licenses, installation process completed and Alice3 was ready to be executed.

Unfortunately the scene editor is not working on my EEEPC so I had to place the objects by code. I don't know yet if the problem lies in Alice3 or in OpenGL libraries it uses.

NetBeans plugin

Netbeans plug-in installation was also straight-forward: I simply selected the plug-in file from the plug-in management I simply chose “Tools Plugins ...” from NetBeans menu then selected the “Downloaded plugins” tab and at last pressed the “Add ...” button and selected the already downloaded plug-in file.
Once the plug-in was installed I selected “New Project” from NetBeans menu and selected the “Java Project from Existing Alice Project” wizard (in Java category). After selecting my first Alice project the wizard imported it in NetBeans flawlessly.

Conclusions

here is the result, quite a hello-world isn't it?
The fact that Alice is an educational software doesn't mean it's of no use to who already knows how to program. Especially together with the NetBeans plug-in Alice can become a cheap 3D engine for Java programmers.

Links