
How to go about learning Objective-C? - bignoobs
I want to learn Mac OS X development, and write applications that are useful, and make a little fortune on the side, if i get good enough. I don't really have much experience in any other languages. I've read "C in 21 days", but I'm hardly any good, and haven't written much code.<p>Is there anything I need to know, or any pre-requisites I require before jumping into Objective-C ? Do I need to learn C/Smalltalk first?<p>What books would you recommend?<p>Thanks for the help, and for reading this at all, love HN.
======
aaronbrethorst
Aaron Hillegass' _Cocoa Programming for Mac OS X_ is what I learned from. I
never learned Smalltalk, but I had programmed C beforehand. If memory serves,
_Cocoa Programming_ assumes no prior knowledge of C.

~~~
danudey
Came here to say pretty much the same thing. I've never seen a good
Objective-C programmer give any other response to this question than the
Hillegass book. You should have a knowledge of C, or at least programming in
general, but the whole book is a lot of excellently-written tutorials,
expanding on each app bit by bit. An excellent resource.

------
praptak
You obviusly need to learn C, since Objective-C is a superset of C. But not
necessarily as a prerequisite. Just pick it up as you go. Smalltalk is
optional but it is worth learning in itself for its awesome pure object-
orientedness.

Also:
[http://developer.apple.com/mac/library/documentation/Cocoa/C...](http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html)

Also: Jobs is the devil, hi wants you to be his sharecropper, do not develop
for Mac OS X.

------
janj
Just start building something. Start small and add to it as you learn. That's
what I did about a year ago but I had previous programming experience.

A year ago I had never owned an apple product and had never seen objective-c,
now I have 5 apps in the app store, one of them in the top 50 for travel. It's
been a lot of work but the first step is to start. Get a macbook and an ipod
if you don't already have one, some books if that's how you like to learn
(doesn't really matter which specific ones) and create something.

Start building something that you would use or something that already exists.
That way you are more focused on learning how to make it work rather than
figuring out the specifics of what it is you are trying to build.

~~~
coryl
What prior programming experience have you had?

~~~
janj
Graduated with a degree in cosi in 2001, worked for a start-up that
disappeared by the time I graduated. Took 7 years off to become a ski bum,
decided to get back into programming 2 years ago by getting a masters. Got a
job instead doing desktop c# work. Wanted to get into mobile so I started
learning, now that's what I'm doing in San Fran.

------
swolchok
<http://www.reddit.com/help/faqs/programming>

~~~
YDKM
Great answer. Not to the question being asked though.

