MacBook Pro the ultimate developer machine?

I’ve been using my MacBook Pro now for about a month and think it’s the ultimate developer machine. You really are spoiled for choice and everything you might want is at your fingertips.

Mac OS X + Cocoa

Every Mac ships with the Xcode developer tool set. This gives you the native preferred Mac development platform called Cocoa which uses Objective-C at it’s core. The actual tools are based around the GCC 4 compiler and GDB debugger with a rather nice Xcode IDE and Interface Builder GUI designer from it’s NextStep origins.

Out of the box these developer tools include compiling for both Intel and cross-compiling for PowerPC and support C, C++, Objective-C and Java.

Windows + Visual Studio / .NET

Windows is at your fingertips either via Apple’s Boot Camp dual-boot solution or the virtualization through Parallels Workstation 2.1 for OS X or VMware’s forthcoming MacIntel solution. Both virtualization products are helped by Intel’s Core chips having hardware virtualization features.

This gives you the ability to install whatever Windows developer tools you want such as the heavyweight Visual Studio 2005 or freebie Visual Studio 2005 Express C# Edition.

Linux + GCC

While I’m not a fan of Linux these individuals have a live boot Linux CD for the MacBook or you can run Linux under Windows or OS X using your favorite virtual machine.

Mono’s .NET

The Mono project support many platforms but their recommended IDE, MonoDevelop, is still quite far off being able to run on Windows. Either way you can test your app on Windows, Mac OS X or Linux.

Mac OS X + *nix command-line

It’s no secret that OS X is built on various BSD technologies and Apple include a bunch of the developer tools. For those tools that are missing grab Fink which will let you add everything important that’s missing as well as providing newer updated versions of the tools Apple include.

If what you’re looking for isn’t covered by Fink as default, try switching to the unstable packages. If that fails then try downloading the tarball then ./configure and make.

Mac OS X + X11

Apple provide an X11 implementation as an optional installation with appropriate library headers. Another base covered.

Web development with *AMP

OS X ships with Apache installed as default and you can add the MySQL and PHP elements if you so desire. Then you can choose between LAMP or MacAMP ;-)

Web testing

For testing web applications the Mac has you spoiled for choice.

On OS X you can test in Safari to exert your app against the KHTML+WebKit engine, Firefox or Camino to test compatibility with the Gecko engine, IE for Mac or Opera’s Macintosh offering to name but a few.

Switch to Windows and you’ll have your IE6/IE7 engines at your fingertips as well as checking with the Windows versions of Opera and Firefox.

For running stress or penetration testing Mac OS X means you can get your hands on Nessus, NMap, Snort, Hydra and other Linux based tools.

[)amien

4 responses to MacBook Pro the ultimate developer machine?

  1. Avatar for

    Information is only used to show your comment. See my Privacy Policy.

  2. Avatar for Damien Guard

    If you compare the MacBook with a similar spec Dell (Intel Core Duo) then the MacBook beats it on price.

    If you compare the MacBook Pro with similar specs, i.e. machines with dedicated graphics chips + DDR3 memory, again, the machine is on-price.

    Obviously what you shouldn’t do is compare the price of a MacBook Pro against some bargain-basement no-name laptop running Pentium M or Celeron chips.

  3. Avatar for Steve

    Oh, and does the fan ever go off on the new MacBook? On the PB G4 it comes on as soon as I start building, and never, ever goes off afterwards, even when I’m not doing anything major.

  4. Avatar for Steve

    I’m still not sold on XCode, spent some time with it tonight and it still frustrates me. Some of it is unfamiliarity for sure, but plenty of things annoy the hell out of me, like all those separate windows opening all the time (is there any way to dock the build window?), and the fact that some of the project setup is drag & drop, whilst some is more traditional property dialog configuration, meaning when you’re new you don’t know which one you should be using for a given configuration task.

    I’m getting there, but it’s often slow and painful going. It just crashed on me too :?

    Little things bug me on OSX too. Like not being able to configure the IMAP ‘Sent’ folder in Mail so mail I send while on this machine doesn’t go into my mail servers sent folder properly. OSX also doesn’t like talking to the version of Samba that Debian Sarge ships with so accessing my server files is a PITA. And, there’s no decent CVS GUI like Tortoise and XCode’s SCC plugin doesn’t seem to work very well.

    I’m trying to like it, I really am ;) And generally I do, there’s just a lot of irritating little things which I don’t really have time to fart about with....