Where Are The Good Development Tools For PHP?

"After PHP 6, I think that's it for PHP." Those words were spoken to me by my boss while we were having lunch at the crazy-busy sushi buffet restaurant near the office. I choked a bit on my food. After all, my boss is a former Zend employee and utterly competent PHP programmer. "There's no innovation going on in the language."

"Well, what sort of innovation do you think Rasmus and the boys should be doing?" I asked him.

"It's not about the language, because there is lots to like. It's the tools. Ever watch a .Net programmer build something? Visual Studio is the best tool around for building applications. Things like Zend Studio and Komodo are 10 years behind. You're struggling with the interface for that playlist editor, right? There should be drag-and-drop interface tools that integrate with your PHP code. Your friends from ActiveState should be trying to one-up Visual Studio, not building tools for script kiddies."

Having never seen a .Net programmer at work, I'll have to take Daniel's word for it. But he does have a point. It's clear to me that Adobe and Microsoft have decided the best way to dominate the internet is to ignore those pesky developers and instead try to turn designers, who know how to build decent interfaces, into developers as well. Adobe Flex and the new Microsoft Silverlight are perfect examples of this, and are even stealing ideas from the while Getting Real crowd: build the interface first, then plug in the code behind it.

So I ask you, where are the tools to turn guys like me into passable interface designers? Why do I have to code Ajax interfaces in PHP by hand? How much time am I going to have to waste trying to code Javascript and integrate things like TinyMCE into my applications. Where is Visual Studio for PHP? Or, more importantly, does Visual Studio let you do drag-and-drop interface design with PHP?

Of course, now I wonder if Daniel is right. Should I be learning other tools? The answer is, of course, yes. I'm already doing that by my commitment to learning Javascript to make all this Ajax stuff work properly. But what about PHP? Did PHP make a mistake by making such a bold leap from PHP 4 to PHP 5? Possibly. Converting an app from PHP 4 to PHP 5 is usually simply not doable, because if you are really going to take advantage of the new features of PHP you have rewrite your app. Having worked with PHP 5 for a while now, I have to agree. Yes, your PHP 4 app can run on PHP 5 but what do you gain? Not much.

So what should I do know. Ruby on Rails? For all the neat stuff going on, it's still such a very small part of the web development world, and I still have my doubts about how you scale out a Ruby on Rails app. Yes, I know, build it first and worry about it later, but I think it's still a valid question. Is it time to learn how to use Flex? Is it time to leave the cozy confines of OS-X and go over to the Microsoft world? What is out there? When I'm at php|tek next week I'll start asking some questions of developers there to see what they think.