Picking a laptop for professional programming

averagemoe

Estimable
Nov 18, 2014
1
0
4,510
Hello, I apologize if this is a repeated thread but I can't seem to find updated information pertinent to my situation. I am going to be starting university this fall where I will be studying computer science. I need a laptop that I will be able to use throughout the four years of university, and also during my job placements that are required for my degree (a minimum of 1 year of paid work). I will require the laptop for programming as well as for use during regular university courses such as English and calculus. This laptop will be my main computer for the next 4 years. The two options that I am considering right now are the 13" Macbook Pro with retina (256GB SSD, 16GB, 5th gen core i5) or the Dell XPS 13 (256GB SSD, 8GB RAM, 6th gen core i5). I have a couple of questions regarding the above laptops. I plan on doing things such as web design, possibly game development with unity, and other general programming.I do not have plans to be using Photoshop or 3D modelling software professionally.

1. Which OS will I find is easier to develop on? macOS or Windows 10 (I understand this is subjective but I have heard the argument that since macOS is unix based its easier to develop on)
2. Which is more reliable? Apple or Dell?
3. Should I be going for the skylake processor or the extra 8GB of RAM?
4. Which is more durable? I'd like to have as little problems as possible with the laptop

I appreciate any help that can be given! If there is a formatting issue with my questions, or they do not follow the rules of the forum please let me know and I will revise them.

Note: I do know that there is a possible new Macbook pro coming out this year but based on the rumored port changes I'm not sure if I am still interested, also I start university on September 1st and don't think the laptop will be released in time.) Also I'm looking at a budget of about $2,300 CAD (about $1,780 USD).
 

nathan h

Estimable
Oct 9, 2014
3
0
4,510
Hello Average,

Although I can't really speak for performance of above named devices, I do have a few things you might want to consider.

First, both the Dell and Apple devices you chose are rather small (13") for programing/web designing, you might want to consider something with a larger display, like a 15-17" device, but a larger display adds weight, and that might be something you don't want.

Second, I am going to be biased towards Windows as that is my main OS, me and OSX have never really got along. But either way you go, Mac vs. Windows you may want to consider a dual boot option, have your main system with a second Linux install like Ubuntu. This would allow for complete cross platform testing of any programs/designs.

Third, both devices you named are limited to the 256GB SSDs (With the exception of a later swap, which might be annoying/risky with important files on the line), although they provide great performance, 256GB will fill up a lot faster than you think, esp. when saving renderings/textures from Unity. Maybe consider something with a hybrid drive.

Best wishes, and have a great summer!

~Nate
 
CompSci departments tend to do a lot of stuff in Unix. If you can talk to some professors or current CS students, get their opinion on how important that'll be. While OS X is not the commercial type of Unix (long story about AT&T vs BSD Unix), it is close enough for most purposes. Since OS X is based on BSD Unix, it can help you understand some of what you're being taught, as well as help you better understand how your laptop works. Personally I prefer Unix as a development platform as well. It was built from the ground-up to be multi-user and has always incorporated things like user permissions. These things were tacked onto Windows as an afterthought. Microsoft has gotten it to where it works (and actually provides more features in some cases). But it always seemed a bit rickety to me, and some things still don't make sense to me.

Now for the fly in the ointment. The Macbooks suck for games. The 13" MBP uses Intel Iris graphics (basically the regular Intel integrated graphics with some fast RAM that kinda acts like VRAM on the CPU die). The 15" MBP gives you the option of a discrete GPU at an exorbitant price, but not a very good one. Apple refuses to mar the bottom of their laptops with air vents, which means they get very hot inside under load, making it virtually impossible to put in a decent GPU. So while you'll be able to develop games on a MBP, you won't be able to test run them at any decent FPS.

As for the display, yes a bigger display is better for programming. But I think any real programming needs at least two screens (one to show the code, the other to run the program you're writing, especially if you're stepping through it with a debugger). So you're eventually going to wind up with an external monitor or two hooked up to this anyway. So whether you need the laptop's screen to be big really depends on how much coding you're planning to do while lounging on the grass in front of your dorm.

Due to the game aspect and the multi-monitor eventuality, you may want to consider getting a laptop + (eventually) a desktop for games. Depending on how the school's network is set up, you may even be able to use the desktop for extra storage (VPN to your dorm room's router, desktop's HDD set up as a network share, use remote desktop or VNC to have the desktop's display show up on your laptop, so your laptop can act as a dumb terminal to use the desktop). I've been using gaming laptops for the last 12 years, but I think my next one will just be a regular laptop with a so-so GPU for when I'm on the road, and I'll use remote desktop and Steam In-home Streaming to do the heavy lifting at home.