On the ZF-general mailing list there was a discussion that was occuring about the cost of Zend Studio. I started writing a response but saw that it was getting kind of long so I decided to turn it into a blog posting.
The first question I'll address is that of cost. When you look at what other similarly-featured IDE's cost, we're actually pretty good. Flash Builder 4 is $250 for the standard, $800 for the premium version. Visual Studio is $300. IntelliJ is $599. So, from an Apples-Oranges, throw everyone in the same bucket, IDE comparison, Studio is about where everyone else is, or better, from a pricing perspective.
Concerning the IDE's out there that are in the $100 range. If all you're looking for are things like code completion and debugging, save yer hundred bucks and get PDT, which we provide for free. It will provide most, if not all, of the same functionality in the $100 IDE. You can download that free IDE (PDT) from eclipse.org, which is, if I didn't say it already, is free.
But now let's talk a little bit about what you get in Zend Studio, which is not free.
- Solid refactoring. I had one guy tell me this was the only justification he needed for the cost
- Integrated support for Dojo, JQuery, Prototype and ExtJS.
- Integrated, in-the-IDE, unit testing. In other words, re-run your test by hitting F11
- VMware workstation integration
- Zend Server integration. You NEED to look at Code Tracing.
- Enhanced remote system support. Some of this is there, but there are some cool new features coming
- The best Zend Framework integration/introspection you can get.
- Mylyn support. This is KILLER if you have any level of task/project management, which you should be using.
Then, what I think is the killer; the Eclipse Community. IF there is an IDE tool available it WILL be available for Zend Studio because if an IDE tool is available it WILL be available for Eclipse. Almost no other IDE platform can say that. The Eclipse ecosystem is unparallelled among IDEs. For example, I manage all of my development EC2 instances right from inside Zend Studio because Amazon wrote a plugin for managing EC2 via an IDE. Due to our relationship with Adobe I also use Flash Builder. Flash Builder is built on top of Eclipse. Therefore, my Zend Studio is also Zend Studio/Flash Builder. I hit CTRL-F8 and I'm writing ActionScript. Hit it again and I'm writing PHP. I also have the Android SDK installed so I can run an Android emulator and connect it in with my PHP-based web site for mobile development. Anything that is available as an Eclipse plugin is available for PDT/Zend Studio.
In terms of performance, there were performance problems in 6. 7 was better. 8 (current) actually has pretty decent performance.
Here's the way I think of it. You spend your life in front of an IDE. If there is ANY piece of software where a "commercial version" should be concidered it is your IDE. Zend Studio costs $300. There are 50 working weeks in the year. That comes out to $6 a week. Given an hourly rate of $50 an hour and a 40 hour work week. If Zend Studio saves you 10 minutes of work per week it has paid for itself.
Now what you could do is find all the tools that do what you need them to do and use them. But that means that you need to manage them. When a new version comes out you need to test it against your existing tooling. There might be a problem. In fact, I think the whole discussion occurred because of an incompatibility between Zend Framework and the version of PHPUnit that was being used. That's a great example.