I need to get a Mac for iOS development (and some ruby on rails). I have limited amount of money, so something below $2000. Should I get a 13 inch Macbook pro with 4gb of ram or is retina something I should get. Is a desktop Mac better than laptop?
I have a current model Macbook Air 13" w/ 4 Gb of ram. I do a whole variety of development (PHP, golang, python) with MongoDB and MySQL.
Currently, I have a few tabs in the terminal open connected to a few servers, MongoHub (MongoDB client), Sequal Pro (MySQL client), Firefox (2 open tabs), Chrome (15 open tabs), Sublime Text 2, Spotify, Cyberduck (FTP/SSH client), MAMP Pro, iTunes (phone is backing up), Adobe Reader, VLC and Excel open. I usually have those, along with Photoshop and Parallels opened as well and haven't felt any slowdown at all.
I'm using the Microsoft Wireless Keyboard 800 and Microsoft Bluetooth Notebook Mouse 5000, have a 23" AOC monitor hooked up via Displayport to HDMI adapter from Monoprice. This setup was probably around ~$1500 without any warranties. I just picked up a nice SD card that is sized to fit almost flush with the Macbook Air and is 128 GB w/ a fast 90 MB/s read/write which I can use as a file dump, that cost around $50 on Amazon, but worth picking up a few if you want to isolate projects or just use as backup.
Unfortunately, the Macbook family isn't too upgrade friendly so you may buy a laptop and it may be underpowered and until you refresh your hardware, you'll be stuck with that hardware, so it may take you a few years to get the exact setup you need. This is why people recommend maxing out as much as you can with RAM and expand hard drive modularly. I'd honestly recommend not going with an older model laptop or desktop because HD space is going to end up being your bottle neck, not RAM, and the newer lineups have USB 3.0 so you want to be sure you get that, then you can pick up a 1 TB external USB 3.0 HD for $100 and won't suffer with USB 2.0 speeds.
If you have limited budget don't worry about retina. You're a developer, not a designer so that shouldn't be your priority.
Think about getting some used macbook pro, replace the hdd with ssd for system and apps, and super drive with case for hdd and put there some larger hdd for data.
The money that you save use to get more ram (and maybe faster ssd) and bigger display to fit simulators.
This setup should work for most cases giving you mobility, speed and space to work, when needed.
I'm developing iOS on a mini and am happy, I don't have any issues with it at all. The fan is nearly silent even when it's running. Don't have any performance issues with XCode or so.
If you don't need a laptop, save the money and get a mini. Even though it hasn't been updated for well over a year, it still buys you the most RAM/$ and CPU/$.
I have used a Macbook Air 13" (i7 2GHz, 512GB SSD, 8GB RAM) for over a year exclusively for software development. The machine has been great, except I am frequently swapping windows back and forth, because of the screen resolution (1440x900).
I develop using numerous tools including Emacs, Xcode, IntelliJ, WebStorm and Visual Studio (running inside VMWare Windows 8 Pro). I have never noticed any lag whilst coding
Would I buy the same size machine again? Yes. The trade off is weight against screen size, although I think a higher resolution screen might put a strain on my eyes considering how long I use the laptop.
For me desktop was never an option, because I code on the train often. I also do not use either an external monitor nor a keyboard.
In the current pro line, I'm not sure I would get anything other than the retina ones. Given that the 13 inch non retina has an older cpu, and a fairly low screen resolution. I've had no problems doing rails, sql, and vagrant on my 2012 13 inch MBA with 4gb of ram.
If you don't have that much $$, get a Macbook Air. I did all my development on a 13" Macbook Air before my current job (and I still use it in my personal time) - I love how light it is and easy to carry around. If you're doing iOS + Rails you don't need any fancy power to do the majority of your work (and if you do, go buy time on AWS or something).
I bought the Macbook Pro Retina for Python+HTML dev, it is overkill and I don't find the retina screen to be a game changer on a regular basis. I'd go with the Air if I had to make the decision again. I do suggest maxing out the ram and such when you do it, though.
[+] [-] dougbarrett|12 years ago|reply
Currently, I have a few tabs in the terminal open connected to a few servers, MongoHub (MongoDB client), Sequal Pro (MySQL client), Firefox (2 open tabs), Chrome (15 open tabs), Sublime Text 2, Spotify, Cyberduck (FTP/SSH client), MAMP Pro, iTunes (phone is backing up), Adobe Reader, VLC and Excel open. I usually have those, along with Photoshop and Parallels opened as well and haven't felt any slowdown at all.
I'm using the Microsoft Wireless Keyboard 800 and Microsoft Bluetooth Notebook Mouse 5000, have a 23" AOC monitor hooked up via Displayport to HDMI adapter from Monoprice. This setup was probably around ~$1500 without any warranties. I just picked up a nice SD card that is sized to fit almost flush with the Macbook Air and is 128 GB w/ a fast 90 MB/s read/write which I can use as a file dump, that cost around $50 on Amazon, but worth picking up a few if you want to isolate projects or just use as backup.
Unfortunately, the Macbook family isn't too upgrade friendly so you may buy a laptop and it may be underpowered and until you refresh your hardware, you'll be stuck with that hardware, so it may take you a few years to get the exact setup you need. This is why people recommend maxing out as much as you can with RAM and expand hard drive modularly. I'd honestly recommend not going with an older model laptop or desktop because HD space is going to end up being your bottle neck, not RAM, and the newer lineups have USB 3.0 so you want to be sure you get that, then you can pick up a 1 TB external USB 3.0 HD for $100 and won't suffer with USB 2.0 speeds.
[+] [-] dchuk|12 years ago|reply
[+] [-] iloveshw|12 years ago|reply
This setup should work for most cases giving you mobility, speed and space to work, when needed.
[+] [-] mattquiros|12 years ago|reply
[+] [-] CookWithMe|12 years ago|reply
If you don't need a laptop, save the money and get a mini. Even though it hasn't been updated for well over a year, it still buys you the most RAM/$ and CPU/$.
[+] [-] stasy|12 years ago|reply
[+] [-] Maximal|12 years ago|reply
I develop using numerous tools including Emacs, Xcode, IntelliJ, WebStorm and Visual Studio (running inside VMWare Windows 8 Pro). I have never noticed any lag whilst coding
Would I buy the same size machine again? Yes. The trade off is weight against screen size, although I think a higher resolution screen might put a strain on my eyes considering how long I use the laptop.
For me desktop was never an option, because I code on the train often. I also do not use either an external monitor nor a keyboard.
[+] [-] frankHQ|12 years ago|reply
Retina vs. non-retina is not a huge deal, especially if you're trying to keep it under budget.
Definitely go laptop!
Good luck.
[+] [-] ericcumbee|12 years ago|reply
[+] [-] koberstein|12 years ago|reply
[+] [-] YoAdrian|12 years ago|reply
27" IPS-ZERO-G Slim Monitor WQHD 2560x1440 - Dual Link DVI $390
http://www.monoprice.com/Product/?c_id=113&cp_id=11307&cs_id...
Mini DisplayPort + USB to Dual-Link DVI Adapter $70
http://www.monoprice.com/Product?seq=1&format=2&p_id=6904
[+] [-] hkarthik|12 years ago|reply
[+] [-] yizzerin|12 years ago|reply
[+] [-] 27182818284|12 years ago|reply
[+] [-] mattwritescode|12 years ago|reply
Well if you wanted to save your self a whole heap of money get a mac mini.