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

buttongerald

macrumors 6502
Original poster
Jan 29, 2016
341
629
St. John's, Newfoundland
Good day,

Over the last few days I have grown more and more interested in programming for Mac OS X. And I am wondering, for someone like me who has zero knowledge in code writing, where should I start? What language should I focus on first? And what applications are best for writing this language in (i.e Coda, or Brackets)? I have Xcode installed currently, as well as the most recent version of Mac OS X.

I don't mind buying a few books, or reading online guides. I am just a little overwhelmed and I am seeking some guidance. I have ideas for very basic games for Mac OS X, as well as some simple applications.

If anyone can lend a word, that'd be very much appreciated.

Regards,

Gerald B
 
When learning programming, the language you chose isn't as important as simply following through on actually learning programming. Second languages are very easy to pick up once you know your first. That said, swift is the apple supported method of writing Mac apps and much easier than objective c. However, gaming is a different story as you'll probably want to use either a 3rd party framework (which is basically a prebuilt set of instructions you can have the computer execute in code) or an entirely different language. I'm not a game developer, so hopefully someone else can provide that information.
 
Second languages are very easy to pick up once you know your first. That said, swift is the apple supported method of writing Mac apps and much easier than objective c.
Swift has been one I have considered most. Do you know if there is any guide out there that would benefit someone fresh to programming? Explaining things as if you have never touched it, or any language prior? I appreciate you taking the time to respond by the way.
 
Swift has been one I have considered most. Do you know if there is any guide out there that would benefit someone fresh to programming? Explaining things as if you have never touched it, or any language prior? I appreciate you taking the time to respond by the way.
Well the way I learned programming was mainly via books I had bought on objective C. That was a long time ago though, and at this point the Internet has amazing resources to help you learn. Here's Ray wenderlich's tutorial on Mac OS X applications.

https://www.raywenderlich.com/11017...-tutorial-for-beginners-part-1-intro-to-xcode

That website is really good for learning aspects of programming, and there's so many tutorials you should always have something to learn there. The strategy I would use is read the tutorial, write out the example code (that's right, no copy pasting. You'll never learn to code if you're not actually writing code), and change the example code in some little way. For example, the first program is a "hello world" program. What you should do is make it an "I'm awesome" program. That way, you learn what's really going on, how to manipulate code and data, and hopefully create bugs. You read that right, you want to have as many bugs and glitches as possible. Experience is the best teacher, and as frustrating as it may be, you really do need to solve bugs and spend hours on a single line. Stack overflow is your best friend, as undoubtably someone else there has had your issues. However, if you can't find anything, post in the forums here and someone will help you.
[doublepost=1465825566][/doublepost]
Well the way I learned programming was mainly via books I had bought on objective C. That was a long time ago though, and at this point the Internet has amazing resources to help you learn. Here's Ray wenderlich's tutorial on Mac OS X applications.

https://www.raywenderlich.com/11017...-tutorial-for-beginners-part-1-intro-to-xcode

That website is really good for learning aspects of programming, and there's so many tutorials you should always have something to learn there. The strategy I would use is read the tutorial, write out the example code (that's right, no copy pasting. You'll never learn to code if you're not actually writing code), and change the example code in some little way. For example, the first program is a "hello world" program. What you should do is make it an "I'm awesome" program. That way, you learn what's really going on, how to manipulate code and data, and hopefully create bugs. You read that right, you want to have as many bugs and glitches as possible. Experience is the best teacher, and as frustrating as it may be, you really do need to solve bugs and spend hours on a single line. Stack overflow is your best friend, as undoubtably someone else there has had your issues. However, if you can't find anything, post in the forums here and someone will help you.
Whoops I forgot that that tutorial assumes swift knowledge. Here's the swift tutorial http://www.raywenderlich.com/category/swift
 
I'd certainly second iphonedude2018's advice.

If you want to learn to code for iOS or macOS then Swift and Objective-C are the default languages, and Xcode is the main IDE used for coding. Apple tend to refer to Swift as the successor to Objective-C, but we're in a transition period where odds are that you'll end up having to know a bit of both. Personally, if I was in your position then I'd learn Swift for starters.


The Ray Wenderlich tutorials are excellent. There are also plenty of stuff at Lynda.com:

http://www.lynda.com/search?q=swift

There's also plenty of info at Apple, for example:

https://developer.apple.com/library...al/Swift_Programming_Language/GuidedTour.html

Good luck!
 
Thank you again, both of you. Right now I am currently reading up on Objective-C, Swift, and Python. I am also looking into Ruby as I hear that can also be fairly simple to pick up.
 
Thank you again, both of you. Right now I am currently reading up on Objective-C, Swift, and Python. I am also looking into Ruby as I hear that can also be fairly simple to pick up.

I would recommend you to step back a little and think about what your goals are. Then focus on the language that would work best for you.
Keep in mind that it seems very obvious that Apple is pushing Swift forward with the goal of replacing Objective-C in the future.

I recommend this course at Udemy.

It starts at the very beginning of programming, and you end up actually creating real-world apps.

I would also highly recommend the course at Udemy that huck500 mentions above.
 
  • Like
Reactions: buttongerald
Guys, I'm currently in the similar situation as the OP and thinking about picking up Swift. However is there any point enrolling to a Swift 2 course you've mentioned or wait for the release of Swift 3 and XCode 8? There are some fundamental changes between Swift 2 and 3 so I'm not sure if to wait or not. What would you do, please?
 
Guys, I'm currently in the similar situation as the OP and thinking about picking up Swift. However is there any point enrolling to a Swift 2 course you've mentioned or wait for the release of Swift 3 and XCode 8? There are some fundamental changes between Swift 2 and 3 so I'm not sure if to wait or not. What would you do, please?
In terms of syntax and methods, very little major changes are present in swift 3. Some methods have been changed, but for the most part they still perform the same job as before. Waiting for a swift 3 course would just make it more likely for you to abandon programming and loss interest, so enroll in the swift 2 class now.
 
  • Like
Reactions: tomnavratil
In terms of syntax and methods, very little major changes are present in swift 3. Some methods have been changed, but for the most part they still perform the same job as before. Waiting for a swift 3 course would just make it more likely for you to abandon programming and loss interest, so enroll in the swift 2 class now.

Good to know, I've checked some of the development notes on GitHub and it definitely seems that way. Thanks a lot for clarification!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.