Recalling my first steps in Cocoa years ago, I'd certainly say the big philosophy was the biggest obstacle. It simply takes time and a few attempts to grasp that because Cocoa is neither small nor simple. The fact that Apple's documentation is far from perfect and their examples are mostly trivial doesn't help either.
My impression is that documentation has improved a little since (but still is far from good), so that may have become easier. On the other hand additional non-trivial 'magic' technologies like Bindings or Core Data have been introduced which can be very powerful but which will make first steps much harder. I always find those the most problematic these days as they very easily leave you in situations in which you don't fully understand what's going on but would need to have that understanding to get the behaviour you want. And getting the behaviour you want will likely require more code than not using those advanced technologies (which smells a bit of FAIL if you ask me). An example may be something which should essentially a trivial one-click affair as setting up a combo box with bindings.
I also keep wondering how much easier Cocoa could seem if XCode's documentation browser weren't a POS that seems to be designed to make navigating documentation as hard as possible. The research assistant seems like a nice idea, but are you really using it? I found it to be so poorly implemented that XCode can't keep up with my typing.
by ssp — May 17
My impression is that documentation has improved a little since (but still is far from good), so that may have become easier. On the other hand additional non-trivial 'magic' technologies like Bindings or Core Data have been introduced which can be very powerful but which will make first steps much harder. I always find those the most problematic these days as they very easily leave you in situations in which you don't fully understand what's going on but would need to have that understanding to get the behaviour you want. And getting the behaviour you want will likely require more code than not using those advanced technologies (which smells a bit of FAIL if you ask me). An example may be something which should essentially a trivial one-click affair as setting up a combo box with bindings.
I also keep wondering how much easier Cocoa could seem if XCode's documentation browser weren't a POS that seems to be designed to make navigating documentation as hard as possible. The research assistant seems like a nice idea, but are you really using it? I found it to be so poorly implemented that XCode can't keep up with my typing.