There is nothing like a programming challenge to keep you up late at night; unless it is playing computer games, or both.
David Liebman, a student in the Computer Science Department, recently completed a “levels” game for the Android phone.
The game presented challenges and opportunities. David wrote two versions of the program; one using the graphics capability of the standard Java API for the Android phone. The other version did all the graphics in C and used the Java Native Interface (JNI) to integrate the C code with the remaining Java code of the program. As you might expect, the C-version was much faster and cleaner so that's the version David is distributing.
The program, called Awesome Guy, will be distributed on Android Market but you can see the code project itself at http://code.google.com/p/awesomeguy.