Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

I intend to start to develop for Apple products. My question is if a Mac mini with the below configuration will suffice for this purpose.

  • 2.3GHz dual-core Intel Core i5

  • 2GB memory

  • 500GB hard drive

  • Intel HD Graphics 3000

  • OS X Lion

I intend to develop in Objective-C but the question is if Apple will farther allow native code apps on their mobile hardware.

share|improve this question
2  
Discussing IPC and COM deserves its own question, and would be more relevant on a site like stackoverflow.com or programmers.stackexchange.com . –  bneely Feb 25 '12 at 20:37
3  
I'm not sure why I was down voted for stating that 2GB RAM was insufficient, but it is. –  EmmEff Feb 25 '12 at 20:46
3  
Get an SSD, it's the most valuable investment in your developer happiness you can make at the moment. As Jeff Atwood puts it, “I can't imagine using a computer without a SSD any more; it'd be like going back to dial-up internet.” –  Dan Feb 26 '12 at 1:01
    
Also note that 2 GB of RAM is the bare minimal that Apple recommends for just installing Lion, and I think a general rule of thumb is always have more than the bare minimal amount that the OS requires to get good performance... support.apple.com/kb/HT4949 –  MrDaniel Feb 26 '12 at 5:09
    
RAM is faster than a SSD, once everything is loaded into RAM, paging out to a SSD is not a good solution either. If you are only going to do one thing upgrading the RAM should be your #1 priority. One plus is that it looks like you will have an easy to upgrade mac mini RAM wise (putty knife not required). 16GB is the Max you can install I would shoot for 8GB. –  MrDaniel Feb 26 '12 at 5:19
add comment

3 Answers

I have dual core i5 macbook pro with 4GB memory. I am working on an iOS game in my free time. I am happy with build times and debugging performance.

On my system (running OSX Lion) I have around 200MB free memory while debugging on the simulator, around 300MB while not debugging. Debugging on the device consumes less memory than the simulator. I have iTunes and safari open which consumes a lot of memory too. So 2GB memory may be somewhat insufficient. You should have 4GB to be safe.

As for the native code question, Apple will almost definitely allow native code apps. They don't allow Flash. They don't allow Java. They don't allow just-in-time compiling of .NET/mono. They actively develop, advertise and enforce their SDK. They allow freely mixing C/C++/Objective-C in your code. They also allow script based games for example, Corona SDK uses Lua as scripting language, and there are many games developed with Corona SDK. You should have a look at such SDKs since they allow developing both in MS Windows and OSX. Also such SDKs allow you to develop cross platform apps, which means you can develop for iOS and android at the same time. However, you must have a mac and iOS developer account (99$/yr) to debug and publish for iOS (no such restrictions for android).

share|improve this answer
    
“They don't allow just-in-time compiling of .NET/mono”: Precisely the reason MonoTouch uses AOT instead of JIT. You can write in C# and compile it to native code with MonoTouch. –  Dan Feb 26 '12 at 0:57
1  
Free memory isn't a good measure for whether you have enough RAM or not. OS X will adjust it's memory usage to suit the capabilities of your hardware. If you have 8GB, the system will use much more memory than if you have 2GB. And it'll be a lot faster on the 8GB system. –  Abhi Beckert Feb 26 '12 at 1:21
add comment

Yes - Xcode makes native code targeted for iOS devices and objectively, anything that runs Lion is fully capable of developing software for iOS.

Subjectively, some developers prefer specific CPU and RAM/SSD and screen layouts ( say a pair of 30 inch displays mounted portrait) but these performance and usability preferences are highly personal choices and also depend highly on "how much $ is your time worth". A full time developer that bills at 150/hr and has months of backlog would easily "need" an 8 core MacPro with 32 gig of ram and SSD drives from an ROI standpoint, but not from an "Xcode won't work on lesser hardware" standpoint.

share|improve this answer
add comment

Xcode will work on that system, but performance will be bad with only 2GB of RAM, especially with some of the debugging tools, or if your app is only half finished and you haven't optimised it's memory usage yet (I like to get my app working first, and then figure out how to reduce memory usage later).

It will be absolutely worth spending a tiny bit of money to upgrade it to 4GB, and honestly I would upgrade to 8GB instead.

RAM is usually cheaper if you buy from a third party and install yourself. There are many RAM companies who will tell you exactly what RAM to buy for your specific mac and how to install it (sometimes installation is easy, sometimes it's difficult, depending on the model).

Even if money isn't much of an issue (boss paying for it, etc), I still prefer to install it myself because build-to-order configurations can add weeks to the delivery time, when it only takes 10 minutes to install the RAM yourself (and you can use it with only 2GB if the mac arrives before the third party RAM). The only drawback is if you break something installing the RAM, it won't be covered under apple's warranty, and you may need to install the old RAM before doing a warranty claim, to prove that your third party RAM isn't the problem (bad RAM can cause all kinds of crazy issues).

The CPU and Graphics card are both plenty fast enough, as long as you're not working on 3D games.

Note there are plenty of mac programmers who always buy the most expensive Mac Pro available and still wish it was faster. If you buy a budget mac, don't expect Xcode to be blazing fast! But it will be plenty fast enough to get work done even on old second hand hardware.

share|improve this answer
    
Ya don't do it 2 gigs of ram should be noted as "unsafe at any speed." Its just a pure recipe for slowness, and it embarrassing that apple would ship a core i5 with so little RAM. Plus, your options of running Virtual Machines go out the window too, aka running Lion in VMWare, poof not going to work well. So yes 2GB will work,but you will be seeing Beach-Balls and disk pages out galore, which will further slow down you Mini!!! –  MrDaniel Feb 26 '12 at 5:04
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.