The Alice team is back from our trip to JavaOne in San Francisco.
Our friends at Sun set us up w/ a station in the Change (Y)our World Playground where we demoed what I tried to describe as “a sneak peak at the future of Alice”. I’m not sure how accurate the desciption of “sneak peak” was since we were handing out USB drives with the latest bits and it’s up on the web… but hopefully people will forgive me for trying to manage expectations at least a little.
We got a lot of traffic in the playground and seemed to generate genuine interest. The most exciting thing was just how many people came up to tell us how much their children or grandchildren love Alice2 and Storytelling Alice. The Sun folks had all of these Alice t-shirts made up for us to give out and we whisked through all of the smalls in no time. When we ran out of those, parents accepted mediums for their young Alice users at home. Imagine going to a computer science conference and having tons of left over larges and extra larges and no smalls or mediums!
We also held a Birds of a Feather which generated some good discussion and gave my personal favorite: a lightning talk. Is there any better speaking format? With a limit of 5-7 minutes you are basically given license to talk as fast as you want. All you have to do is demo Alice for 90% of your allotted time and you’re guaranteed to have a happy audience. Hmm… I guess there is one better format. Perhaps I can make a “History of Alice” post soon about the Web 3D Round Up.
Our lightning talk was followed up by Ian Utting from the Greenfoot team which makes for a nice pairing, I think. As a bonus, we were right next to the Greenfoot booth in the playground so we got a chance to chat with Ian and Poul Henriksen and Davin McCall throughout the week. We agreed to discuss some sort of closer integration of our two tools someday when things calm down. While I’m sure things will never actually calm down, I do expect this to bubble to the top someday.
Since Java 1.5, you can set the default uncaught exception handler:
Thread.setDefaultUncaughtExceptionHandler( new Thread.UncaughtExceptionHandler() {
public void uncaughtException( Thread thread, Throwable throwable ) {
// fill in code here
}
} );
When combined with the JavaMail API, Alice-3 can now submit bug reports on uncaught exceptions and attach things like the stack trace, the system properties, the user’s project, the interaction history… you name it.
We’ve been wanting to share this news publicly for awhile now, so to be able to finally make it official is pretty exciting. As Alice 3 will allow for real Java coding in addition to its traditional drag-and-drop interface, it’s a natural fit for the Alice team to collaborate with Sun. If you’ve seen our first screencast, you may have noticed the use of NetBeans as our Alice-to-Java IDE.
I’m sure Dennis will want to elaborate a bit more this collaboration, so hopefully more info will be provided shortly.
You can also download this video in Quicktime format for offline viewing: Alice Screencast #2 (54.5MB)
(Right-click and select “Save Link As…” from the submenu)
Alice’s story begins back in the early 90s at the University of Virginia. Randy Pausch, then an assistant professor in the Computer Science Department at UVa, started a user interface research group. The Alice system was built to support rapid prototyping of virtual environments. Simulation was performed on a Sun SPARCstation 5 which would send changes over the network to a pair of SGI Reality Engines (one for each eye). One could update the live environment by editing and invoking Python code eliminating compile, link, and reload time. With the cost of changes reduced from minutes to seconds, Alice allowed exploration of the interaction space. The system was itself a publishable result, but more importantly, Alice served its purpose in supporting the development of interaction techniques for this new medium. These techniques, including Worlds in Miniature and Head Crusher, strived to go beyond simply emulating the real world.
Alice is so named because it allowed one to create worlds where things didn’t necessarily behave the way they did in the physical world. As Ivan Sutherland perhaps put it best:
“A display connected to a digital computer gives us a chance to gain familiarity with concepts not realizable in the physical world. It is a looking glass into a mathematical wonderland.”
Dennis, our head programmer and designer of Alice 3, lends his sultry tenor to a 5 minute video demonstrating how to create a simple world in Alice and import it into NetBeans. We hope to have many more of these videos over the next several months as we continue to add new features and make improvements to the system.
You can also download this video in Quicktime format for offline viewing: Alice Screencast #1 (87.4MB)
(Right-click and select “Save Link As…” from the submenu)
I know a lot of Alice users have been interested in the continuing development of Alice 3. As a result, we’ve set up a blog so our dev team can provide more timely feedback. Whether or not any of said feedback will prove newsworthy, I have my doubts.