Zend yesterday released a beta of it’s release candidate for both Zend Server and Zend Server CE (Community Edition). Zend Server is not available for the Mac, but Zend Server CE is, so I decided to give it a try.
There are many good things in this product. Among them, is the ability to easily activate and deactivate most of the plugins and extensions that come bundled with PHP by default. I was able to turn imagick on with no trouble – something I’d been unable to previously compile on the Mac myself (problems with libraries and a lack of time). Most of the extensions are included by default, and it’s easy to configure the directives that PHP has for extensions and core alike. Plus, restarting PHP is as easy as a click of a button.
Unfortunately, the problem also contains many what I would call “bugs” or usability enhancements that are simply not there. For example, upon installing the software, I had to open a folder in my Applications directory – very un-Mac-like. This is of course no different from MAMP or XAMPP, but still, very un-Mac-like.
In order to start the server, I double-clicked on an admin app that then opened the admin screens in my browser. I was able to connect then with a connection tool provided by Zend, but this process took almost a half-hour, far longer than it should have. The tool has no logging that I could find, and seemed to have trouble making connections to localhost or telling me why it was unable to do so. It’s certainly not intuitive. While Zend provides instructions for starting the Zend application on startup, this would inevitably open a browser window, making the footprint fairly high as well (unlike MAMP or XAMPP, which can be hidden from displaying anything).
One benefit is that when setting directives it does check for valid values; however, from a usability perspective on failure rather than directing you what the values should be, it displays the regular expression it’s checking against. While I imagine that developers will use this tool, making the regular expression readable, I shouldn’t have to interpret the regex in order to understand the values required. This should be easier. The rest of the error messages are similarly unintuitive, and this is a big concern.
Finally, it does not include a copy of MySQL. As an “integrated solution” this leaves a big hole in my XA_P stack. The server has support for all manner of database applications, and perhaps the developers believed that letting the user provide their own database connection was best, but to me, this is a major missing component.
In all, I won’t be abandoning macports or a good install of MAMP/XAMPP for this product any time soon. As a first version, it’s certainly got some promise, but as a finished product I would not use this version. Three or four versions from now I think that this product will have merit, but only if Zend puts some more effort into refining the user experience and remembering that simply because the end user is intelligent does not mean the end user has the desire or time to investigate the quirks.
This is for Zend Server CE on the Mac only; Your Mileage May Vary.
Be the first to get Modern Object-Oriented PHP!
Long to learn how you can develop modern applications using object-oriented PHP? Curious about how to apply all these best practices to your code?
Modern Object-Oriented PHP is a brand-new book focused on teaching you the techniques you need for writing modern, well-designed object-oriented applications!
The book lands in April. Sign up today for a sample chapter plus special launch day discounts!