tags:

views:

1543

answers:

15

Does anybody out there develop on a MacBook? I'm trying to decide whether I should spend the extra money for the MacBook Pro and am torn. For everyday stuff like web surfing, watching vidcast and such I would prefer the MacBook.

+3  A: 

I write software on an old iBook, so I'm sure a Macbook would more than suffice.

mipadi
+1  A: 

You don't say what kind of software you're developing and in what environment. I have a macbook and I do some development on it just fine in C/C++, Python, Perl, that kind of stuff. I would recommend maxing out the RAM for a snappier performance especially if you're planning to develop in a heavier environment like Eclipse, or need to run a VM frequently.

By far the biggest performance increase I've seen on my first-gen macbook was replacing the hard drive (needed a bigger one anyway). I'd definitely recommend the solid state or a faster optical drive option also if you can spring for it.

Jay
+4  A: 

I use a MacBook Pro and a MacPro for all of my development in PHP/MySQL/HTML/CSS/etc. I do use Windows running Virtual Box as I haven't found and editor for PHP for OSX that has code completion and other normal editor functions (although Coda is a close canidate). Otherwise:

  • FTP: Transmit
  • Versioning: Versions
  • Editors for other code: Dreamweaver, BBEdit
  • SSH is built into OSX, which is nice, no extra programs to install
  • All the browsers, except Internet Explorer run on OSX and work pretty much the same
  • CS4 is virtually the same on OSX (other than short cuts)
  • Microsoft has released a free Remote Desktop Client for OSX

I really like using a mac otherwise and using it all the time just allows you to be faster when not coding/programming. It's also very nice that you can run OSX and other OSs at the same time, whereas any other computer, it takes a lot of work to get OSX to run, vm or otherwise.

From Jay's response I would agree that a larger screen is nice. The new 17" MacBook Pro has a very nice resolution of 1920 by 1200, but a second screen is still very useful when coding or designing.

Darryl Hein
Have you tried Netbeans for PHP? It should run a Mac since it's a JAva app.
idstam
+2  A: 

A Macbook will be fine for developing software. Of course, the usual caveats about processor performance and memory capacity apply, just like with any computer. The thing I would pay attention to when choosing between a Macbook and a Macbook Pro are the I/O ports.

Ask yourself: Does the computer you're thinking of buying have the number and type of USB or Firewire or other ports that you think you'll need, and does it have a DVD drive, and the kind of graphics support that you want. That's what I'd look at.

Craig S
For ports, it's easy to expand and firewire are all "daisy chainable".
Darryl Hein
Not all Macs even have firewire though, do they? I haven't looked in a while.
Craig S
@Craig S - Yes. If any Mac doesn't have a FireWire, it would be a MacBook Air. My MacBook Pro (not the newest, but new) has one, and I'm pretty sure the new MacBook (non-Pro) has one, but I never looked.
Chris Lutz
@Chris - The new aluminum MacBooks don't have FireWire, only the old plastic ones do. If you need FireWire, that's only available on the MacBook Pro.
Tom Lokhorst
+11  A: 

Screen size will probably be a bigger issue than performance since Macbooks have relatively small displays. Instead of shelling out for a Macbook Pro, consider buying an external display that you can plug in where you plan to do most of your work.

Jay Conrod
I agree -- I used to develop on a 13" MB then upgraded to a 15" MBP and a 20" Cinema Display. Speed is the same, but the larger screen is great.
Matt Rogish
Screen size + resolution. It seems as if Windows have higher resolution than Macbooks (I haven't checked the new Macbook and MBP's resolutions. By the way, I love working on MBP :)
bLee
Can't upvote this one enough. LCDs are cheap, and having another 20"-23" of screen real estate makes the difference between 13" and 15" negligible.
Luke Dennis
Yep, only thing I don't like about my MBP is that I can't plug in 2x20" without some fancy hardware.
Matthew Watson
Dude! The keyboard! A keyboard without delete key!
Mehrdad Afshari
@Mehrdad, Xcode and all other Cocoa-based applications support basic emacs key bindings, which I think is a major plus. You can use C-d instead of delete, C-v for page down, C-e for end, C-a for home, etc.
Jay Conrod
A: 

The MacBook's processor isn't much less powerful than the MacBook Pro's. The white MacBook has a 2.1 GHz Core 2 Duo, whereas the low-end MacBook Pro has a 2.4 GHz Core 2 Duo. The high-end MacBook actually has the same processor as the low-end MacBook Pro. The main differences are the screen and GPU. If you don't feel either of those are important to your programming tasks, I see no reason to get a MacBook Pro.

Chuck
A: 

Not sure if this is relevant to you, but I found out that OS X is a bit more picky about byte-alignment than other operating systems. I found this out the hard way doing an assembly language project.

Other than that, I have a macbook and I love developing on it. It's a Unix, so it's pretty easy to develop on.

Jason Baker
Oh it's more than relevent ;-)
Lucas McCoy
+2  A: 

My experience with Apple portables is that disk speed really matters. Get the fastest disk, not the biggest.

Norman Ramsey
Only if you don't have enough RAM.
Georg
My most recent experience was on a Macbook Pro with 2GB RAM. Is that not enough? (I didn't think OSX was an immense, bloated hog, but I could be wrong.)
Norman Ramsey
A: 

My biggest problem with developing on my Macbook is the keyboard. It lacks home, end, page up, and page down keys. You can probably get by if you're a vi guy, but I feel really hindered on this keyboard.

My older PowerBook has Fn-Up for Page Up, Fn-Down for Page Down, Fn-Left for Home, and Fn-right for End.
Matt Kane
Awesome! I had to change a preference in BBEdit, but the function+arrow keys work now. I'm fairly new to the Mac world, so thanks.
Even better if you're an emacs guy. The basic emacs keybindings work in most OS X apps.
Jason Baker
I figured out the Fn equivalents pretty quickly, but I'd still say the lack of real home, end, page up, and page down keys is probably my #1 complaint developing on my MacBook Pro.
Sol
+1  A: 

Check this thread: http://stackoverflow.com/questions/58203/macbook-vs-macbook-pro-for-net-development-and-other-stuff

I have developed all sorts of code (from .NET to Flash) on both Macbook and Macbook Pro ... in my opinion, the Pro is worth the money (and the new Pro looks pretty slick).

euge1979
A: 

I have an iMac at home that I use when I'm doing non-work projects, and a four-year-old iBook G4 as a laptop. If I've got a project which takes too long to build on the iBook (or I need some rapid compile/test/debug turnaround) then I can pull sources onto the Intel box and use xcodebuild, all from SSH.

So what I'm saying is, it depends on how you'll be using the laptop :-). If you'll be editing sources and doing small builds, or using a language without a huge build stage, then anything you can get your hands on is sufficient. If it's your main development box for compiled projects with more than a few files in, then buy whatever is the most CPU and RAM you can afford (but as Norman Ramsey said, the disk speed will be important on larger projects too).

Graham Lee
A: 

I use a MacBook for development. It's great, save for one thing: hard drive size. I was stupid enough to install OSX together with Vista, which means I have just 32Gb of local hard drive space for programs. Could use an external drive, of course, but wouldn't be able to take it with me.

MacBook is superfast. I upped the RAM to 4Gb (3 usable), so that I can run projects off RAM. My builds were very fast - up to the point when I started using PostSharp :)

Dmitri Nesteruk
Just to note: If you have one of the newer MacBooks, all 4 GB of RAM will be available to you.
Tom Lokhorst
A: 

Get the MacBook.

Put a bigger, but more importantly, faster HD in it (a 200 or 320MB 7200 RPM). Max out the RAM (cheap, so why not? And VM's are amazingly useful as a dev). Get a large external monitor for when you're working at home for longer periods.

Enjoy developing on a wonderful, fast, portable machine. :)

MattyT
A: 

You can definitely get by with even the lowest end MacBook you can find. Xcode will work great on it. The only things I can think of why you might need a MacBook Pro are:

  1. You need the express-card slot for some reason.
  2. You need the extra performance of the GPU
  3. You are a vampire that can only work in the dark and really need the backlit keyboard (*)

Both seem rather unlikely, but impossible to be sure without knowing what you will be developing.

Xcode performance between my MacBook Pro (1st gen) differs little with my iMac 24" (latest) and I doubt you will be able to tell the difference between current MacBooks and MacBook Pro's compile speed wise.

The normal MacBook has plenty of screen real-estate for light to normal Xcode use. But you will love yourself for getting a large external display for when you're working on your desk.

(*) you can actually get backlit keyboards on the high end new MacBooks

Kris
+1  A: 

Both the MacBook and the MacBook Pro are very nice for most programming tasks. I use a MacBook Pro (older model). At home I use a 30 inch Cinema display and external keyboard/mouse. I have external firewire disks for archives and backups. There are also some speakers attached for listening to music while writing/programming. For travel I mostly just use the MacBook Pro, the power adapter, screen adapters and an UMTS modem. For the use when travelling there are two different goals: maximum portability (light weight, size, long battery life) and having a larger screen for some more demanding work. I decided for the latter. This means that my MacBook Pro is not that useful in an airplane (unless you fly business class, which I usually don't). Even in a train it might be a bit huge - it works okay most of the times, though. But I like taking the laptop to some place and having it display enough text is an advantage. Sometimes, when I take it to some office, I get there an external screen and keyboard/mouse. Then the internal display is not so important anymore.

I've used a white Macbook, but I would not recommend that for coding. I found the edges too sharp for longer typing use. The newer metal case MacBooks should be better.

You may also want to check the screen opening angle of the Macbook vs. the MacBook Pro. I read (haven't verified it) that the screen of the new MacBook Pro is very heavy (due too lots of glass) and may not stay in a position other than fully opened (for example when one would use it in a train with the vibrations).

One thing that is useful: lots of RAM. I find Mac OS X applications to be memory hungry and Mac OS X seems to have problems with disk thrashing (which might be less a problem with a fast SSD disk).

Let's look at the new Macbook:

Positive

  • processor and graphics are fast enough
  • can now also drive an external 30 inch screen
  • design, case
  • nicely portable
  • should be relatively silent

Negative

  • might need a fast(er) disk
  • small screen size
  • I'm not a fan of the black color of the keyboard
  • the glossy display might not be useful in some lighting conditions, the screen is more optimized for video and photos, not so much for coding
  • lacks FireWire, not enough USB ports, ports too near to each other
  • you need special adapters to connect to most monitors and to beamers

The MacBook Pro gives you

Positive

  • larger screen
  • the option of a non-glossy screen for the 17" screen
  • FireWire 800 very useful for external disks
  • weight and size is quite good for this class of notebooks

Negative

  • pixel density could be too high -> displayed contents might be too small to read
  • glossy screen not that useful for programmer who write/read a lot
  • much of the multimedia capabilities is overkill for a notebook for coding
  • still a bit too large and heavy for travel (especially the 17" version)
  • again, black keys are less ergonomic if you are used to a white screen background
Rainer Joswig
All good and valid points, I use an older (2.5 years) Black macbook (2GHz/2GB/250GB), hooked up to a 24" display. It's great apart from the odd graphics slow down. But the new ones shouldn't have that problem. I like the fact that its so small, while having a usable keyboard. Would highly recommend
Jonathan