Career change: Becoming a Mac software programmer

Discussion in 'Mac Programming' started by LikeThisIdea, May 14, 2010.

  1. LikeThisIdea macrumors newbie

    May 14, 2010

    I'm currently changing careers, and I would like to asset the possibility to become a Mac software programmer. (Maybe the terminology's not right, sorry about that, and don't hesitate to correct me).

    I'm ready to take on long study degree, travel if necessary... I started studying Objective-C on my own and I love it. But I can't seem to find anywhere to study it thoroughly (I live in Montreal, Quebec, Canada).

    Does anybody know where can I start looking? Any lead on that?

    Thank you in advance, your help is much appreciated.
  2. maflynn Moderator


    Staff Member

    May 3, 2009
    For the most part they don't teach this in school. You'll need to buy some books and teach yourself.

    I recommend Objective C and Cocoa programming

    Joining apple's developer program will give you access to a lot of development resources.
  3. GorillaPaws macrumors 6502a


    Oct 26, 2003
    Richmond, VA
    You also might want to take a look at the classes offered by the Big Nerd Ranch. They're on the pricey side, but I learned a ton from them, and would highly recommend it to those with the time and the budget for it. Also, the more you know going into it, the more you'll likely get out since the courses move quickly.

    Are you coming from a programming/software background?
  4. Winni macrumors 68030


    Oct 15, 2008

    So you're starting a career as an independent, self-employed software developer - or Indie, as it's usually called. I hope that you are aware of that, because otherwise you're in for a very bad surprise - there is no job market for Objective-C programmers. Either you will be able to develop a product that people will want to buy, or you will be basically jobless without an income.

    If you want to have employment chances, then you're better off learning Java, C#.NET and C++, because those are the languages that are used in the industry. Nobody except for Apple uses Objective-C. It's a niche language.

    But if you're serious about going down the Mac Objective-C router and have some money to spare, then, by all means, I second that you should attend one of those Big Nerd Ranch classes and also work through Aaron's book.
  5. Consultant macrumors G5


    Jun 27, 2007
    FUD. Completely false.

    Apple App Store has about 2.5 billion in revenue in 2009 alone.

    Example Ngmoco Raises $25 Million. Another gaming studio started with 0 employees and grew to something like 800 in 1 year. Surely there are NO JOBS. :rolleyes:

    Of course, job availability all depends on where you live and what your skill sets are.
  6. xStep macrumors 68000

    Jan 28, 2003
    Less lost in L.A.
    Winni, you are over simplifying. For the most part, Objective-C is used for Apple products, but not just by Apple. There are many companies that hire Objective-C programmers. Montreal may not be a hotbed for such companies. Also, iPhone OS programming is the hot Apple item right now, so the OP may find something there. Doing OS X programming is less likely. Perform job searches to find possibilities.

    The sentiment of learning other languages if you want to broaden you job opportunities is a sound one. I speak from personal experience.

    maflynn's book suggestions are good. The iTunes U Stanford course on iPhone programming is good but expects that you have some programming background. A lot of the knowledge gained in that course is applicable to OS X coding also.

    Check the local colleges. In know that in B.C., BCIT was doing a iPhone game programming course. Type iPhone in the search box. I see they have more.
  7. xStep macrumors 68000

    Jan 28, 2003
    Less lost in L.A.
    Oh, if you are completely changing careers from something unrelated, then you really want to look into a longer term course curriculum. There are other areas of study you should get a grounded bases in such as; general computing theory, analysis, design, relational databases, perhaps project management.
  8. Sayer macrumors 6502a


    Jan 4, 2002
    Austin, TX
    Flat out wrong. The iPhone and now iPad markets have exploded since the App store opened.

    Objective-C is pretty much required for Mac software development. Of course knowing Java/C-C++ will help when you have to integrate with web-based services into your Mac-native front end client.

    The company I work for just got another Mac programmer last week (I actually interviewed him). I have been at the same company doing Mac-centric work for over 2 years now. Mac support is expanding in my company, and I am over 100% capacity as it is

    There is Mac work out there if you are willing to look everywhere for it. I actually picked my current job over what I suspect was a job as an independent contractor with Apple since I really didn't want to move to and live in northern California.

    Those Netflix, Disney and ABC iPhone/iPad apps didn't just fall out of the sky. Someone with Cocoa/Objective-C experience had to make them.
  9. LikeThisIdea thread starter macrumors newbie

    May 14, 2010
    No, I don't have any programming experience. So this is all very new to me, and even if Obj-C seems quite easy to learn, coming from C or C++, the learning curve is quite steep.
    I took 2 classes at About Objects in january and I really didn't appreciate them.

    The iPhone/iPad apps is something I want to dig into, I want to be able to create them successfully. But I don't necessarily want to stop there. So yeah, the advice xStep of broaden my knowledge, learn more about the computer science, learn different languages, is really good.

    I am ready to re-allocate if necessary (I'm aware Montreal might not be the best town for Mac development).

    Thank you for all your advices. You are really helpful, and insightful.
  10. NickK1066 macrumors regular

    Jul 23, 2007
    I thought I'd give my musings on the subject. My background is a degree in Software Engineering then over 12 years of C/C++/Java development for software houses before going into product management responsible for three development centres. I started OSX programming for iPhone and OSX a year ago at home for home projects.

    Learning the syntax of the language is one thing. You then have the use of patterns/structures of OOA/D. Those are common between OO languages although the smalltalk influence makes Objective-C feel different from C++ for example.
    Next you have the task of learning the libraries and technologies which are specific for a platform. Often it's down to experience which is better in which scenario and what impact that has on future development.

    The last bit is really people and companies - you'll need to break into a development role. Unless you're an intern or junior, then you'll be expected to know things straight from the start. It is vital that you don't stop learning and pushing yourself in that area. Experience and knowledge in software equates to higher salary. However at the end of the day you are still an engineer (that comment will annoy people :D) and you will have to learn about interactions in the role too.
    I certainally would not advise attempting to be independent from the start - you'll want to learn from those more experienced before going it alone (or starting a company). Once you have the experience in software development then it's up to you...

Share This Page