views:

149

answers:

5

Hi,

I'm about to buy a new laptop (Asus G62) to replace my old ubuntu desktop. I will use it mostly for django development (and some legacy win32 stuff in a virtualbox).

However, since I will need to do some iPhone development in the near future, I'm starting to think that it might be a wiser to buy a MacBook Pro, instead of the Asus and later a cheap (so to speak...) MacBook.

How well suited is a MacBook Pro for Django development? I currently use WingIDE on Linux and love it, how does the Mac version compare to the linux one?

Is the Ubuntu -> Mac OS transition complicated? Will I be able to leverage my Linux knowledge? OTOH, I'm your average nerd, so I'm not sure if I'm cool enough for a Mac. Besides, having a double chin, a black turtle neck is completely out of question.

Thanks in advance!

+5  A: 

OS X is a 'nix, so you'll probably fit right in. I have no problems with Python (specifically Django) dev on my MacBook (home) or MacBook Pro (work).

I use MacPorts (including installing Python via port) to create a very Linux-ish command line environment, although lots of Python devs seem to prefer Homebrew.

As for WingIDE, I don't personally use it, so I don't know how different the Linux and Mac versions may or may not be. My text editor of choice is usually TextMate, although I often use vim as well. NOTE: If you would prefer something like gvim for OS X, I recommend MacVim.

For Python work specifically, including Django work, JetBrains has an interesting new IDE called PyCharm that is quite interesting. I've been using the free EAP releases, and it seems to be progressing nicely.

Hank Gay
Django developer here, too. I use a similar setup: MacBook Pro, MacPorts' Python and Django, and TextMate, with no problems.
mipadi
Python Dev here, MacBook Pro + Homebrew's Python 2.7 + TextMate/PyCharm. :)
Kenneth Reitz
+1  A: 

Well it will not be the big difference switching to Mac OS, Windows eg. would be more trouble! If you are used to the Linux shell you'll also be happy on the Mac i suppose. There are a few good python ides out that support multiple OSs: Eclipse with Pydev, Pycharm and Eric. If you're more looking for an editor, go for TextMate! I guess you will not have to think much about the transition, except you don't have your synaptic package manager on mac. Coming to version control, you will also find all necessary tools from git, svn to mercurial!
I'm working with both (Ubuntu & Mac) but I like staying with the linux system, feels faster and more stable for me!

lazerscience
+4  A: 

In the last two places I've worked - both Django shops - we have done all our development on Macs. And we're as nerdy as they come.

Macs are based on a flavour of Unix, so most of your Linux knowledge is transferable. The main thing you'll miss is a built-in package manager: there are projects around that try to replicate that functionality, but I've always found them problematic. Homebrew is probably the best of the bunch, being extremely lightweight. Still you're likely to spend a bit more time compiling from source than you might be used to.

The other alternative is to set up a Linux virtual machine using eg VMWare Fusion - you can connect to it via an internal network interface, so you do your coding in the Mac environment in TextMate or whatever you prefer, but Django/MySQL/Apache etc run as you're used to in a headless Linux environment, which you can SSH into when you need to. Works quite well.

Daniel Roseman
+1  A: 

I had the same doubt, and eventually I bought a "cheap" MacBook just for iOS development. That has been a wise choice: the longer I use it, the more I hate it.

You have to consider that, if you are not accustomed to Mac OS GUI it could be painful. It is always a pain for me to use a Mac, both for the GUI and for the keyboard...

(My background: everyday work is done on Windows and at home I often enjoy Ubuntu, I love both).

Lorenzo
PS: sorry Mac fanboys, I just don't like it and even using it for a while has not alleviated the pain... This is not a technical argument, but just an advice: I'm happy to have the MacBook dedicated to the single task of iOS development, because it would be too painful and unproductive TO ME to use it for any other task (even with bootcamp or VMWare).
Lorenzo
+1  A: 

I use Mac and as stated above, the biggest problem is a package manager. Here are your choices for Django development:

  • Mac
  • Ubuntu
  • Ubuntu on Windows VM

If you're using Mac, DO NOT USE A PACKAGE MANAGER!!! I'm the biggest fan of package managers, when they work, but none of the Mac ones are solid like Ubuntu. Use KyngChaos binaries for PostgreSQL and GeoDjango backends, but otherwise, just use vendor binaries.

Most Django developers I know use TextMate, but that's not an IDE.

Adam Nelson