Flow3: PHP's Answer to Java's Spring?
I'm a Typo3 user for years. It's one of the best PHP-based OpenSource CMS you can get today. I prefer it over Java-based solutions because it's mature, feature-rich, and best of all, it can be used with every provider environment you can find on the planet.
There are huge installations out there already, that scale, can be clustered, and the like. For short: Typo3 is rock-solid enough to be used in mission-critical environments. But, the core team recognized over the last years that Typo3 misses usability in the backend. With Typoscript, a flexible but also complex beast with a steep learning-curve, the design and maintenance of sites was time-consuming. In a first step, Typo3 3.8 allowed to use TemplaVoila, an extension with a visual designer for page templates. With Typo3 4.0 this extension became part of the core.
For Typo3 5.0 (Phoenix) an additional backend redesign is planned that will deliver the usability we already know from Mambo/Joomla, Drupal and other competitive OpenSource products.
Before I started to use Typo3 I used Mambo, and I even developed hacks for multi-lingual support of extensions for it. Mambo's usability was pretty good, but the core was pure chaos. Multi-lingual and multi-domain managed sites couldn't be done in a stable way. And the worst of all was the missing compatibility between releases. All my hacks had to be developed again and again. So, I decided to change to Typo3, which delivered multi-domain, multi-lingual support out of the box, and with TemplaVoila a similar management of the sites.
During the concept design to fight for better usability the Typo3 core team decided to reimplement the Typo3 core. Modern concepts popular within the Java community led to the idea of a separate framework in the end: Flow3. It is comparable to Spring, and Flow3 will deliver a lot of features we love from Spring today, e.g. DI and AOP.
Yesterday Robert Lemke, one of the masterminds behind Typo3, announced flow3.typo3.org. This will be a kind of core framework for Typo3 5.0, allowing virtually any PHP project to incorporate the most modern PHP core around. Robert tells in an interview, that it will be even more flexible to use, in the sense of modern development concepts, than todays successful Zend Framework.
Besides the fact that Typo3 5.0 will be even more rock-solid, I like the idea to get comparable design and development principles for PHP and Java. There's no doubt that other language frameworks will follow this idea.
When I talk about enterprise technology today, Typo3 is my prime example for the quality one can achieve with PHP. There's still a discussion in the Java world about this little stepbrother. A lot people still think of PHP as a toy. This is like the discussion about JVM speed with the C++ followers in the early days. When Flow3 is available a lot of these reservations will be obsolete for a lot of PHP projects ;-).
- Login or register to post comments
- 3190 reads
- Flag as offensive
- Printer-friendly version







Comments
Rainer Eschen replied on Sun, 2008/02/10 - 4:13pm
"Jumping of a cliff" is the right description ;-). When I changed to Typo3 3.8 using the TemplaVoila extension I needed about 2 weeks to get my template running. Not till then I could create the content I intended to when starting the project. But, with todays Typo3 4.x releases everything is easier. There are a lot of books now that help much to get things running. I think Typo3 5.0 will be the release that can be an alternative to Joomla/Drupal/etc. in the context of user experience. I expect that some of the Joomla guys, with complexer sites, will change, because Typo3 has the better core for such requirements.
Springsteam Blog - Next Generation Java Development
cowwoc replied on Mon, 2008/02/11 - 12:29am
... in other news PHP community members reported that productivity has dropped like a rock in previous months. As we speak, experts are wading through XML trying to figure out what went wrong.
Spring is a bandaid and makes little attempt to fix the underlying problem. What's next? An new framework that abstracts Spring and Typo3 so your code can be portable across either one? At some point you've got to stop abstracting on top of frameworks that are abstracting for other frameworks. Furthermore, developers are spending too much time ensuring their code is portable across multiple databases when in reality most software never changes databases during its lifetime. It is true that "premature optimization is the root of all evil" but I argue the same is true for premature abstractions.
Markus replied on Mon, 2008/02/11 - 3:24am
Looks very interesting. Maybe I should give PHP another chance :-)
Markus
http://www.codekite.com
Emil Ong replied on Mon, 2008/02/11 - 12:53pm
Are there any examples of how the DI works?
-----------------------------------------------------
Emil Ong
Chief Evangelist
Caucho Technology, Inc.
http://www.caucho.com/
Rainer Eschen replied on Mon, 2008/02/11 - 4:26pm
This is the place for further details:
http://forge.typo3.org/projects/show/flow3
Robert started to check in code. But, nothing to analyze for DI details at the moment.
Springsteam Blog - Next Generation Java Development
Stefan Koopmanschap replied on Tue, 2008/02/12 - 7:00pm
oh the joy, yet another new PHP framework. just what we needed ;)
Truely, for PHP's sake, it would've been better if they'd picked an existing framework and rewrite the CMS to be based on that. Zend Framework, symfony, it's frameworks like that, which really should be used instead of re-inventing the wheel once again. With so many frameworks to choose from, it's just going to confuse people who are relatively new to PHP.
That said, it's of course good to see the typo3 people are trying to stay active and always reconsider old code. The best way to keep innovating.
Rainer Eschen replied on Wed, 2008/02/13 - 9:22am
You're right that too many frameworks can be a problem to beginners. But, Robert tried to describe why they don't use Zend e.g. as the base framework. For me, with a stronger Java background, they try to get what the Java community already has with Spring. This persuades me that Flow3 will have its place in the PHP community.
Springsteam Blog - Next Generation Java Development