views:

124

answers:

5

I want to dive into developing applications for the Mac and later also for the iPhone. For me as a Rubyist it is clear that I learn both, MacRuby and Objective-C. The question is only in which order I should do that. Is it easier to learn Objective-C first and then combine the knowledge of both worlds and start learning MacRuby, or is it easier to start with MacRuby to slowly find your way into developing applications for the Mac?

My understanding of the Ruby language is quite good - 5 years of experience, and I also have a decent understanding of C. Just in case that this makes it easier to answer my question.

+2  A: 

Start with Objective C. I tried starting with MacRuby and was floored by the unnecessary underscores in method names. After learning Objective C, I understand MacRuby a lot better.

mcandre
You’re probably confusing MacRuby with RubyCocoa in this case. MacRuby uses selectors just like Objective-C does.
alloy
+3  A: 

Go straight for Objective-C, especially if you're going for iPhone development. You already know Ruby so don't waste any more time.

Fosco
+2  A: 

Learn Objective-C first. I was in your position and I tried to do MacRuby and didn't get much of anywhere. Now that I've done some Objective-C development, MacRuby is easy, and it's a nice relief to get back to ruby syntax.

mckeed
+1  A: 

IMO if you are looking at developing applications for the iPhone then you will need to know Objective-C so you may as well start there. I've never used MacRuby but it sounds like it wouldn't be much of a learning curve if you already have a good grasp of Ruby.

Chris Diver
+1  A: 

I think main reason for learn Objective-C are,

1.Apple's Reference, sample, and most of Cocoa codes in the world are written in Objective-C, so, anyway you have to read many Objective-C codes, to understand Cocoa frameworks. Once you got knowledge of Cocoa, going back and force between ObjC and ruby is easy.

2.MacRuby does not support iPhone/iPad currently.

kyab