Disneyland Inside Out on iPhone and Android
- by Ryan Cain
It's hard to believe October was the last time I was over here on my blog. Ironically after getter the developer phone from Microsoft I have been knee deep in iPhone programming and for the past few weeks Android programming again. This time I've spent all my non-working hours programming a fun project for my "other" website, Disneyland Inside Out.
Disneyland Inside Out, a vacation planning site for Disneyland in California, has been around in various forms since June 1996. It has always been a place for me to explore new technologies and learn about some of the new trends on the web. I recently migrated the site over to DotNetNuke and have been building out custom modules for DNN. I've also been hacking things together w/ the URLRewrite module in IIS 7.5 to provide strong SEO optimized URLs. I can't say all that has really stuck within the DNN model of doing things, but it has worked pretty well.
As part of my learning process, I spent most of the Fall bringing Disneyland Inside Out to the iPhone. I will post more details on my development experiences later. But this project gave me a really great opportunity to get a good feel for Objective-C development. After 3 months I actually feel somewhat competent in the language and iPhone SDK, instead of just floundering around getting things to work. The project also gave me a chance to play with some new frameworks on the iPhone and really dig into the Facebook SDK. I also dug into some of the Gowalla REST api's as well. We've been live with the app in iTunes for just about 10 days now, and have been sitting in the top 200 of free travel apps for the past few days. You can get more info and the direct iTunes download link on our site:
Disneyland Inside Out for iPhone
Since launching the iPhone version I have gotten back into Android development, porting the Disneyland Inside Out app over to Android. As I said in my first review of iPhone vs. Android, coming from a managed code background, Android is much easier to get going with. I just about 3 weeks total I will have about 85 - 90% of the functionality up and running in the Android app, that took probably 1.5 - 2x's that time for iPhone.
That isn't a totally fair comparison as I am much more comfortable w/ Xcode and Objective-C today and can get some of the basic stuff done much faster than I could in the fall. Though I'd say some of the hardest code to debug is still the null pointer issues on objects that were dealloc'd too early in Objective-C. This isn't too bad with the NSZoombies enabled for synchronous code, but when you have a lot of async, which my app does, it can be hairy at times to track exactly what was causing the issue.
I will post more details later, as I am trying to wrap up a beta of the Android app today. But in the meantime, if you have an iPhone, iPod Touch or iPad head on over to the site and take a look at my app.