Programming on a MacBook Air

I program. I plan systems. I build them. I design them. So why aren't I using a MacBook Pro?

The main reason for this is that I'm frugal and that I'm a coffee house junky. When I noticed that MacBook Airs were finally on the refurb list at the Apple Store, I had to jump on one. For $1299, I purchased an Air with 1.8Ghz and a 64gb SSD Hard-drive. If I bought this last year, it would have easily ran me over $3,000.

My biggest concern with this purchase is how it would hold up. Could I bare the 13 inch screen? Can I transition from a powerful and clunky Thinkpad to a stick thin sheet of aluminum?

I scoured the web for answers. I wanted to know whether or not someone is actually using the Air as a rig for programming. If you tried performing this query, you may find this thread from google:

Unfortunately, no one really provides any answers in it. I would have to find the answer out for myself.

Before we look at the Air, let me first tell you about my previous rigs.
- MacPro Desktop w/ 23" Cinema Display @ 1920 by 1200
- 15.4" Lenovo Thinkpad T61p @ 1440 by 900
- 17" Dell XPS fully upgraded @ 1920 by 1200

Those are all pretty powerful machines. Probably in most cases, more powerful than I need. What strikes me the most are the resolutions. I'll be losing from 400-200 pixels on the laptops. However, the T61p and XPS are Windows XP boxes and this operation system has been a thorn in my side lately.

With my Air, I'm running a resolution of 1280 by 800. Due to it's size (13"), it probably wouldn't make any sense to run it at a higher resolution. After playing around with the system for a bit, it's noticeably not as smooth as the MacPro -- obviously. Setting up my environment was a breeze though, compared to getting the same thing running on a Windows box.

I'm currently working on an Python gig where I'm using Django, the Google App-Engine, and TextMate as my IDE. I prefer TextMate over PyDev on Eclipse because it's light weight, elegant, and I don't need to worry about project files.

Running the project, you'll need several windows open. A terminal window (for debugging and various shell tasks), a browser (to test the interface), and one for your IDE or TextMate. I've attached a few screen shots of my development environment for those who need to see what it may look like.

With "Spaces" from OSX 10.5 or Leopard, keeping all windows open is very pleasant. Switching between windows can be performed easily using the control button plus an arrow key. It's much easier than switching between windows using the alt-tab method. This is very close the programming experience you'll get with using two monitors. I'm SOOO glad I have it on the MacBook Air. Without Spaces, I'm not sure if I would find my self gushing over this laptop.

So yes, I am gushing. I love the experience so far. Spaces, TextMate, Terminal is everything that I could ask for in a programming rig. Although I guess I could just boot into Ubuntu on my Thinkpad and get a similar experience. However, I do fairly often boot into Windows for Word and PhotoShop... Sorry Open-Office and Gimp, it didn't always work out between us.

But this little Air should be able to handle Office and Photoshop. I haven't tested it out yet but I'll post my thoughts when I do. Bottom line, I wanted a Mac and I think I purchased the best one I could under $1500 dollars. Would I pay $2500 for an Air? Probably not, I think I would get a Pro if I had the extra money. Do I regret not shelling out an extra grand for the Pro? Heck no. The Air does everything that I need.