Search |
||
Alice 3, CS1, and QuaternionsPosted by cayhorstmann on September 28, 2009 at 10:49 AM PDT
This semester, I am teaching the CS1 course again. If you just teach plain Java, it isn't easy to come up with interesting lab assignments. Some of the students have built exciting animations with Alice in the CS0 course. Somehow, they aren't as excited about printing prime numbers or digits of π in CS1. But the latest version of Alice, now in beta, can be programmed in Java. This is very cool. Students can write Java code that directs the Alice models. For example, one assignment asks students to make a
Here is my procedure for making a lab assignment.
The CS1 students use NetBeans, not the Alice IDE. (The Alice IDE is wonderful for pre-CS1 because students drag and drop statements instead of typing them in. They can never make a syntax error! But in CS1, we want to use actual Java, and students need to learn how to deal with syntax errors.) Autocompletion works nicely (and is pretty much a requirement since there is no API documentation available yet). Students learn how to implement methods, branches, and loops in Java. The visual feedback with the Alice models really helps with learning the material. There are some things that are easier to do with Alice-in-Netbeans than with the Alice IDE, in particular constructing lots of objects. It is a simple matter for the car to drop toasters to mark the path, or to make a whole bunch of wall segments in a maze:
There are just a few things you need to know:
Of course, you want to hide those quaternions from your students in a suitable superclass, or they will beg you to go back to computing prime numbers or the digits of π. If you want to give all this a try, download Alice 3 and the Netbeans plugins from the Kenai site and check out the labs that are posted here. »
Comments
Comments are listed in date ascending order (oldest first)
I know exactly what you mean
Submitted by cayhorstmann on Mon, 2009-09-28 21:46.
I know exactly what you mean about confusion with drag-and-drop programming. There were times when I tore my hair out trying to figure out just what to drag and drop so that I could get to where I wanted to be. I definitely prefer using NetBeans and the help that you get from a modern IDE. But on the flip side, I taught that class that your friend was in, using Alice. And after a few weeks of using Alice, we moved on to Greenfoot, a very nice environment that uses Java. And Java syntax. And the students hated it with a passion because they kept wrestling with semicolons, parentheses, and braces, when they wanted to get cool stuff done. If they hadn't had Alice and the confidence that they can get cool stuff done, I think some of them would have just dropped out. Instead, they stuck with it and got cool stuff done in Java.
Good teaching style
Submitted by coding on Tue, 2009-09-29 22:13.
That's exactly the correct way to teach, make sure the students are interested in the work. When I used to teach intro C++ and intro Java, I would always make sure there was SDL usage in C++ and Swing in Java. The functions would HAVE to make cool things move on the screen for the attention to stay. I used to have them do Tic tac toe screens using system.outs, but just couldn't get them to stay interested with that.
To estimulate professors to
Submitted by felipegaucho on Wed, 2009-09-30 04:11.
To estimulate professors to keep updating their homework assignments, we created the PUJ in Brazil. Several JUGs are already adopting it and it proves great results in the academic community + local market.
|
||
|
|
Real Java + Alice sounds like a good combo