General Question

lunabean's avatar

Can I jump right into programming on the Mac?

Asked by lunabean (630points) September 18th, 2011

I have never done any application programming before. The only knowledge I have about coding is HTML and CSS. Should I be fine just jumping right in with some Objective-C tutorials or should I study something else first? Any resources would be helpful as well.

Observing members: 0 Composing members: 0

6 Answers

XOIIO's avatar

X-Code.

Have fun *rolls eyes *

Neophyte's avatar

Objective-C is a very complicated language to learn. Seeing as all you know is HTML and CSS, you’ll also have to wrap your mind around object-oriented programming. I would suggest something lighter to start, like python or java.

And @XOIIO, what’s wrong with Xcode? I find it essential to my programming.

XOIIO's avatar

Oh, I know its essential, its jsut a bitch, same with C#

gorillapaws's avatar

It is certainly possible; I know because I’ve taught myself. Be prepared for likely several years of hard work, study, googling, and practicing before you can write a non-trivial GUI app. This is an excellent free tutorial for getting started with C programming on the Mac, and Kochan’s Programming in Objective-C is the best book for learning Objective-C (I’ve read several).

Hillegass has a 4th edition of his book Cocoa Programming for Mac OS X which is due for release in late November and will use Xcode 4 for the examples. I would suggest waiting for this release instead of trying to make the 3rd edition work with all of the examples written for Xcode 3 + Interface Builder. This is a must have book as well (called the “Cocoa Bible” by some), but shouldn’t be read until you’ve mastered the command-line coding that Kochan covers.

If all of this is too overwhelming, then I would suggest taking up Python. Objective-C is a phenomenal language because it allows you many of the conveniences of higher-level languages like Python, but also allows you to tap into the “guts” of the computer with really fast C code as well. The price you pay is that you can get yourself into nasty situations more easily if you don’t know what you’re doing. There really is no wrong answer here, it’s more about how you want to learn. If you do decide to go the python route, you should check out MIT’s free Intro to Computer Science course that has a semester’s worth of lectures, notes and homework assignments to view for free, all taught in Python. If you think of what it would cost to take that course in person, you’ve got a hell-of-a-bargin on your hands, plus you can proceeds at your own pace. Another advantage of Python is that you can create web-apps and tie them in to your existing HTML/CSS knowledge.

Just be prepared to do a lot of coding on the command line for a while. It’s not pretty or sexy, but it’s absolutely critical to build a solid foundation before moving onto the GUI stuff. Best of luck, and feel free to ask questions (although it’s best to try to search Google first).

Response moderated (Spam)

Answer this question

Login

or

Join

to answer.

This question is in the General Section. Responses must be helpful and on-topic.

Your answer will be saved while you login or join.

Have a question? Ask Fluther!

What do you know more about?
or
Knowledge Networking @ Fluther