I came to Objective-C from Java (server side web apps) and it really was quite a shock. However, once I got past the syntax , I found that it was just another OO language. Encapsulation, inheritance, interfaces, they were all there. I will say that while Apple (and the web) provide lots of examples of specific implementation details, they usually don't get past the simple stage of that one API. It's a bit more challenging to put all of them together in a way that is both good form and sensible for your problem.
Very helpful for getting your mind around basic concepts.
Re: Interface builder. I think the trick is knowing when to use it and when not to. Certainly it is incredibly useful for getting your layout exactly as you want it. (This was a refreshing change from html) But it can be cumbersome if you're trying to share common interface elements via subclassing or without wanting to load a nib file every time. Occasionally I would use it just to get the layout right and then implement the same interface in code.
Re learning: I highly recommend this site: http://cocoadevcentral.com/d/learn_objectivec/
Very helpful for getting your mind around basic concepts.
Re: Interface builder. I think the trick is knowing when to use it and when not to. Certainly it is incredibly useful for getting your layout exactly as you want it. (This was a refreshing change from html) But it can be cumbersome if you're trying to share common interface elements via subclassing or without wanting to load a nib file every time. Occasionally I would use it just to get the layout right and then implement the same interface in code.