I want to learn to code on my Mac. What's the best place to start, and which language should I learn first?
Programming is one the greatest skills you can possess in the modern world. And it's easy to learn programming, and how to code, using an Apple Mac computer.
If you want to learn programming, then our complete guide to coding and programming on a Mac is a great place to start. We've collected together some of the best tutorials and guides covering every aspect of Mac programming.
Bookmark this page for reference. We've collected a vital list of resources that are well worth keeping around.
Complete guide to coding & programming on a Mac: Getting started
If you're a complete newcomer to coding, then you probably have lots of questions to ask. Why you should learn to code, how to set up your Mac computer for programming and how to get started. Fortunately, these tutorials will help you start out:
- Why you should learn to code (and how to do it)
- Why programmers think Mac OS X is the best operating system to use
- 10 best Mac programming resources for beginners
- 10 things every Mac coder should know
- 10 tips for new coders
- Best Mac for app development
- Best Mac for learning to code
Complete guide to coding & programming on a Mac: Programming languages
Once you've set up your Apple Mac for coding, the question becomes: which programming language should I learn. A question that's amply answered here: Which is the best programming language to learn on my Mac?
We've got guides to getting started with all the major programming languages on a Mac (as well as side-orders like HTML and SQL - these aren't strictly speaking languages, but are useful to know).
These are the best programming languages to learn on a Mac, and we've listed them in rough order of complexity (easiest to learn -> hardest to learn).
- How to learn programming with Scratch on a Mac
- How to set up and learn Python coding on a Mac
- Learn how to code in Java on a Mac - How to - Macworld UK
- Learn to code in C-sharp
- Learn to code using the C programming language on your Mac
- How to learn Swift online
Complete guide to coding & programming on a Mac: Best coding elements to learn on the side
Don't listen to coding snobs who tell you what is, and isn't, programming. All of these technologies interlink, and a good coder will learn them all.
- Create a website with your Mac
- Terminal tips and tricks: 10 terminal projects
- How to set up and learn SQL on Mac
Complete guide to coding & programming on a Mac: Get started with iOS and macOS development
Being an Apple owner, you're probably keen to develop apps for both macOS and iOS. And that means learning Apple's Swift programming language.
Fortunately, this is a lot easier than you think. Apple goes out of its way enable Mac owners to learn Swift, and use it to develop apps for the iPhone, iPad, iPod Touch, Apple TV and Mac.
These resources will help you get started:
- How to use Swift Playgrounds & learn to code with Swift
- 10 online developer resources to help you learn Swift 3
- How to write apps with Swift 3
- How to make an app for iPhone or iPad
- Swift 3.0 at WWDC 2016
- Develop apps for Apple TV
Complete guide to coding & programming on a Mac: Creating games
If you'd like to start a career in games development, we've got plenty of advice:
Complete guide to coding & programming on a Mac: Best hardware
Finally you may want to consider what computer you use to learn programming. Learning to code on the Mac is the best step forward - see our guide to the Best Mac for app developers for more buying advice - but you can also use a Mac alongside microcomputer boards, such as the BBC micro:bit and Raspberry Pi.
These boards are cheap to buy (between £5 and £30) and enable you to safely use code to control electronic circuits, build robots and develop fun projects.
Complete guide to coding & programming on a Mac: Teaching kids to code
Coding is an incredibly valuable skill, and basic programming skills are one of the best gifts you can pass on to your children. Fortunately there are plenty of ways to teach kids coding in a fun and age-appropriate way.