5 years experience
I've started iOS development at the age of 15. I've learnt this the hard way: initially, I didn't own a Mac, so I had to go through the j...
I've started iOS development at the age of 15. I've learnt this the hard way: initially, I didn't own a Mac, so I had to go through the jailbreaking process, I had to set up the opensource toolchain manually on my Linux box, and learn the fundamental concepts of the compilation and packaging process of iOS applications. As a consequence, I feel I've learnt some of the intrinsics of iOS and programming in general way better than some of the fellow developers (who could conveniently just download Apple's official dev tools and click one button to build their applications...)
During the course of years, I've become more and more interested in jailbroken development, and I've made various tweaks and applications for iOS in this spirit. I thus had the pleasure to learn a little bit of reverse engineering and some important details of iOS' internal workings, which proved to be useful in other areas as well.
Because of this experience of mine (I had the opportunity to look a bit outside Apple's shiny sandbox and tear off its handcuffs), I concluded that the traditional Unix-style development environment (make, a command line compiler and debugger, fine control over one's project structure) is way superior to some IDEs nowadays. Including Apple's Xcode. So, please do not ask me questions about IDEs -- most likely, I won't be able to respond to them anyway, since I am not using (and not willing to use) them.