I'm lazy. The iPlatforms are incredibly cool, even if I own only a lowly iPod touch I have to say, it's an impressive product. But I'm lazy.
I don't really care about jumping on the appstore bandwagon, but I'd like to make a few experiments. But in order to make those, I really would like not to have to learn ObjectiveC. I know, that's a problem that a lot of developers have.
I know that ObjectiveC is not bad, maybe it's even better than C++, but it's not interesting enough for me to study as a language, and it's different enough from everything I've played with not to be able to write stuff without reading the documentation...
So I went on for a quest to find a C or C++ example, or library, or something that I could start fiddling with. Of course that's stupid, I could have invested the same time to learn the rudiments of ObjectiveC, but anyway...
The first insight you have to get is that actually ObjectiveC/C++ can compile C/C++ code. So really, you can take the basic OpenGL project provided with XCode, and fiddle with it even just working with C. This post shows how to convert the template project into something that works with C++.
Simple, but what if you want also to create widgets, play with the touch controls and so on, without calling ObjectiveC functions?
Well, there's not much around, but I think, there is enough to start playing. The most useful library that I've found is openFrameworks. It has an iPhone port, it's C based, and provides a very easy access to OpenGL.
If you want to make something more widget-heavy, the NUI framework looks really cool.
Oolong engine has some very nifty arm assembly snippets. Very worth a look, the arm VPU is peculiar and fun.
I would also love to hack the iPhone using C#. Unfortunately, monoTouch is commercial only. There are even two (unrelated afaik) incredibly cool hacks to run processing (.js) on the iPhone.