Library

Sunday, February 3, 2013

The Science of Alice

I've used half a dozen animation applications to teach programming, and I have to say that by far, I've found the Alice application most equivalent to programming editors I use in my programming career. This gives educators a very strong case to make in using Alice as an essential Computer Science module, so I want to spend this week's post reviewing some talking points to use when developing CS curricula for your school and to help parents understand that Alice is more than just a cartoon diversion.
Alice is built using a Java applet and uses an application programming interface (API) that simplifies the use of Java. The Alice API mirrors Java structure through the use of types, operators, core objects, and methods used to create interactive environments. The Alice API also simplifies embedded html tags required to interpret JavaScript commands (“object.method”, such as document.write command to enter a string of text). For example, you’d code this in JavaScript :
<html>
<head>
<title> Embedding Javascript into a web page</title>
</head>
<body>
<p>Introduction</p>
<script type = "text/javascript">
//Welcome text displays
document.write("Welcome to JavaScript")
</script>
<p>How it Works</p>
<script type = "text/javascript">
//Displays warning message
alert("Warning");--this is an example of a message box script snippet
document.write("Javascript is a simple language.");
</script>
</body>
</html>

To get this in your web browser:

Welcome to JavaScript
How it Works
JavaScript is a simple language

In Alice, you’d create world.myfirstmethod, then select object = 3D Text, add text "Welcome to JavaScript", then drag and drop "3D Text" to your scene. You'd repeat this for each line of text so that you'd have three "3D Text" characters. CSS is the formatting language you use with html that controls things like the font color and type. In Alice, you control this by using "Properties" for each of the "3D Text" characters you create. The JavaScript command "document.write" is represented in Alice as "3D Text.myfirstmethod"

Check out a recent article from thejournal.com that supports the CS value of animation programming:


And this Bill and Melinda Gates foundation backed project:


This quote sums it up nicely:

"Kids tend to be very articulate about the things they are taking away from the games ... Through Playforce, we're trying to help teachers understand those [takeaways] by having the players write about the learning they're gaining".

Programming + storytelling = learning that sticks with you, and lets kids move from instrumental learning to operant learning, the light bulb moment where you realize, "I can use this for other things". I had that fun moment myself recently, building a "Maze" game in Visual Studio while learning how to program an ETL package!





No comments:

Post a Comment

sepinventors@gmail.com

My photo
Charlottesville, VA, United States
I'm a freelance ed tech consultant involved with learning labs throughout the Charlottesville area. M.Ed with 10+ yrs programming experience in private industry, loving reconnecting to the fun teaching animation programming.