DDJ: Do you emphasize other development tools in addition to Flash?
DC: Another tool is [Java-based] Processing. It was created at MIT Media labs and an open-source learning tool to teach programming for visual designers and artists. Processing is, in some ways, the most compelling alternative to Flash, especially as it relates to learning. That is where it's so simple and elegant. We can really focus on the concepts of algorithmic animation, motion through code, responding to mouse and keyboard input with constraints; the basic principles that are required in sophisticated work. We're moving towards teaching it in Processing and then combine into ActionScript after you understand the concepts.... It is a distilled essential environment to learn the concept, and when you understand it, then you can say "This is what the same thing would look like in ActionScript, and this is how it integrates with MovieClip library symbols and how you might exploit the timeline."
Another important alternative to Flash in the mobile space are some tools that Nokia is working, especially as it relates to multi-user applications. Python -- the graduate students all learn Python as a teaching tool and a way to build experimental applications. The iPhone which does not have Flash yet, and Apple is emphasizing its flavor of AJAX in WebKit and how that WebKit is also shared in the browser on Series 60 on Nokia and Symbian devices.
It's posing an interesting question in the market, how the Touch interface relates to Ajax-enabled mobile devices. It's going to be very interesting to see when the iPhone SDK is released in February if that coincides with Adobe's release of Flash on the iPhone and how ActionScript and Flash Lite deal with the Touch user interface conventions, like Flick and Pinch and Zoom that have no equivalent yet on other platforms. What happens in the mobile space is increasingly important.
Interestingly Processing, the IDE, even has a mobile component that exports as a Java app that can go a huge variety of devices that have the Java VM. We have an open-source Python SMS library tool, "Sydewynder," that's been created by students here. We've done a lot of interesting things with text that break out of the box, but we're anxious to make contributions in graphic immersive data driven mobile apps that go beyond just text. Hopefully we'll give the carriers a reason to get more devices with Flash Lite out there. I think whether Apple and Adobe can agree on how Flash goes on the iPhone and then how other companies have to get on board, I think it's going to have a major long-term impact on the relevance of Flash.
DDJ: Can you tell us more about the Sydewynder Python library?
DC: It's an open-source Python SMS library tool. The point of it was really for activism and to get around the restrictions of the cell phone utilities. The concept of it is, you get a Series 60 phone, you put Python on it, you run this script on a prepaid card, and it then can then create SMS-based subscription services, interactive games, and other activist, flash-mob style stuff. So you can go into Africa or China or just set it up here in the US, and you can run full-fledged SMS application in a rogue fashion. Then you just throw out the prepaid sim card, and there is no trace of it. It's a way to open up the ability for ordinary people to do SMS based applications, thanks to Python and Nokia being an open platform.
Other than that, we have classes in PHP, ColdFusion, C++, and Max/MSP. In the beginning of the program we used to teach Java but it really fell out of favor. Now C++ is the low-level language of choice. We don't have everything, but then it's not a computer science program. The classes are really in the service of the arts.