Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

ericksgotmac

macrumors regular
Original poster
Nov 22, 2008
120
0
I'm currently taking programming with Visual Basic but what I really want to do is learn Cocoa and Cocoa Touch so I can program for the iPhone/iPod Touch and OS X. Does anyone know which colleges teach this? Or at the very least are there any classes for learning that language?
 
I'm currently taking programming with Visual Basic but what I really want to do is learn Cocoa and Cocoa Touch so I can program for the iPhone/iPod Touch and OS X. Does anyone know which colleges teach this? Or at the very least are there any classes for learning that language?

I wouldn't choose a college based on what language / API they use on their courses. That is something you can do yourself especially if you have experience in another language.

All the material you need is available for free on the Apple website. It would probably help to spend £50 or so on a couple of books though.
 
Well what I want to do is learn to program for Mac and iPhone. I'm currently learning VisualBasic but I might learn Java as well, would that be a good idea or no?
 
Or at the very least are there any classes for learning that language?

It's not cheap, but the Big Nerd Ranch offers some really awesome courses, including a cocoa bootcamp and an iphone bootcamp. Aaron Hillegass runs it, and he's the author of the book most people consider the "bible" of Cocoa programming. I took the 7-day beginning cocoa bootcamp course and it felt like an entire semester's worth of programming crammed into a week. I'd be happy to answer any questions if you or others had them.

Also, Stanford published their iPhone programming class on iTunes U, so they are free to download and worth a look.
 
If you take Java, C, and/or C++ classes (even C#), you'll gain the basic concepts necessary to learn Objective C and the Cocoa frameworks. I doubt you'll find a college that teaches it in anything except one class because they usually want to teach a widely used, easy to adapt, skill set. Unfortunately, Objective C is hardly that and it's easy enough to transfer over your knowledge of any other C-like language to Objective C.

Java is being used a lot more these days as an introductory language because with an IDE like NetBeans you can use the same textbook in a Mac, Windows, or Linux Lab (my college used nothing but Fedora in the Comp Sci department for example) and work on projects at home using whatever platform you run. Basic C (text prompt based) programs run on basically any platform with a recompile. Objective C, much like C#, may/will be offered as an elective class but thats about it.
 
My University does a mobile computing course. That includes (in fact is largely based on) programming for the iPhone OS. Most respectable establishments have started or will be starting to incorporate iPhone programming into their curriculum. OS X, probably not, however once you know how to build apps for the iPhone, it's only a small step up to OS X.

My course is based on C#, however I've got Kochans new book, and the transition is not really that difficult.
 
It's not cheap, but the Big Nerd Ranch offers some really awesome courses, including a cocoa bootcamp and an iphone bootcamp. Aaron Hillegass runs it, and he's the author of the book most people consider the "bible" of Cocoa programming. I took the 7-day beginning cocoa bootcamp course and it felt like an entire semester's worth of programming crammed into a week. I'd be happy to answer any questions if you or others had them.

Also, Stanford published their iPhone programming class on iTunes U, so they are free to download and worth a look.

i've always been curious about their courses and would like to hear about your experience. a few questions:

- is Cocoa Programming For Mac OS X a required reading prior to taking the course, or is it simply a more hands-on version of the book's lessons with questions/answers? if not, how does the course differ from the book?

- do you feel like you're a better programmer after taking the course? if so, why?

- how about networking? perhaps you've made some invaluable connections, opened up some interesting opportunities while "at the ranch"?
 
- is Cocoa Programming For Mac OS X a required reading prior to taking the course, or is it simply a more hands-on version of the book's lessons with questions/answers? if not, how does the course differ from the book?

- do you feel like you're a better programmer after taking the course? if so, why?

- how about networking? perhaps you've made some invaluable connections, opened up some interesting opportunities while "at the ranch"?

So the book isn't a required prerequisite by any means, but I was very glad I had read it beforehand. The course moves quickly so I felt like it was a real advantage to have a decent familiarity with most of the concepts prior to the lectures/exercises. It allowed me to focus my mental energy on clarifying concepts I was hazy on and ask better questions.

The format involved a lecture on a subject for about an hour or so and then a break for about as long to work through the example in the text where the instructor would wander and help out those who were stuck. Rinse and repeat.

We started right after breakfast and went until dinner, stopping only for a break for lunch and an afternoon walk. After dinner we were free to do what we pleased, but the vast majority of us would return to our classroom and work on either completing the exercises from earlier, or working on our own projects and could receive 1-on-1 with the instructor for advice. Most nights this went on until about 11pm, so it was 6.5 LONG days.

We covered the vast majority of the chapters in "Cocoa Programming for Mac OS" as well as a couple of topics not covered in the text. I requested at one point if Aaron would be willing to share with us his strategies for App design, and he set aside about 30 minutes or so to lecture us about his process/strategy (might have been an after dinner lecture).

I'm definitely a better programmer coming out of it, but that's honestly not saying much about me since I basically didn't really know all that much going into the course (I'm self-taught and this is my first language, so I've had no formal training prior to this). The biggest advantage of the course was the submersion aspect of it. You write so much Objective-C in one week that you really are forced to think in it (hell I think I managed to dream about code one night). The other aspect that was critical for me was being able to get confirmation of a lot of things I thought I knew. To put it more clearly, I had a 90% confidence in most of the things I had learned on my own, but there was still some doubt that I might have learned some things wrong (without having an external check on my knowledge). Being able to say to someone "so x works like this..." and have them confirm your tentative understanding was pretty invaluable.

I met a lot of really great people at the Ranch. There were several people from Apple there as well as a NASA engineer and a guy from a pretty well-known indie developer house, so that was a great experience (like a mini-WWDC). I think there were about 22-or-so students our week, but I'm told that some less-popular classes have about half that many. I'm still pursuing programming at the "hobby" level at this point as I build up my skills, but I got to meet some really awesome people. Also there's an "Alumni" mailing list that everyone gets to participate in for life after the course, and that is a nice tool to have.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.