Help build a better PHP IDE!
Posted: - Reading time: 13 minutes
There's been a fair bit of talk about PHP IDE's of late. That's not surprising given how useful they can be. (Really, folks, vi can only take you so far.) Most of the attention has been focused on the big boys: Eclipse and its derivatives (both free and commercial), Komodo, and NetBeans. Eclipse and NetBeans are both Java based, and Komodo is based on Mozilla's XUL platform (which also runs Firefox and company). I've been bouncing between them for a while, and haven't really been satisfied with any of them. I usually refer to Eclipse as the one I hate least. :-)
There's a new contender to keep an eye on, though, that is worthy of notice: KDevelop.
Yes, KDevelop, the KDE IDE. Although it focuses mostly on C++/Qt development for developing KDE itself, it does have language bindings for a number of other languages. While PHP has generally not been one of them, one of the KDevelop developers (Milian Wolff) has been working on PHP support for the upcoming KDevelop 4. It's already looking pretty far along, too.
More to the point, Milian has graciously posted detailed instructions on how to download, compile, and use the bleeding edge code. There are some gotchas along the way, but even as a non-C++ developer who avoids compilers like the plague I was able to get the dev versions of KDevelop and the PHP plugin running without too much hassle. (Be sure to see the comments in that thread; they're very helpful.) So far I'm reasonably impressed. It's very clearly still development code and has a ways to go yet, but it's usable development code.
So where do you come in? What's the resource in the least supply on most open source projects? Testers! Even if you don't know C++ or Qt the project could use people trying out and testing the code. Find and report bugs, file feature suggestions, and even post patches if you're one of those strange people who is fluent in both PHP and Qt. (I know there's a few of you out there in Drupal land, and Milian is a Drupal user himself. Time for some inter-project cooperation!) All those things we are always begging users and testers to do on our projects, let's try and do (and do well) for this project.
Why is KDevelop PHP support so important, when we've already got so many PHP IDEs out there? Well for one, to be honest they all suck. Zend Studio 5.5 is the only PHP IDE I've used to date that I don't actively dislike for some reason, but it's effectively dead at this point. For another, KDevelop is written in C++/Qt and compiled to native code. OK, OK, I know the old "Java is slow!" arguments have been largely answered over the years, but let's be honest; Eclipse is still dog slow, and when last I used them Komodo and NetBeans were not much better. Whether due to the language or not, a faster IDE is always a good thing. For me in particular, I use KDE as my main desktop so having an IDE that uses all of the GUI tools that I already have loaded rather than loading up the entirety of SWT or XUL is good for performance as well, and gives a much nicer UI and integrated desktop experience.
And because open source survives by active support, and projects that support PHP should be actively supported. :-)
Let's see if we can help the KDE project help us.
Comments
So it looks like I'm gonna have to give KDevelop a try, and try to see if I can at least suggest the things that I liked about Zend 5.5 or see how well they work with the KDevelop platform.
To remaining in the available no cost solutions, Netbeans sucks indeed less than Eclipse, especially on remote-mounted SSH file systems. On Linux, though, the focus loss issues tend to drive me mad.
Oh, and you might want to at least take a look at "Delphi for PHP" and Codelobster, the IDE for Drupal.
So, in short, good idea! We need a couple of extra people on this thing, there's amazing things in the future for this stuff. Niko is currently working on the generic debugging framework for kdevelop, and of course he's using XDebug as one of the sample implementations ;)
</article>http://software.opensuse.org/search?p=1&baseproject=ALL&q=kdevelop
But I actually quite like Eclipse. Oky. It's a bit slow, and somehow the PTD is playing weird these days, but other than that?! ... Guess it's because I first started with Java.
Also, I really like the built-in SVN and CVS integration in Eclipse. I think kdevelop made you use an external program like ksvn. Any development on this front?
KDevelop has the option for integrated CVS and SVN. I don't know how it compares to Eclipse's yet, but then I was never entirely happy with Eclipse's, either.
So, my suggestion is to try not fully prepared IDE - like GVim+XDebug or Notepad++ and XDebug as alternative for $W.
Vim is still my favorite "IDE", and works with xdebug too.
Several years ago, I evaluate what was available. Eclipse was not there yet. Komodo was the most functional AND multi platform one.
PHPEd was the best, very polished, everything works, with debugging and all, but apart from having a relatively high price tag, it was Windows only.
Recently I tried PHP Eclipse, since installation was basically "copy to a directory and run a script". Slow to start and a memory hog. Promising though.
I also tried Quanta+ some time back, which works fine, until you use xdebug, and it will debug things fine, but crashes when it exists the scripts.
I used Kdevelop years ago for basic C development and liked it.
Although Larry's article is about KDE 4, I thought I would give the stable kdevelop from the 8.04 repos.
And lo and behold, it does have PHP support. Click on K -> Development -> Kdevelop -> IDE for scripting language.
Here is what I found from an hour of tinkering with it.
Hope it gets better soon ...
All the other contenders take note, syntax highlighting does not an IDE make.
On plain Ubuntu/Gnome I am using Konqueror in all its modes, Dolphin and KDevelop (albeit in stock form) and other K stuff just fine. Just be sure to install the kdebase-kio-plugins (core I/O slaves for KDE) to get that great multi-protocol connectivity.
You can install the packages from Synaptic, aptitude or apt-get, of course.
Victor Kane http://awebfactory.com.ar http://projectflowandtracker.com
Keep drinking the IDE kool-aid.
Vim:Other Editors::Motorcycle:Volvo
Seriously, when I'm not in Vim I feel like I have cement blocks on my fingers.