I used to be a text editor PHP/HTML/CSS developer. By text editor, I mean I only ever used a basic editor like Vi/Vim (via ssh), jEdit (at work) and TextMate (at home) for all my development. I've tried several PHP specific IDEs, but could never find one that I felt comfortable with, and that would work with a certain degree of consistency across platforms. However, that's now changed thanks to NetBeans.

As part of my own development plans, I've been slowly teaching myself Java using the various web based training courses made available to me via work. As these are Sun provided courses, there is a fair amount of reliance on NetBeans. Rather than fight this reliance, I embraced it and soon started to like the NetBeans IDE. I was able to use it in exactly the same way on my OpenSolaris host at work and my Mac at home, with the only difference being the looks - it's a bit ugly on a Mac, but perfectly usable and highly functional.

A recent update to NetBeans (I can't remember which) introduced PHP support, so I thought I'd give it a go. I loaded the entire Habari source tree into NetBeans and started working on my first Habari plugin (HB-Cumulus). In no time at all I was whizzing along thanks to some pretty awesome functionality including:

  • auto-completion of not only built-in functions, but also those I'd defined or those found in the rest of the Habari source tree I'd just loaded. This applied to PHP, CSS and Javascript.
  • phpDoc integration so I could check up on a built-in function as I typed in the function name
  • code shortcuts
  • syntax highlighting, including things like highlighting all other instances of the keyword currently highlighted
  • Mercurial and SVN support (Habari uses SVN, I use Mercurial)

... and probably the most useful thing to me whilst I was coding: quick error detection and coding recommendations and suggestions. I could correct myself as I typed, and without having to save the file first or wait for it to catch up with me.

My only niggle at the moment is the interface on the Mac is not the most attractive thing to look at. It's not consistent with the rest of the Mac env, nor NetBeans on any other platform. That said, I think I'll be sticking to NetBeans for my coding needs for the moment. I've grown to quite like it and haven't hit any major hurdles that would stop me from using it.