I have released my first iPhone game recently, called Space Attack!! Please check it out.
Developing this game in my spare time took me about two months longer then I expected. Between Xcode, Objective-C, OpenGL I had a lot to learn and there is almost no example code online. That is starting to change now as more and more iPhone developers are free to talk about their work. This is pretty exciting, working with Apple's development tools is painful, but you get the feeling there are some really powerful tools that you are missing.
Core Animation is one of those tools I missed on the first game. I have started working on a second (and third, fourth...) game and have decided to use Core Animation for it. It is for a lot more then just animation, it should be thought of as a scene graph API, where you assemble a hierarchy of objects and then Core Animation renders them to the screen. By adding CAAnimations to objects, the scene is animated. This is excellent.
After my 3 frantic weeks working on a JavaFX project for the release, I starting thinking in the JavaFX way, and I think is has spoiled me. Things are so easy in JX and are so hard in other languages/APIs. Core Animation is part of the way there, thankfully, but I really wish I could bind things. that would be excellent.