Do I Need a Mac to Make iPhone Apps?

Photo by Rodrigo Galindez

Do I need a Mac to make iPhone apps? Apple Watch apps? Mac apps? The short answer is no. But there's a lot more to it than just that. 

When making apps for an Apple device (phone, watch, computer) you need to use Xcode. A free piece of software created by Apple that allows you to design and code up apps. Xcode only works on Apple's operating system OS X. So if you have a Mac, then you can run Xcode no problem. If you don't have a Mac, there are two work arounds that I know of that you can use. So in total there are three ways you can run Xcode. Here's my thoughts on each of them.

1. Using a Mac

This is by far the best option. Using apple's hardware to run Xcode is going to be your best experience for making apps. You might not have a Mac though and buying one can be expensive. I remember when I wanted to first buy a Mac and couldn't get over the price tag. The MacBook I was looking to buy cost $1,200. A PC with similar parts (RAM, CPU, HardDrive, etc...) cost only $400. Three times the money for a stinking Apple logo! In retrospect, the money was well worth it.

If you are interested in going this route and buying a computer, check out my Mac Buying Guide for developers.

Also be on the lookout of place where you could use a Mac for free. Maybe your library has a machine you can use. 

2. Using a Cloud Service

This is my second favorite option. It's a really creative solution for helping people make apps who don't have Macs. There are few companies that own a bunch of Mac computers and allow you to access them via the web and control them remotely. It's kind of like renting a Mac month to month. All you need is a web browser to access your machine. The downside to this is you have to pay a monthly fee and you must be connected to the internet to do your work. Here are links to two companies that do this: macincloud.com and xcodeclub.com

3. Virtual Machine

This option involves creating a virtual machine on your computer, installing Apple's OS X operating system, and then running Xcode on that virtual machine. I don't like this option for two reasons. 

  1. It's complicated. It takes a lot of work and technical know how to get your virtual machine set up. 
  2. It's illegal. Apple doesn't sell OS X by itself as a stand alone product. They sell computers with OS X on them. For this reason, you can't buy a copy of OS X and run it on your computer. You would have to download it illegally. Some people argue that Apple would never come after you for doing this but I don't think it's worth the risk and besides, you're going to have a MUCH better experience with an actual Mac. Here's a good summary of the legality.

Final Thoughts

If you got the budget for it, buy a Mac. I know it's crazy expensive but I believe you'll fall in love with your Mac. If you end up using a cloud service, let me know in the comments what your experience has been. I'd love to hear more.