Where to start programming?

Discussion in 'Mac Programming' started by chris.breshears, Jun 14, 2014.

  1. chris.breshears macrumors newbie


    Jun 13, 2014
    Fort Worth, Texas
    Hey everyone. Name's Chris.

    I downloaded xCode a few days ago. I want to teach myself how to learn Objective C.

    Is xCode a good program to start with?

    Any advice from ya'll? Than you all so much.
  2. MeFromHere macrumors 6502

    Oct 11, 2012
    Try this tutorial:

    I think you can work your way through the tutorial, starting from scratch. After you're done, look back and ask yourself how much of the project and the tools you understood. It might turn out that it was a waste of time; there's a lot going on in the tutorial and most of it is pretty advanced if you've never programmed before.

    If you've never used an Integrated Development Environment (IDE) like Xcode, it is easy to be overwhelmed. It has LOTS of features you won't use for a long time. Many people would suggest staying away from IDEs at first, and doing everything "by hand". I don't know if that's good advice; I learned to program before IDEs existed. But you have the tutorial with a sample application. You can go through it step-by-step and then decide if the process "works" for you.
  3. larswik macrumors 68000

    Sep 8, 2006
    • If you don't understand Objective C, step back to C before you decided it's to hard and give up.
    • Ask a ton of questions on this forum as you read to better help you understand.
    • Only read as fast as you understand the material. There was a guy here years ago that read a C book in a couple of weeks and was just as lost at the end as he was in the beginning. You can't rush learning this stuff.
    • Don't copy / paste code when doing tutorials. The whole point is you get use to writing it, which helps you understand the syntax better.
  4. 960design macrumors 68030

    Apr 17, 2012
    Destin, FL
    Find someone that already knows how to code and ask them to help you. You are in for a rough ride if you try to do it all your own. Not that it's impossible, just really a lot of hard work and persistence.

    Think of learning to write code like learning Chinese. What if you came on a Chinese forum and asked your question. How would we respond? You could grab some tutorials, read a couple of books, to get the concept and even know a few phrases. But when you went to your local restaurant and began ordering in Chinese I doubt the waiter would understand your pronunciation or diction, not to mention when he speaks back, rapid fire, trying to understand him.

    It is so much easier to find someone that already knows Chinese and can get you over the learning curve. Once you know a little it is easy to learn a lot. Its just those first steps are pretty hard to overcome.

    Good luck and ask lots of questions.
  5. robvas macrumors 68030

    Mar 29, 2009
  6. 960design macrumors 68030

    Apr 17, 2012
    Destin, FL
  7. neutrino23 macrumors 68000

    Feb 14, 2003
    SF Bay area
    If possible, I suggest going to the local community college to take a class. Not that you can't do it on your own, just that I think it helps immensely to have a coach, a schedule and friends to work with. After that you can go it on your own if you wish to.

    Second, I think it helps to have a goal in mind for something to accomplish. To say you want to program is like saying you want to write something in English. You could write novels, comedy, sci-fi, detective stories, romances, sales literature, technical brochures, religious documents, and on and on.

    If possible, think about a field of where computers are used; a graphics utility, text processor, data processor, internet portal, etc. The world is so huge it helps to find a manageable piece to conquer.
  8. SmileyBlast! macrumors 6502a


    Mar 1, 2011
  9. firewood macrumors 604

    Jul 29, 2003
    Silicon Valley
    It's also still in beta, unfinished, quite buggy, and not ready for a public release until later this Fall. Extremely limited selection (two) of books and tutorials currently.

    Wait 6 months or so. Then it will be cool for newcomers.
  10. AdonisSMU macrumors 603

    Oct 23, 2010
    Why wait 6 months? Why not learn it now bugs and all? You can really appreciate the fixes...
  11. dejo Moderator


    Staff Member

    Sep 2, 2004
    The Centennial State
    Because it can be very frustrating to try to learn something and when things go wrong, not being sure whether it's your fault or just a bug?
  12. AdonisSMU, Jun 27, 2014
    Last edited: Jun 27, 2014

    AdonisSMU macrumors 603

    Oct 23, 2010
    There are so many other people trying out SWIFT right now. Doesn't hurt to ask or build a temporary work around.TIOBE is already saying it will start with a Top 20 showing.


    Stuff will always go wrong. No getting around that. i remember when I was first learning CSS & Javascript back in 2000 in my spare time. Ohhh wait it feels like CSS and javascript today...
  13. firewood macrumors 604

    Jul 29, 2003
    Silicon Valley
    Lots of 2nd year+ CS students can barely figure out how to find and fix their own bugs. Increasing the number of language and tool bugs on a 1st year beginner could make for a very painful learning experience.
  14. JPM macrumors member

    Feb 5, 2008
    Ottawa, Canada
    The computer science courses from Stanford that are offered free through iTunes U are pretty good. There is one called "Developing iOS7 Apps for iPhone and iPad" which covers obj-C. If you're not ready for that, there are prerequisite courses as well ("Programming Methodology" - basic SW engineering & Java - and "Programming Abstractions" - more advanced SW engineering & C++).

    I'm working through the basic course (Programming Methodology) right now and I find it very good. You get videos of the lectures, all of the handouts and assignments, and if you search Google you can find other people's answers to the assignments to see what you could have done differently/better.
  15. firewood macrumors 604

    Jul 29, 2003
    Silicon Valley
    Good for you! A lot of people don't realize that these prerequisite courses are just as important, if not even more so, than the Objective C and iOS courses in learning how to be a competent Mac/iOS developer.
  16. hiddenmarkov macrumors 6502a

    Mar 12, 2014
    The thing is a newcomer probably won't know how to ask for help clearly for a while. They also won't have experience to know the difference and can burn time looking for code help while looking at bug reports..

    lets have a new person learning about functions. Lets have them learning about scoping as it applies to them. In a well established production release language when I call up a function in a function and do not get a result I want I know its me being the issue in say python 2.7 or C as I am in spare time giving the nerd ranch obj-c book a read over and in the first chapters (have not touched c in over 10 years....so its a nice refresher, at times it may as well be new material tbh).

    In this case I can write off looking for bug reports on scoping and go straight to the what am I doing wrong here phase.

    If that phase needs me to hit up usual help avenues...I make everyone's life easier. I don't post the always loved I may have found a bug thread. Which can quickly degrade any thread since it can be very effective troll bait whether intended or not.

    I have not seen the official apple forum threads in this area. I imagine it can be a controlled train wreck at times as you mix in a new language being used wrong, new language being used right but buggy and maybe even new language being used wrong and buggy.
  17. conradwt macrumors member


    Nov 21, 2005
    Hi, what's your actual programming background because it's not clear from your initial question? If you're new to programming, then I would recommend taking the following online course:


    Next, Swift Programming Language is great but you'll still need to know and understand Objective-C if your goal is to build apps for OS X and/or iOS. For more on this, I would recommend reading the following posts:


    In short, you'll need to be able to invest the time to learn anything new and starting with the basics is the best place to start.

Share This Page