Mobile App Development with iPhone/iPad and Rails
I find myself living in two worlds these days. On one hand, I’m a web programmer building centralized applications mostly with Rails. On the other hand, I’m an iPhone/iPad developer creating mobile applications. My mobile apps live in my pocket and on my tablet; my web apps live on the ‘net and in the cloud.
Sometimes you want the best of both these worlds: mobile apps that periodically exchange data with complementary web apps for access while on the go. Indeed, some of the more popular and useful iPhone apps talk to a web service to synchronize data or share information with a community. And it turns out that Rails, with its well-defined RESTful conventions, is an ideal backend for mobile applications. As a Rails developer, you’re uniquely positioned to take advantage of this synergy.
In this tutorial you’ll learn how to apply what you already know about Rails to mobile app development on the iPhone/iPad. I’ll supply a skeleton Rails 3 app and a table-centric iPhone app to get us started. Then through guided hands-on work, we’ll take incremental steps to get them talking. We’ll start by using a simple JSON library and eventually end up using ObjectiveResource for heavy-duty jobs. Along the way we’ll explore other libraries, with each one building on the previous so you understand what’s going on under the hood. You’ll leave this tutorial with a better understanding of the options available to you and the skills needed to start tying your Rails and iPhone/iPad apps together.
But that’s just the plan: the reality is that the state of the art may have changed by the time RailsConf rolls around. Count on this tutorial being about mobile app development with iPhone/iPad and Rails. The details, well, I hope you come prepared to be agile.
The ideal attendee is an experienced Rails developer who may have dabbled in iPhone development, but who is fairly new to the iPhone SDK. Basic knowledge of Objective-C syntax and at least a general understanding of iPhone table view programming is recommended. I’ll post preparation suggestions and sample code prior to the tutorial so you can get a head start. Attendees should bring their laptops; an iPhone/iPad device is not required.
Mike Clark
The Pragmatic Studio
Mike Clark is a programmer, consultant, trainer, and author of Advanced Rails Recipes. He also runs The Pragmatic Studio, a training company offering public and private courses in Ruby, Rails, iPhone, and other developer topics. For more about Mike, check out Clarkware.
Comments on this page are now closed.

















Comments
Thanks for the kind words, everyone!
Mike, I do want to let you know (before it gets too late after the conference), that, for me, you had the best session of the conference. Your ambition for us attendees was audacious, but you pulled it off and I don’t know how you did it. Beautiful prep, notes, and presentation. I actually feel like I can do this. Thanks!
Mike, this talk was awesome, among my top 3 for the conference.
I was really thoroughly impressed by both the content the you covered and the way you presented the material. (both on stage as well as the project files)
I think that it would have been helpful to show, just as a teaser, some of the shortcuts available with interface builder, even if it’d have introduced maybe too much magic.
The code alone approach, while extremely valuable for the understanding of the underline parts, I think it makes it look a bit overwhelming for the newcomers.
I totally get it though, only 3 hours. Not enough time.
Great Job.
Some parts skipped around a bit and I got lost, but overall I feel very confident in my ability to understand how iPhone development works, and I have the tools I need to build the app I want to make. Thanks Mike Clark!
Well organized and great timing execution. This was an excellent tutorial. I was able to run the app on Leopard 10.5.8 with Xcode 3.1.4.
Forrest: If you were able to run the app under Leopard, then you should be fine. I don’t believe I’m using any 3.2-specific features in the other versions of the apps.
Mike: do we need snow leopard/lastest iphone SDK? I was able to compile the iphone app on the latest leopard version of the iphone SDK 3.1.3 w/xcode 3.1.4, so I’m wondering if we’re going to be doing stuff that needs sdk 3.2 as I’m not in a place to upgrade to snow leopard before railsconf