Why to use Xcode

Everything has its place, I think.
If I'm just playing around or testing a new shield or library or something else small the Arduino IDE is the thing I use.

If I'm working on a serious or large project -- the current design I'm working on for an Ethernet capable commercial alarm panel for fence systems has over 40 source & include files -- then its just too big for comfortably working in the Arduino IDE and I use UltraEdit Studio - by far the best programmer's editor and project manager I've ever used (and I've used a lot of them).

I work with two monitors so I have UE Studio open on one and the Arduino IDE configured to use an external editor on the second. I make changes to the source, save, and go over to the Arduino IDE to compile and upload.

Mostly I use the Arduino Mega for my projects and since it has multiple serial ports I always dedicate one of them (other than Serial) for debug IO. I simply stick a 6 pin header on the breadboard and use a FTDI USB cable. I use a separate terminal program to receive the debug output. I tie the VCC pin on the header to an input pin with a pull-down resistor to detect whether the cable is plugged in and debug messages should be output.

Which reminds me of a feature I'd like to see in the IDE -- some way to separately configure the port for the terminal and for AVRdude if a board with multiple serial ports is being used.