Is A MacBook Pro Good Enough For iOS Development?

Written by: Reinder de Vries, April 12 2017, in App Development

Is A MacBook Pro Good Enough For iOS Development?

How fast of a MacBook do you need to comfortably code iOS apps? Is a MacBook Pro from two years ago good enough to learn how to code? Let’s find out!

Recently I’ve been getting a lot of “Is my MacBook good enough for iOS development?” questions on Quora.

The most popular, questioned models include:

  • The fourth-generation 2012 to 2016 MacBook Pro models, with the ~ 2.5 Ghz i5 and i7 Intel CPUs
  • The lighter 2012 to 2015 MacBook Air models, with the ~ 1.5 Ghz i5 Intel CPUs
  • The thin 12-inch MacBook, with the 1.2 Ghz m3 Intel CPUs

Those models aren’t the latest, but are they good enough to code iOS apps with? What about learning how to code?

My 2013 MacBook Air

Since 2009 I’ve coded more than 50 apps for iOS, Android and the mobile web. Most of those apps, including all apps I’ve created since 2013, were built on a 13-inch MacBook Air with 8 GB of RAM and a 1.3 Ghz Intel i5 CPU.

My first MacBook was the then new MacBook White unibody, which I traded in for a faster MacBook Pro (2011), which I traded in for my current, lighter MacBook Air.

I’m happy to report that after three years of intensive daily use, the battery of the MacBook Air is only through 50% of it’s maximum cycle count and still lasts 7+ hours on battery power.

In 2014, my trusty MacBook Air broke down on a beach in Thailand, 3 hours before a deadline, with the next Apple Store 500 kilometer away…

Frankly, I don’t think I’ll ever upgrade my current machine, but we’ll get to that in a second…

Get 5 of my best practices

Get 5 of my best practices

Learn how to build better iOS apps

I’ll show you exactly how I built a dozen professional iOS apps,
write extensible Swift code, and turn coffee into code.
Wait, what? Yup – into Swift code.

That Good Ol’ 100 Mhz i386 PC…

When I was about 11 years old I taught myself to code in BASIC, on a 100 Mhz i386 PC that was given to me by friends. It had a luxurious 16 MB of RAM, initially only ran MS-DOS, and later ran Windows 3.1 and ’95.

A next upgrade came as a 400 Mhz AMD desktop, given again by friends, on which I ran a local EasyPHP webserver that I used to learn PHP, MySQL and HTML/CSS.

Back then, we had no broadband internet at home, so I would download and print out coding tutorials at school, at the one library computer that had internet access, and completed the tutorials at home. The source codes of turn-based web games, JavaScript tidbits and HTML page snippets were carried around on a 3.5″ floppy.

Later, when I started coding professionally around age 17, I finally bought my first laptop. I got my first gig as a freelance coder: creating a PHP script that would aggregate RSS feeds, for which I earned about a hundred bucks.

Is a MacBook Pro good enough for iOS development? https://learnappmaking.com/ios-development-macbook-pro-good-enough/Click To Tweet

Xcode, iOS, Swift and The MacBook Pro

The world is different today. Xcode simply doesn’t run on an i386 PC, and you can’t save your app’s source code on a 1.44 MB floppy disk anymore. Your Mac probably doesn’t have a CD drive, and you store your source codes in the cloud.

Make no mistake – owning a MacBook Pro is a luxury. It’s not because learning to code was harder 15 years ago, and not because computers were slower back then. It’s because kids these days learn Python programming on a $25 Raspberry Pi.

I recently had a conversation with a young aspiring coder, who complained he had no access to “decent” coding tutorials and mentoring, despite owning a MacBook Pro and having access to the internet. Among other things, I wrote the following:

You’re competing with a world of people that are smarter than you, and have better resources. You’re also competing against coders that have had it worse than you. They didn’t win despite adversity, but because of it. Do you give up? NO! You work harder. It’s the only thing you can do: work harder than the next guy. When his conviction is wavering, you dig in your heels, you keep going, you persevere, and you’ll win.

(Fortunately my remarks didn’t fall on deaf ears, and we’ve continued our conversations.)

Great ideas can change the world, but only if they’re accompanied by deliberate action. Likewise, simply complaining about adversity isn’t going to create opportunities for growth – unless you take action.

If you want to learn how to code, be welcoming to adversity. Achieve excellence because of it, or despite of it, and never give up.

Build better iOS apps by mastering best practices and app architecture » Find out how

The State of The MacBook Pro

Recently, Apple released an upgrade for the MacBook Pro. Better specs, newer operating system, and a “Touch Bar”.

Many professional MacBook owners voiced their concern over the direction Apple’s hardware is taking, understandably arguing that their beloved designer machine appears to rather cater to the needs of entitled Millennials than the actual needs of professionals that rely on Apple’s hardware to produce value.

When life gives you lemons…

My trusty 2013 MacBook Air has to give out at some point, and I’m not sure what its replacement is going to be. A cheap netbook, and a second-hand Mac Mini in the cloud? Maybe I’ll install Ubuntu Linux, and run macOS on a virtual machine.

Is A MacBook Pro From 2015 Fast Enough?

Yes, it sure is. The recommended specs to run Xcode are:

  • An Intel i5 or i7 equivalent CPU, so ~ 1.5 Ghz should be enough (I can do with 1.3…)
  • At least 4 GB of RAM, but 8 GB lets you run more programs at the same time (Do you really need to?)
  • At least 128 GB disk storage, although 256 GB is more comfortable

Screen size is a matter of habit, and taste. I’m used to working on a 13″ screen, because I want to be able to work from coffeeshops or airport lounges. When I really need more screen space, I connect a cheap 24″ external monitor. I know developers that travel around with a 15.6″ external monitor.

Perhaps the one thing you really want to invest in is frustration tolerance, because you can really do without that MacBook luxury machine…

Is a MacBook Pro good enough for iOS development? https://learnappmaking.com/ios-development-macbook-pro-good-enough/Click To Tweet

Photo credit: Sean MacEntee, CC BY 2.0

Reinder de Vries

Reinder de Vries is a professional iOS developer. He teaches app developers how to build their own apps at LearnAppMaking.com. Since 2009 he has developed a few dozen apps for iOS, worked for global brands and lead development at several startups. When he’s not coding, he enjoys strong espresso and traveling.

Comments & Questions

Got a comment or question? Let me know! I read and respond to every one. Thanks!

  • Thanks for pitching in here Joe! I think you make a fair point.

    As I’ve outlined in the article, my experience with a 2013 MacBook Air has been OK. Not great, but not bad either.

    What you’re saying about a slow storyboard in Xcode may not be solvable by more & faster hardware. I’ve had issues with Xcode 8.3 where code completion would eat up 200% CPU, and I don’t think a faster CPU would have helped there. Using Simulated Metrics in Interface Builder would hang Xcode – nothing I could do about that either.

    What would you have me do – dissuade beginner developers to pick up iOS development because the only hardware that runs macOS and Xcode is too slow? If that were true, the App Store would be empty.

    I recommend people be mindful of the tools they use. I stay away from Storyboards because they don’t add much over individual XIBs. I don’t run the Simulator for every code change I make. I don’t run dozens of Mac apps at the same time – I can only use one at the same time anyway, and at certain points in my workflow I only need one app next to Xcode (Sketch, Terminal, etc.) When Xcode is slow, I restart it, and that may be smart for memory hogs like Photoshop, too.

    So yes, my advice may not be as sympathetic as you want it to be. But it certainly is empathetic to a point where I give people advice that helps them, instead of telling them to buy a faster Mac. It won’t solve their problems.

  • Joe Tavarez

    I whole heartedly disagree with the minimum requirements for Xcode. Minimum requirements for software have been a joke for more than a decade. Your statement about frustration tolerance is not being sympathetic to new developers. There is no way that you can run the simulator or a good size storyboard with the minimum requirements and still be an effective iOS Developer or have someone trying to learn who has to deal with slow equipment and the horrendous learning curve of iOS development. I have a 2011 MacBook Pro that has been upgraded with 2 GHz processor, 16GB [email protected] 1600MHz (I believe), and a SSD drive. The storyboard lags a lot to the point that it’s a headache. The iOS simulator takes a long time to load, in fact I go get coffee, comeback, and it may just be loading the app. Take into account the iterative process of having to make a change, compile, and run the simulator, test it on the iPad simulator and it takes a long time. Add running any GUI design applications (Adobe CC app), Postman, network traffic inspector, remote into an AWS server that supports your app. After 3-4 hours my MacBook Pro fan is nonstop and it’s so slow. Apple’s new MacBook Pros are a real disappointment and they should have at least gave folks a 32GB RAM option.