I'm diving straight into iPhone development and throwing caution to the wind! and I'm learning Cocoa and Objective C along the way. I've had 12 years of professional experience coding in C, almost exclusively for unix environments. I see how powerful Cocoa is ( and Objective C itself ) and I have great confidence ( perhaps foolishly! ) that I'll be able to write good code once I get over a few hurdles. Problem is... I am having a hard time understanding *why* you do some of this. So many tutorials when illustrating devleoping an app say something like "connect blah blah button to File Owner" in Interface builder. Now I understand that you need to do it, but I can't understand *why* you do that. I mean why *really*... What are you really doing when you do that? That's just a simple example, but it's stuff like that that I am looking to understand. Anyone know of any books or tutorials that can explain this from the unix perspective? Sorry for asking what is probably a FAQ. Learning that I have to unlearn what I have learned ( Like having control over the application! ) has been frustrating for an old timer like me To me all of this feels so powerful, and yet I'm having trouble getting the quirkiness of the frameworks.