This week I finished teaching Android programming in my
Mobile Computing course. I've created a number of useful tutorials and teaching aids, and I'm weighing my options of putting them out on my blog or website or publishing them in a book form on
lulu.com. The tutorials cover graphics and sound, data persistence, custom event notification, using the Google Map API, and a lot more.
After spring break, Gabriel Foust will take over the Mobile Computing course and teach iPhone programming. I'm very curious to see how long it will take the class to climb the steep learning curve and be competent enough to write a useful app. With Android it took a little over a week.
I read just
read this morning that Microsoft is turning away from their earlier Windows Mobile OS and focusing on a new OS called
Windows Phone 7 Series. (Hello, Marketing department, are you
sure you want to compete with Android and iPhone using the name
WP7S?) The OS features a sleek new interface, and apparently XNA and Silverlight will be the main method of writing native apps. It's good to know that
my efforts learning XNA last fall will pay dividends on this new platform. Maybe next time we offer Mobile Computing, we'll be using WP7S.
Update:
Joel Coehoorn commented on my Facebook note that you can develop applications on the iPhone using
Mono, an open-source project that runs .NET applications (C#, VB.NET, etc.) on a number of operating systems. I've done a little investigation into this, and it appears that
Mono support for the iPhone is somewhat limited. The
UNITY platform allows development with C# and JavaScript, but at a cost.
MonoTouch is another commercial option. Otherwise you're stuck with development on a Mac using Objective-C.