NOTE: I am just giving my opinion (biased of course) and hopefully some constructive criticism. This is because I believe that a project should have those who criticize it rather than a complete loyal fan base because criticism does bring about improvement does it not? First of all, ZF has made a lot of progress since last year and I am very happy about the way it turned out. It does seem like there was a real rush to push 1.0 out the door considering RC2, RC3 and 1.0 were all released in a one month period (RC3 to 1.0 was a little over a week if I remember). While I do realize that fact that this is a project geared towards enterprise customers as they do pay the bills <http://www.nabble.com/images/smiley/smiley_thinking.gif> , I do hope that the target now is to fix up some nasty areas and concentrate a little bit more on developer friendliness. Of course, there should still be a balance between what you call "rapid development features" vs "code design". While I am very pro "code design" rather than using "rapid development tactics" such as placing a commonly functions everywhere, I do think that a many people were hoping for a rails-type feel and a little bit doesn't hurt.
I wouldn't say the project is 'geared towards enterprise customers' to the extent that other use cases are somehow neglected. But, yes, Zend is a for-profit corporation and we use framework to solve a lot of our customer's problems 'in the enterprise'. There are many other companies using framework to do the same, and I think this is one area where ZF really stands out. In any case, we're certainly not trying to fill the same niche as RoR in the PHP world- although I have learned a lot from that project as have many of our other contributors, judging by the references on our proposals. I hope you can see some of this influence in parts of framework along with many other influences, but if you're looking for something more like RoR you might want to look more closely at Cake. They have been very open about the inspiration they got from RoR (http://manual.cakephp.org/chapter/intro) , and- from what I understand- they are much more similar in feature-set and philosophy to RoR than we are. We're simply trying to do something a little different with ZF. J Now that I got that out of the way. There are some things that I feel that ZF is lacking, hopefully everyone realizes it already. Zend_Cache at the moment doesn't feel very "up to par" as I saw a few areas that could be improved such as the removal of the constructor array params checking which is inconsistent with other designs such as in Zend_Db. Another wierd thing question I've got to ask is "Why are the backends and frontends hardcoded?". On top of that, being able to provide default configuration for backends/frontends would be nice. Well that is one component, other components I feel that were lacking love in were Zend_Translate, Zend_Date and Zend_Mail could use a getDefaultTransport function to be able to use the default transport when sending multiple mails, but that could be debatable. One thing that I thought was wierd was this http://framework.zend.com/issues/browse/ZF-2314 (Thought I'd throw this in hoping Matthew would explain ;) ). Obviously I have too much to rant about, so I'll end it about here and keep you guys from getting bored of reading. Wishlist: Abstraction of the Bootstrap process I do have an attempt at this, although it sounds like you are heading towards code generation... (http://www.assembla.com/wiki/show/zftalk/SpotSec_Application) Zend_Log_Writer_Syslog Fix up Zend_Cache quality Fix wierdness in a few areas of Zend_Db Ralph, Fix the Zend_Auth_Adapter_DbTable and the object FETCH_MODE bug Don't make me nag you on #zftalk ;) Model Loading? Zend_Acl and Zend_Auth pattern This seems to be confusing as to a "good" design for many people Zend_View_Helper_BaseUrl (returns baseurl) Ok this is kinda on the lazy side, but it does reduce a lot of typing ;) That being said, I am looking forward to the future and have followed the progress of Zend_Layout and Zend_Form since the beginning; however, I do hope that some of your attention is diverted to the cracks in ZF before your next release. End of ridiculous rant, SpotSec Re: our attention- I hope it is, too, and you don't have to wait for the release to find out. Take a look in the issue tracker under 'next minor release' to see what we're working on. Lots of stuff there is still unassigned. *wink* Have you already created issues or voted on the issues you've mentioned above in the issue tracker? BTW, I'm not sure your proposal for abstraction of the bootstrap process is incompatible with what I'm doing in CLI. In particular, your SpotSec_Application_Resource_* looks like it might be similar to my Zend_Build_Resource package/interface. I'd greatly appreciate it if you took a look at my proposal, and possibly consider reviving the Zend_Application proposal or creating your own. While I can't guarantee that we'll accept your proposal in core, I've found it to be very useful in capturing my own ideas, and there is no reason that you can't develop it as a separately distributed component. Alternatively, we could consider putting it in incubator, which is also distributed on the framework site. As I said, we can't approve everything for core, but we'll do what we can to help you get it there and/or develop it as your own project. Thanks for the feedback! ,Wil
