I was asked yesterday for advice on the best language between Objective C and Ruby to learn for someone new to programming, who is hoping to be employed working with that language in the near future (an important point). Here’s my response:
These are two 'hot' areas generating a lot of buzz here and abroad. For the Australian market, I'd recommend Ruby because its best use case is developing websites in Ruby on Rails and there is plenty of demand for websites at all levels, from small sites to large. Plus working with the web will teach a set of skills that is transferable to other programming languages -- such as using HTTP correctly and the ubiquitous HTML. Ruby is syntactically reasonably simple, and makes a great language for learning the princuples of programming. Objective C on the other hand has two main use cases currently: desktop software and iPhone applications. Experienced developers can make serious money in these areas, but it is far more random, and not an area where you can build a career, particularly in Australia where the demand is minimal. Objective C is could be interesting as a second or third language, but I'd advise against starting with it.