If you want to access all the native hardware features on an iPhone,
then I assume you will need to learn Objective-C.
On the other hand if you want to access a significant number of
It's a fairly obvious idea and I wonder if someday Apple will implement it.
If you are willing to pay a $5,000 license fee to Rhomobile, then you
can use a Ruby bridge to access some native hardware features on an
These bridge APIs should be easier to code for than Objective-C.
Also, they add a benefit.
They can be used to build native software which runs on other
platforms like Android.
It's like Java; write once and debug everywhere.
So for iPhone development you have 2 basic choices:
Ah, but there is a 3rd choice which is my favorite:
I use RoR to serve HTML5 pages to mobile browsers which can render HTML5.
Safari on iPhone can render HTML5.
In late August, RIM bought Torch Mobile which suggests to me that a
WebKit HTML5 capable browser is coming to BlackBerry.
Opera has an HTML5 browser which can run on Windows Mobile.
Perhaps the Chrome browser in Android 2.0 will support HTML5.
HTML5 offers my 4 favorite features:
- Ability to copy/store data from web to the phone
- "Offline" capability
- The App Store does not control my App
- I control updates and bug fixes, not the end-user
For me, that is all I need. I write "Enterprise" applications which I
use to do things like connect to Oracle or Sugar CRM.
I don't need to detect if the user is shaking his phone or if he wants
to write music for a saxaphone.
The best demo of an HTML5 App for iPhone is http://gmail.com
If you have a minute, use iPhone-safari to connect to http://gmail.com
Read some e-mail click a few links here and there.
disconnect from the net (AKA "Airplane Mode").
You will notice that you can still read your mail and that Gmail still
functions while you are "offline".
If you are an RoR developer, HTML5 may be the best way for you to
write software for the iPhone.
If you want a FREE tutorial for an iPhone HTML5 RoR App go here:
If you want me to write an HTML5 iPhone App for your business,
please send e-mail to this address: