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

TomOSeven

Suspended
Original poster
Jul 4, 2017
571
699
Hi guys,

I don't currently have a Mac and I want to get into Swift development in XCode.

Since I'm quite happy with my gaming PC, I don't feel like shelling out 1500 Euro for a new Macbook Pro, so I'm considering getting a refurbished Mac Mini.

The specs:

- 4th gen i5, clocked at 2.6 GHZ
- 8 GB RAM
- 1 TB HDD

I found an iFixit guide to replace the HDD with an SSD, which would bring the price to around 500 Euro.

However, I'm a bit worried that the rather old, mobile dual core CPU and more importantly, the integrated GPU will throttle what I'm able to do with the machine.

I don't know how demanding Xcode is, and I don't understand the spec sheet of Thunderbolt 2.
It seems like the Mac Mini can't drive a 4k display at 60 FPS, but if I drop the resolution to 1440p, does that run at 60?

Any Swift developers here who made apps with just a Mac Mini? Or should I just bite the bullet and get a Macbook?

Cheers guys, appreciated!
 
I used Xcode (Objective-C, not Swift) on my 2012 Mini (16GB) with El Capitan. The version of Xcode available for El Capitan is not the latest. With all of those caveats, I can say that the user interface of Xcode with El Capitan was nowhere as snappy as it was when my 2012 Mini was new (back in December 2012) with Mountain Lion with whatever version of Xcode was current then. I think Xcode is trying to do all kinds of things in the background and that leads to it's lack of responsiveness. For me, deploying an app to the simulator or on a iPad (I haven't used Xcode to code an iPhone app in a while) isn't too bad but it's slower than running a freshly compiled app on the Mac for the first time. Obviously, a lot of that is how fast your iPhone/iPad is and the limitation of the bandwidth on the lightning cable.

If you're new to iOS development, it takes some time to gain some proficiency in programming for the iPhone/iPad. If you've done typical app programming in Linux and are simply moving to Swift for developing on the Mac, the learning curve is reduced, although one still has to become familiar with the graphics framework used on the Mac. With that in mind, it just may take some time before one will be able to make a decision as to how to proceed with programming - is it going to be something more casual or more serious. At which point, if you become more serious, you can spend more money to get a higher-performance computer. But spending that extra money for a MBP if the only justification for that is learning Swift programming may not be a wise decision. And who knows - maybe a new Mini will be available at that point.

I have Sierra with the latest version of Xcode on an external USB SSD. I also have the 2.6 Ghz 2014 Mini. I've only used this Xcode to make sure it was working and could compile/deploy my app to my iPad (not as easy as it sounds because of the certificates and other measures that Apple deploys to make sure you're not doing something they don't want you to do). I can give it a quick go sometime in the next few days and let you know what my impression is. One thing that I've noticed is that a lot of the Apple apps in Sierra are significantly smaller in size than their El Capitan counterpart. I haven't done enough work on comparable Macs (I haven't put Sierra on my Mini's yet) to make any statement on whether this translates into a noticeable performance difference.

Unless you're developing graphics-intensive apps for macOS or want to do iOS graphics-intensive apps and will work mainly with the simulator, the GPU should not be an issue. People have NOT been happy with doing 2560x1440 on 4K monitors. El Capitan seems to have been better in this respect but as I've noted before, the latest version of Xcode does not run on El Capitan. With the 2014 Mac, a native 2560x1440 monitor is a better choice (some of the wide monitors with 1440 pixels vertical may be able to work with the 2014 Mini at 60Hz).
 
  • Like
Reactions: TomOSeven
I got a chance to try out the latest version of Xcode on my 2014 2.6Ghz Mini (8GB) running Sierra from an external SSD. Using my app, I entered code (basically duplicating code from the lines above where I was typing) and moved around the file - trying to replicate a typical coding session. The iOS app that I have is one that I have on the App Store (free). It's certainly not the most complex app out there but it's not trivial either - with hundreds of program files (a bunch from 3rd-party libraries).

My impression is that the latest version of Xcode has been noticeably improved since the last El Capitan version. It seems to be more intelligent about when it should do background tasks like syntax checking. Whereas before it seemed to be constantly doing something in the background I feel that it seems to now wait until it senses the coder has stopped/paused typing. I also feel that it's more efficient at doing auto-completion - that is, presenting options for completing the method call you've started to type. At times in the El Capitan version, it did stop my flow of working. With the current version on the 2014 Mini, I think it's now a pretty useful tool. This is for Objective-C but I would think that Apple has put a lot of work into Swift so it should probably work even better there.

For the purpose of learning macOS/iOS coding, I think the 2014 mid-level Mini will work. I mentioned the caveat about the program(s) you intend to write - if they are compute/graphics-intensive and you're coding for macOS or iOS where you primarily plan on using the Simulator, then then 2014 Mac may not work as well. But, Xcode itself doesn't tax the GPU. Maybe some of the programs that come as part of the Xcode suite will (Instruments, as an example, although I don't think it will be an issue there either) but if you're at point, you've come a far way and perhaps it will be time for a more powerful computer. But I think your idea to get a Mini on the cheap makes more sense than to spend an extra 1000 euros when you're not sure exactly what you want to do with your coding efforts in the future. The thing about the Mini is that it really is flexible - people use it as a media server or file server, re-purpose it to run Windows or Linux. I use my 2014 Mini as a DVR and for video transcoding the shows/movies I record. So if you find that you either don't want to do Swift coding or find that you need a more powerful computer because you've gone beyond what the 2014 Mini can do, you can use it for something else.

Of course, this is just one person's opinion. Caveat emptor.
 
Thank you guys for your very thorough replies.

I'm going to bite the bullet and get a Macbook Pro instead. I was thinking that the biggest obstacles to coding wouldn't be a slow SSD or too little RAM, but actually not having the computer on me.

So I'm going to get a Macbook and have it replace my Chromebook at the same time.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.