Macbook Pro vs Macbook Air for programming

aros1983

macrumors newbie
Original poster
Oct 4, 2014
2
0
I am going to start programming Objective C and would appreciate your thoughts on if I need to get a Macbook Pro vs a Macbook Air and why.
 

joshlalonde

macrumors 6502
Jul 12, 2014
422
0
Canada
Wait a bit until Yosemite gets released. Then you can learn Swift. Objective-C is hideous.

On topic, the MacBook Air is a great machine. You'll find that the MacBook Pro does not offer a lot more.

Pros and Cons, for you to decide which you can give or take:

MacBook Air
+ Thin, light (possibly hold it one hand)
+ More battery life
+ Still very capable machine
+ Cheaper
- Smaller screen (11-13), lower resolution
- Slightly less powerful

MacBook Pro
+ More powerful
+ Bigger screen, higher resolution (more screen real estate)
+ More ports
- Less battery life
- Not as light (but still light)
- Expensive!

If you can live without Retina display (which I happily do), then I recommend the 13" MacBook Air i5, 256GB SSD, 8GB RAM. Possibly get i7, but it may not be worth it. You'll get a comfortable screen, and lots of power in a little package. And unless you run a lot of intensive programs, you'll make it through an entire day without the charger! (Just don't leave your charger at home- I did that once and that was the one day I did drain my battery quick playing a game on battery)

If you intend to run VMs, then more RAM is a must.

If you need more real estate, then get a Retina MacBook Pro. It'll set you back a lot more, but you'll get the power and screen real-estate you desire. Just a bit heavier, and you may not make it through the day without a charger.

I'm a programmer, by the way. And I use the 13" Air. But only you can decide what's best for you. I would not recommend the 11" unless you have a monitor to plug into; even then, if this is also going to be your main computer, a 13 bigger screen will be better suited to your needs.

Go try both computers at the store. Start with the Air first, then try the Pro. Order is important, you'll spoil your eyes.
 

yosemit

macrumors regular
Jul 19, 2013
167
0
I am going to start programming Objective C and would appreciate your thoughts on if I need to get a Macbook Pro vs a Macbook Air and why.
I use a Macbook Air 11" i7/8GB/256GB frequently for programming. It's a very good and powerful programming machine. It's CPU performance is more than sufficient (the CPU runs up to 3.3GHz), and compilers benefit greatly from the very fast SSD.

Performance-wise, 11"/13" Air and 13" Pro have virtually no difference as for programming. 13" Pro has better GPU, but IDEs and compilers don't use GPU. 15" Pro is much more powerful, though the extra performance may not be needed.

11" vs 13" is another tricky question. I use a 28" external monitor with my 11" Air, so the small 11" screen is not a problem. Occasionally I program on the 11" screen, thought obviously that's not productive.
 

motrek

macrumors 68020
Sep 14, 2012
2,428
150
Wait a bit until Yosemite gets released. Then you can learn Swift. Objective-C is hideous. ...
To be fair, Obj-C[++] is a superset of C++, so you can write almost all your code in C/C++ and then just call Apple's APIs using Obj-C as necessary.
 

joshlalonde

macrumors 6502
Jul 12, 2014
422
0
Canada
wait isn't that was OSX, iOS and Swift are based off of :p
Yes, I think Swift can evil call the old APIs.
But Objective-C is so messy and gross to read.

----------

To be fair, Obj-C[++] is a superset of C++, so you can write almost all your code in C/C++ and then just call Apple's APIs using Obj-C as necessary.
I took a second look at Object Oriented C++ and I guess it's not that bad. But it's still not a very pleasant language in my opinion. -> and >><<, etc. seem unnecessary.

C++ is more like C-- IMO
 

bjet767

macrumors 6502a
Oct 2, 2010
967
313
Let me qualify myself first,

I've been programming in COBOL, Assembly, C, C++, Objective C and now did some intro work with Swift and I think you've missed a couple of points in trying to decide what computer is "best" best for programming (I'm 58 years old BTW).

I travel a lot and even in the "old day" I have always desired the lightest possible unit to take with me that would provide the greatest amount of testing and prototyping tools. As far as the screen "real-estate" goes for the actual coding the 11" air (I have owned and used both the Late 2010 and now the 2014 version) works as well as any desktop 23" screen computer around.

Coding is about the text and I even know coders who still use text coders and command line with their MACs over the XCode tool. (Personally I love the XCode tools over Microsoft's Studio.)

The only issue with the 11" is when you simulate the iOS product and use XCode's visual tools to build you interfaces and binding data to your product. It is easier to have a bigger screen, but if you are like me with a lot of traveling size does count.

Now for those who don't like the Objective C Codin, what I have found is they really just don't like the requirements of all the braces, the required declarations of variables and such. If that is the case Swift will be right up your alley. But, while the basics of programming language and logic aren't that tough to learn the API and library is. If you are new to Apple product programming most of your time will be spent learning this stuff and not how to do a for loop.

My best advice? Buy the computer you want, because if you don't you will never be happy.

----------

One more thought:

"In my opinion. -> and >><<, etc. seem unnecessary. "

They are in Objective C.

Objective C is cool in one aspect, it is downwardly compatible. I never use C++ coding with Objective C, but I often use C primitives such as arrays when the robustness of NSArrays aren't needed.

Good luck!

----------

Let me qualify myself first,

I've been programming in COBOL, Assembly, C, C++, Objective C and now did some intro work with Swift and I think you've missed a couple of points in trying to decide what computer is "best" best for programming (I'm 58 years old BTW).

I travel a lot and even in the "old day" I have always desired the lightest possible unit to take with me that would provide the greatest amount of testing and prototyping tools. As far as the screen "real-estate" goes for the actual coding the 11" air (I have owned and used both the Late 2010 and now the 2014 version) works as well as any desktop 23" screen computer around.

Coding is about the text and I even know coders who still use text coders and command line with their MACs over the XCode tool. (Personally I love the XCode tools over Microsoft's Studio.)

The only issue with the 11" is when you simulate the iOS product and use XCode's visual tools to build you interfaces and binding data to your product. It is easier to have a bigger screen, but if you are like me with a lot of traveling size does count.

Now for those who don't like the Objective C Codin, what I have found is they really just don't like the requirements of all the braces, the required declarations of variables and such. If that is the case Swift will be right up your alley. But, while the basics of programming language and logic aren't that tough to learn the API and library is. If you are new to Apple product programming most of your time will be spent learning this stuff and not how to do a for loop.

My best advice? Buy the computer you want, because if you don't you will never be happy.
 

joshlalonde

macrumors 6502
Jul 12, 2014
422
0
Canada
Looking at Objective-C's syntax makes me want to eat glass.
Hahaha!

----------

"In my opinion. -> and >><<, etc. seem unnecessary. "

They are in Objective C.
Ya, I know. And I hate Objective C too.
I don't recall seeing many of them in pure C. I didn't go that far with it, but anyways...

Looking at Objective-C class declarations and all that... you know, I think it's rather over-complicated. I'd rather learn something I can just pick up. I don't like too strongly typed a language I guess. Not to say I don't like strongly-typed languages. LUA and BASIC give me shivers.

And by the way, Assembly language is awesome! What instruction set did you spend most of your time on? I did some x86 ASM since that's the only stuff I can find documentation on these days (plus, I'm running an Intel processor). Also, do you prefer GAS or Intel syntax. I will never understand why people prefer GAS. The one reason I abandoned playing with the Linux kernel.
 

motrek

macrumors 68020
Sep 14, 2012
2,428
150
...
The only issue with the 11" is when you simulate the iOS product and use XCode's visual tools to build you interfaces and binding data to your product. It is easier to have a bigger screen, but if you are like me with a lot of traveling size does count.
...
Interesting point which hadn't occurred to me since I don't use Apple's interface-building tools... I just do it "by hand" with code, which has served me well.

I get a little indignant at the idea that one can't code on an 11" 1366x768 screen... Plenty of people used 13" MacBook Pros a few years ago to do development and those basically had the same resolution and nobody had a problem with it. (Of course, if your eyesight isn't that great, obviously that's a good reason to get a bigger display.)

But if I'm honest, if you're making apps, the 768 vertical resolution is not amazing for the iOS simulator. If you're simulating the iPhone 6+, you'll have to scroll, even if it's at the smallest window setting. But I blame Apple for that more than the screen size and hope they come out with a fix soon. Might file a bug on it.
 

bjet767

macrumors 6502a
Oct 2, 2010
967
313
"I'd rather learn something I can just pick up. I don't like too strongly typed a language I guess."

I not sure what you mean by "pick up?"

I found straight C (the K & R) stuff rather easy, but today I enjoy all the "object" oriented stuff which hides all the huge amount of user interface stuff behind a simple call or two. I also highly appreciate the strong type defining with the higher forms of C, like Objective and C++ because it reduces a whole lot of errors which may be missed until run time testing.

As far as Assembly goes I found the MASM complier worked great for 8086 programs. Before Windows the primary use of assembly was to speed up the hardware stuff like printing to the screen, IO and similar. Even in the early days of PCs purely programing in assembly was a pain and which is why low level languages like C were both fast and portable.

----------

"I just do it "by hand" with code, which has served me well"

I also like knowing how to take an array and making an NSTableView function, but I also love the simplicity of just "binding" the data via the a visual interface tool. Sure cuts down on time and code.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.