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

HiSierra

macrumors newbie
Original poster
Jun 13, 2017
3
0
Greetings, Folks!

I apologize if this isn't the correct section. I am starting a Masters in Software Engineering with a concentration in Real-Time Game Systems and am curious as to which MacBook is the most appropriate for my level. I'll be spending the first year learning Python, C++, and Java. The second and third years I'll be more involved in graphics development, real-time systems, and game-engine programming. I'm leaning towards the MacBook Air. That said, I'm looking for a MacBook that can get me through the next three years, then I'll upgrade once I graduate. Thanks much!
 
What's your budget?

Please explain why you're leaning towards the MacBook Air. That is, which of its features are important (or do you think are important), and what priority do you give each one.

In my experience, the single most useful feature for programming is display size. You will want to see as much as possible at once, so you don't have to switch back and forth between windows, views, virtual desktops, etc.

The main thing that's hardest to upgrade is display size. Everything else can usually be supplemented or upgraded, and often quite easily. Granted, it's not impossible to upgrade display size, given DisplayPort, Thunderbolt, etc., but when you factor in adapters, external displays, and relatively poor mobility, everything else is usually cheaper, easier, and more mobile.
 
Last edited:
Greetings, Folks!

I apologize if this isn't the correct section. I am starting a Masters in Software Engineering with a concentration in Real-Time Game Systems and am curious as to which MacBook is the most appropriate for my level. I'll be spending the first year learning Python, C++, and Java. The second and third years I'll be more involved in graphics development, real-time systems, and game-engine programming. I'm leaning towards the MacBook Air. That said, I'm looking for a MacBook that can get me through the next three years, then I'll upgrade once I graduate. Thanks much!

Are you in the US? I ask because here, anyone entering a Masters program in software would have already completed a 4 year degree in the same subject. You would have covered such elementary subjects like learning programming languages in the first year or half year.

So I'm surprised you'd be at the beginner level.

But OK, so you are where you are. In my option, having done not much else but write code for the last 25+ years what matters is SCREEN SPACE. The bigger the screen the better. You want to be able to see different parts of your own software each in it's own window also reference material and have room to run and test the current version the program you are creating too. Some people will use multiple monitors.

Personaly I like my 27" iMac. And don't like multiple monitors. But I also own a 13" MacBook pro and can make do with a 13" screen by using tabbed editors and tabbed browsers but it is not as fast.

I've also been a university student recently and the 13" screen is as big as I wanted to cary with me. A 13" "air" would work OK but you will want to also need a large, high quality monitor. and a better keyboard.

One BIG question is the OS you will be using in school. But you can run whatever you like inside a virtual environment on the MacBook. If THAT is required then you will need as much RAM as you can get and a reasonable powerful CPU too. And enough disk space for Two or three operating systems

Developers do tend to use VMs. I usually keep a Linux VM running and will log into it as if it were a remote computer. I keep a Windows 10 VM in the Mac too. You want 16GB of RAM at least if you heavy user of VMs and four cores. A big monitor to use on your desk at home.
 
Last edited:
A MacAir would do well. The 13" screen size would be too small for my old eyes and bug hunting for a long period of time. Having said that, your university code will be small in size and focused so it would work well.

If you are not delving into XCode for iOS I would recommend a ZenBook:
https://www.asus.com/us/Laptops/ASUS-ZenBook-Pro-UX501VW/

Thank you for taking the time to respond. That is a great suggestion for a laptop! I will be developing in Swift for some courses, which is why I was leaning towards the MacBooks. That said, you are correct in that the vast majority of my courses would not require Xcode. I'll certainly look into this.

What's your budget?

Please explain why you're leaning towards the MacBook Air. That is, which of its features are important (or do you think are important), and what priority do you give each one.

In my experience, the single most useful feature for programming is display size. You will want to see as much as possible at once, so you don't have to switch back and forth between windows, views, virtual desktops, etc.

The main thing that's hardest to upgrade is display size. Everything else can usually be supplemented or upgraded, and often quite easily. Granted, it's not impossible to upgrade display size, given DisplayPort, Thunderbolt, etc., but when you factor in adapters, external displays, and relatively poor mobility, everything else is usually cheaper, easier, and more mobile.

Thank you for your response. My budget would allow an entry level MacBook Pro, but I would like to keep costs down as well. In terms of features, I should have mentioned that portability is a concern. That is why I am leaning towards the air as well as the lower cost. I commute three hours round-trip to work/school via the train. The commute gives me plenty of time for studying and coursework. I walk another mile to work from the station (although I could additionally take the subway to my employer's doorstep), but the school is only half a block away. In terms of power/speed, I only want what will get the job done while in school. I appreciate your feedback on display size as I hadn't considered it.

Are you in the US? I ask because here, anyone entering a Masters program in software would have already completed a 4 year degree in the same subject. You would have covered such elementary subjects like learning programming languages in the first year or half year.

So I'm surprised you'd be at the beginner level.

But OK, so you are where you are. In my option, having done not much else but write code for the last 25+ years what matters is SCREEN SPACE. The bigger the screen the better. You want to be able to see different parts of your own software each in it's own window also reference material and have room to run and test the current version the program you are creating too. Some people will use multiple monitors.

Personaly I like my 27" iMac. And don't like multiple monitors. But I also own a 13" MacBook pro and can make do with a 13" screen by using tabbed editors and tabbed browsers but it is not as fast.

I've also been a university student recently and the 13" screen is as big as I wanted to cary with me. A 13" "air" would work OK but you will want to also need a large, high quality monitor. and a better keyboard.

One BIG question is the OS you will be using in school. But you can run whatever you like inside a virtual environment on the MacBook. If THAT is required then you will need as much RAM as you can get and a reasonable powerful CPU too. And enough disk space for Two or three operating systems

Developers do tend to use VMs. I usually keep a Linux VM running and will log into it as if it were a remote computer. I keep a Windows 10 VM in the Mac too. You want 16GB of RAM at least if you heavy user of VMs and four cores. A big monitor to use on your desk at home.

Thank you for your feedback, I truly appreciate it. Yes, I am in the U.S. The program I'm enrolled adds an extra year for folks, like myself, that do not have an underground background in computer science. It's a quarter system, so the first year (3 quarters) is comprised of discreet mathematics, Python, Java, and C++ to get me up to speed. The second and third years are focused solely on the engineering side.

Being the second person to stress the importance of screen size, I will certainly make it a priority in my selection. Almost all of the courses are C++ based, with a few courses using Swift. In terms of OS usage, the few instructors and advisors that I've reached out to primarily use Windows, but there are others that code on Macs as well. I'm not certain there's a consensus.

Again, I truly appreciate the responses and feedback to my query and am open to more suggestions and insights as well.
 
Thank you for your feedback, I truly appreciate it. Yes, I am in the U.S. The program I'm enrolled adds an extra year for folks, like myself, that do not have an underground background in computer science. It's a quarter system, so the first year (3 quarters) is comprised of discreet mathematics, Python, Java, and C++ to get me up to speed. The second and third years are focused solely on the engineering side.

Being the second person to stress the importance of screen size, I will certainly make it a priority in my selection. Almost all of the courses are C++ based, with a few courses using Swift. In terms of OS usage, the few instructors and advisors that I've reached out to primarily use Windows, but there are others that code on Macs as well. I'm not certain there's a consensus.

Again, I truly appreciate the responses and feedback to my query and am open to more suggestions and insights as well.[/QUOTE]

As for the OS, a Mac can run Mac OS, Windows, Linux, or BSD Unix and with virtual machine technology it can do serval of these at the same time. A standard PC can run any of those Ones except Mac OS.

I've actually been to grad school twice, first computer science then education. So they allow you to enter but you need to make up a lot of prerequisites. You need both a 13" for school and if you can a bigger monitor for use on your desk.

Expect o spend MANY hours getting stuff to work. One thing about CS majors that is no true with other majors (I've done both) is that with CS your stuff has to actually work. It's not like a history paper where you can adapt any opinion you like so long as you support it and get all the citations correct. No, your face detector has to actually detect faces. So you WILL spend long hours using that big monitor at 3:00am

One more but of advice: Start writing code NOW. The details, the language and all don't matter. Write a text based adventure game or a postage calculator or anything simple. But start NOW. Other in your program will have been doing this from an early age.
 
I'm very happy with my 13" MacBook Pro as my main machine. It's easily powerful enough to fly through the school-related coding (and building and compiling) and at the same time portable enough to carry everywhere. The screen estate is a non-issue on the move and easily solved by a nice second monitor on my desk at home.

Personally I wouldn't get an Air because of the display (once you go HiDPI, you never go back) and I certainly wouldn't get the MacBook as my ONLY computer, so that would, even now, leave me with a Pro. Without the gimmicky blurry stripe, of course.
 
Get a 15" MBP, so you can have a reasonable amount of screen space, and perhaps a better graphics processor. The best advice I give everyone is to buy the most powerful computer you can right now (within your budget). Don't skimp. View this machine as a 4+ year investment. You don't want to be 2 years in and find that its unsupported, has less storage, memory or power than you need. I've gotten 7 years of good service out of my (desktop) Macs.
 
  • Like
Reactions: 0002378
If you're trying to stay low budget I'd probably recommend a used or refurbished (or overstock or whatever) 13" pro from like two years ago. The ones that still have USB 3 and HDMI. Not quite as small and sexy as the new ones, but still pretty damn portable, and you won't need a sack of dongles. You can probably get one with plenty of ram and a decent sized SSD well within your budget. It'll be fine for your needs performance-wise for quite a while, and the retina display really is worth it... the Air is 144x900 but you can run the pro in 1680x1050 mode for a bit more screen real-estate at the same physical size. It may not sound like much, but it makes a difference. Also HiDPi really is nice, especially for reading text at a small size - meaning you can see more lines of code at once!

tl;dr: I'd really recommend the pro over the air for the screen alone. Also, refurbished/used deals are your friend!
 
  • Like
Reactions: 0002378
Assuming your budget allows, which you have not mentioned, I would definitely not choose the Macbook Air. I would choose the Macbook Pro, for a simple reason ... each laptop/desktop model has a specific purpose and targets a specific niche of users.

The Macbook Air, because of its ultra portability, and affordability, targets light users who're constantly on the move but who do not require much heavy duty performance. This means you're not getting the latest/greatest processors, and roughly half the max RAM a Pro would come with. This means the Air sells to your average student who needs Word/Excel and internet access or the corporate employee who gives presentations and needs to browse YouTube/Facebook on those long plane rides across continents. It does not cater to power users doing heavy duty graphics work or running memory hogging IDEs like XCode. It is simply not meant for power users.

However, as the name suggests, the Macbook Pro is built for power users. It uses the more recent/powerful Intel processors, provides more expansion ports than the Air, and is more configurable/upgradable than the Air. It is really not a tough decision to make to get the Pro, again, assuming that your budget allows it.

As a former Computer Science student myself, I can attest to the need for speed. You want to be able to efficiently run your programs and have multiple windows open to look at reference docs while looking at code. And if you're doing anything with an IDE like XCode (your Swift programming), Eclipse or IntelliJ (Java programming) lemme tell you - you're gonna need a ton of memory, first of all. IDEs go through memory like water.

As someone else mentioned, if you think a laptop kicks ass today, just wait two years and you will find yourself lagging behind, especially since you're in the realm of power users (programming/game-engine graphics development).

Go pro. Easy !
 
Last edited:
I have from time to time done some developing on an 12" iBook (1.33GHz,1.5GB and 1024x768) without much problems.

Sure we are talking bout hobbiest project, but at several MB of sources spread over 100+ files it's for sure bigger bigger then anything you'll ever encounter in class.

So CPU/RAM ain't no issue as long as it can run the OS and whatever editor/compiler/SDK your using.

Screen real-estate will be major issue on any laptop (even a 17") so you have to take some effort to setup your environment accordingly.
 
Thanks much to all for taking the time to reply. I'm now leaning towards a refurbished 15" MBP. I appreciate everyone's assistance.
 
Thanks much to all for taking the time to reply. I'm now leaning towards a refurbished 15" MBP. I appreciate everyone's assistance.
The 15" MBPr is my go to machine for development. I truly use it three times as much as I do the iMac27, Twin Mac Mini Servers with 49" 4K monitor or the 15" Zenbook 4k with touch screen.

The MBR15 is the perfect weight to power to screen size to awesome for me. I think you will be very happy.
 
I suggest you get a Retina Macbook Pro (not the new one) with i5 and get at least 8gb ram. You can save some money by buying refurbished. And get at least 256gb ssd.
This machine should last at least 3 years.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.