Skip navigation.

Zend Frameworks and Vaporous APIs

The recent annoucement of the vaporware Zend Framework has sparked lots of speculation. Given the sparse amount of information, I can safely say that I have every chance of being wrong (or right) in what I say next:

  • Unless everyone is unusually creative, look for a development model that matches an existing one such as the Tomcat model (where the Java Servelet API is the standard, and there are multiple implementations of the API), or a single source code base and API for add-ons that is shared by everyone -- such as the Eclipse or Apache project. I expect the later, but you never know given that much bigger companies than Zend are involved...

  • Some APIs will be addressed:
    • User authentication, so you can differentiate your mother and your girlfriend, unlike Oedipus.
    • Registration and invocation of plug-in-components, so you can boast to your dad that you write plug-and-play software.
    • Web services, so you can boast to Tim O'Reilly that you are helping him build Web 2.0.
    • Centralised configuration management so you can find your ini and config settings even if you can't point out where the Zend HQ is on a map of Israel.
    • Possibly UI and event management, so your mother can finally navigate through the mess of links you created.

  • I suspect the code will be divided into core services, such as sex and genitals, while appendages such as webbed feet and legs will be optional.

  • Half the skill in design is in choosing what to leave out; however sometimes it's not skill but fear! Will anyone be brave enough to suggest which template system to use? And an oracle tells me that I don't expect consensus beyond the PDO level either...

  • No one who has written a PHP framework or large PHP app will be happy when the source code is released. Then everyone will get drunk and make up.

PS: Chris Shifflet has a very sensible security wishlist for Zend Framework.

Update 26 Oct: Wez debunks some rumors started by some silly person we know :)