So, I'm speaking out of my hat here, and I just don't have time to investigate, but here are some thoughts. You can't run Flash or Java on the iPhone. I'm sure there are "technical reasons" for this but I think there are raw competetive reasons too - Apple doesn't want people building nice juicy dynamic apps that don't go through the App Store Control Board.
OK, so... there is this new library called Cappucino that I've mentioned before. From their web page:
Cappuccino is an open source application framework for developing applications that look and feel like the desktop software users are familiar with.OK, so, do you follow? If Cappucino does what it says it does, then you can build rich, dynamic applications using only standard web technologies. No plugin required. It will run on the iPhone in Safari. And, get this, the ironic thing is the framework is build to look just list Cocoa and Objective-C (they call it Objective-J).
So, I can build a nice app for the iPhone without having to go through the app store.
Problems: you can't take advantage of the accelerometer or interact with the phone or GPS or audio. But, still, it goes a long way towards breaking the chain.
So, what do you think? Am I way off base here? Or am I on to something?