Any technology which is distinguishable from magic is insufficiently advanced.

Setting Up Your Macbook Pro For Development

Posted: September 25th, 2010 | Author: | Filed under: Tutorials | 1 Comment »
My new Macbook Pro!

My new Macbook Pro!

Recently (last night in fact), I had my new Macbook Pro delivered. This 15″ beauty was augmented with a matte anti-glare screen and a 7200rp 500GB drive. Boasting a 2.53GHz i5 processor and 4GB worth of RAM, it is truly a worthy development platform. However in order to convert it to that, a fair amount of preparation must be done. Sure, you could just install XCode and say you are good to go, but you can’t really say you are working at maximum productivity, can you?

This first thing I install, as with all Mac machines, is Quicksilver by Blacktree. This allows you to bind a hotkey that calls up quicksilver. Once done, you just type in the first few letters of the application, music, url, xcode project, etc. that you want to open. Autocomplete will find it for you, then you just press enter to launch it straight away. Not only is it tremendously useful, it is also extremely stylish with its bezel interface and all.

The next thing to go in is Visor, also by Blacktree. This provides me with a full-screen Terminal which I can toggle at the touch of a button. I bind this to my F12 key. Since it messes with OSX internals, it needs a bit of setup. You have to install SIMBL, and then copy the Visor Bundle in to a specified location. Once that is done, run Terminal and set up the preferences to whatever you like. At this point, I would create my .bash_profile and .vimrc files. The .bash_profile is mainly to customize my prompt. The .vimrc file of course, is for Vim, my text editor of choice.

Once the basics are in, everything else follows. I grab the latest version of Xcode from Apple’s Developer Site. In my case, I grab the one with the iPhone SDK. For source control, I install Mercurial. Subversion and CVS already come bundled with OSX. I prefer Mercurial as my primary source control for a few reasons. Firstly, it’s dead easy to set up. No weird config files or hooking up through Apache. Merging is also much better supported. Second, I can sync via SSH. Quite a few times, I failed to sync with SVN over http because of messed up proxy-servers on whatever ISP I’m connected to. Lastly and most importantly, I can sync to multiple locations. So I can have master copies on my server, as well as on my portable hard drive, and sync with either one of them. Of course, being a freelancer, you work with whatever your client uses. So having all three is good.

For my productivity suite (I wonder why they call it that), I use iWork. It’s cheap, compared to Microsoft Office. It is also simpler and easier to use, and more impressive to look at. There’s really no reason why I would want to use the travesty called MS Office because simple developers like myself have no need for mail merge or the other 1001 esoteric features that nobody uses anyway. Also, it means that for presentations, I get to use my cool apple remote (that came with my previous Macbook but is not included with this one).

Communications. For mail, I install Postbox Express. It is hands-down, the best free IMAP mail program out there. There’s both Windows and Mac versions, so I have it installed on my desktop as well as my Macbook. If you’re stuck with POP, default Apple mail works. For messaging, I use Adium. Why Adium and not the tonne of other messaging clients out there? Because it looks cooler. It’s not good enough to be awesome. You’ve got to be awesome with style!

The only thing left is a decent image editing program. The best, of course, would be Photoshop. However, given that I have the artistic talent of a gerbil, I can’t really justify the price. A free alternative is the Gimp. It looks as ugly as sin, but it gets the job done. My preferred choice would be Pixelmator. It’s just barely affordable, looks great, and has everything you need for programmer art and more. Alternatively, if you are expecting to get a Wacom for any reason anytime soon, Photoshop Elements and Corel Painter Sketchpad would probably fill whatever gaps you have.

System tweaks. Dump all your music into iTunes. Can’t code without good music, can you? Surf DeviantArt to look for nice-looking wallpaper. Open up your system preferences. Under Account settings, go to startup items and remove iTunes Helper. This prevents iTunes from annoyingly popping up everytime you hook up an iPod/iPhone/iPad. Disable Time Machine. Set up Expose and Spaces to work the way you want it to. Modify power settings to be less annoying. Require a password on login and when you exit a screensaver. Got to do your dues for those NDAs!

Now that you’re done with OSX, it’s time to look at Windows. You didn’t really think you could get away from that, did you? I bought VMWare Fusion for $10 (an upgrade since I seem to have been suckered into buying an early version long time ago). Set up a virtual machine with 100GB disk space 1GB RAM and 1 core, and installed an old copy of XP on it. Why XP? Fusion doesn’t support anything above DirectX 9 anyway, so why spend money on another Windows 7 license when XP will do fine? If you are into hardcore Windows development, a better approach would be to set up a BootCamp partition and install Windows 7. It means you have to reboot to get into windows, but the performance is better. Either way, after windows is installed, I install Microsoft Visual C++ 2010 Express. That’s probably the only reason why I need Windows, so I leave it at that.

And with that done, you are all set to dive into the code and do a few laps. If you get bored while waiting for things to install, why not blog about it? I did.


One Comment on “Setting Up Your Macbook Pro For Development”

  1. 1 Berry Terrian said at 12:18 pm on February 6th, 2011:

    Very nice post. I just stumbled upon your blog and wanted to say that I have truly enjoyed surfing around your blog posts. After all I will be subscribing to your rss feed and I’m hoping you write again very soon!


Leave a Reply