Episode 45: Symfony Project at MySQL User Conference
I had a chance to catch up with the Symfony guys at the MySQL User Conference a few days ago. We get some background on the Symfony project, and a glimpse as to where things are going in the near future.
This was my first 'from the floor' recording - I think the levels are *OK*, but please bear with me - Fabien sounded better in person :) I think I got a small 'exclusive/breaking news' at the time, but I wasn't able to get the podcast up until now.
- Symfony
- Symfony Project home page
Comments



Stefan says on Apr 22, 2008 @ 04:12 AM:
I think the scoop you got in there is still a scoop, it hasn't been announced anywhere else so far.
Michael Kimsal says on Apr 22, 2008 @ 07:56 AM:
Great! It was a bit late to be checking all around, but I figured after a week I might have been 'pipped at the post' as they say.
Robin says on Apr 23, 2008 @ 04:08 PM:
Nice scoop Michael, Just the last week i installed symfony on my laptop at home, I was going to go with zend or cake but the debian package to install symfony just makes it so easy.
Was the Justin in the interview Justin Diaz?
Michael Kimsal says on Apr 23, 2008 @ 10:07 PM:
Hi Robin!
Unfortunately, I didn't catch last names (except the one I slaughtered!).
Chris Hartjes says on Apr 25, 2008 @ 10:48 AM:
(Disclaimer: I am a core contributer to CakePHP)
I just listened to the conversation with the Symfony guys and couldn't stop chuckling. Why? The totally-unnecessary use of the word 'enterprise'.
What does 'enterprise' mean in this context any way? That there is someone to blame when things go wrong? That there is paid support for the framework? Calling your framework "enterprise" means you've decided to believe that labels are more important than results. Otherwise, why constantly tag your framework 'enterprise'?
Sure, Yahoo! uses some hacked-up version of Symfony. Mozilla uses CakePHP to run the Firefox Add-ons site. That's about as 'enterprise' as you get I would think.
Michael, you should talk to the CakePHP guys to get a different perspective on PHP-based web application frameworks. It's not about Symfony vs. CakePHP, it's about an approach in building a framework.
Martin Bavio says on Apr 25, 2008 @ 11:08 AM:
Before any opinion, I´m a CakePHP developer.
I have only one question:
This guy, Fabien, has try any other framework than his? All the things that he labels as enterprise, are in any framework today.
So please, tell to him that before speak, check other products (in this case frameworks), other way he could looks like a real ignorant, at least to me.
Cheers,
mbavio
Michael Kimsal says on Apr 26, 2008 @ 10:15 AM:
Guys - Matrin and Chris - I will talk to Cake people at some point. I've got my own views on frameworks altogether which I try not to let cloud things too much - I don't want to get in to shouting matches with people :)
I'm not sure the use of the word 'enterprise' is entirely off the mark though. I don't think it's simply believing that labels matter more than results. It's likely more that results can only take you so far, and at some point you have to start actively framing how people view your offering. I do think 'paid support' and things like that are things that go along with almost any definitions of 'enterprise' with respect to software products and services.
As far as Yahoo vs Mozilla cake/symfony/etc - the needs of each are different. As much traffic as Mozilla may get, I'm going to believe that there's more order with respect to how the Yahoo internal processes need to work, and that the symfony project may be able to fit within those constraints or internal needs possibly better than other options.
With all that said, cake may have fit Yahoo's needs perfectly (and Symfony for Mozilla's) and at the end of the day an 'enterprise' (of any flavor) really only has a need for *1* system, and they ultimately have to make a choice. Notice Fabien really stayed away from the question I almost led him in to (it was off the cuff - I didn't quite have that question come out as I wanted it to).
@Martin - I doubt he's done much with cake, but doesn't really need to. Have you delved in to Symfony in much detail? Probably not, as you're a cake dev, as you stated. So what? I would say that I think there are likely some things Symfony has that Cake doesn't, and vice versa, but that's just me trying to be optimistic. :)
Also, I think that's why they're looking to spread out in to other aspects of service - paid support, certification, and so on. Because at the end of the day, all the major frameworks are going to end up providing mostly the same services, implemented in slightly different ways. I had a discussion with Brian Moon about this (off the record, unfortunately) which I may get him on the show to talk about in more detail.
I've tried Symfony, Cake, Zend and others, and find good and bad in all of them. I'm working more with Cake at the moment, and am finding more wrong with it than right, but I'm a bit of a hard taskmaster when it comes to these things.
One example that I don't think any major framework gets right is 'out of the box' experience with respect to building usable web apps. Last I checked (few months back) *none* of the PHP frameworks that get much press (Zend, Cake, Symfony, CodeIgniter, etc) come with any default user/group permissioning system built in. This seems to be done in the name of 'extensibility' and 'customization' but time and again when I've come across apps built with these systems, people end up rolling their own systems, and every one is slightly different, and most end up having some logical flaws. The first framework to come up with a standard 'out of the box' user/group permission system with a web-based admin screen will see huge uptake in adoption for app writing.
Those of you old enough to remember PHPNuke will appreciate what I'm saying. Under the hood, Nuke was quite ugly, but it had a built-in system for user/group stuff that people could tie in to and build modules on top of. People did some amazing (and amazingly bad!) things with Nuke, which accounted for its rapid ascension in the web world for years. 'Abstractions' and 'code quality' had pretty much nothing to do with it. Where are the good web apps in PHP built on any of these frameworks? There aren't any right now. IMO, at least part of that is because the frameworks don't provide much more for you than you can do for yourself at this point (defined structure, separation of concerns, etc.) If I still have to write something as fundamental to my app as a user/reg system, I'm going to end up writing it 'my way' which will eventually conflict with a framework's way, and I'll choose my own way to go on the project. Where are the forum systems, feed reader projects, ecommerce packages, blog systems and so on built in frameworks (magento's the only one that comes to mind)?
I'll stop the rant now :)
Thanks for the feedback guys!
Martin Bavio says on Apr 26, 2008 @ 04:53 PM:
Michael,
You don´t need to try every framework to realize that the features that Fabien describes as "uniques" and "enterprises" are in every framework. Go to Cake, CI or Zend website and you can READ that.
And Cake DOES have a built-in permission system. In fact, is has two, Auth and ACL, that works together. I can´t speak for the other frameworks, but I think you need to check again.
And please, DO NOT compare PhpNuke with any framework, remember that PhpNuke is a CMS, a very different software that the one we start this discussion.
Cheers,
Martin
Michael Kimsal says on Apr 26, 2008 @ 07:03 PM:
Martin:
Having an ACL list is not the same as having an 'out of the box' *default* and *standard* way of dealing with the common user registration and authentication needs that most websites have. It's the difference between buying a ready made product and buying a bunch of parts for something. You run the risk of many people putting the parts together in the wrong way. Specifically with respect to security, having a home-made security system is much worse than having one that was put together and tested by professionals (or at least the people who made the tools in the first place).
What I'm saying is needed is a modern lightweight CMS built around modern web framework principles. I don't care if it's Cake, CI, ZF, Sym or whatever. You may think "That's just CMS", but I hazard to say that just about everything that people do with web apps is manage content of some sort. And yes, I'm using 'content' and 'manage' in the broadest sense of the words, intentionally. I'm not meaning simply news sites and blogs and such, though they do tend to form the basis of many home grown applications that morph in to something more.
Martin, you were the one that asked if Fabien had tried other frameworks, now you're saying he doesn't need to try them to know the similarities? I think he knows (as do most people) that most frameworks provide the same type of functionality. What specifically did he refer to as "unique" with respect to Symfony?
I'm also curious as to why this aroused such spirited input from Cake people. Does the Cake community feel slighted somehow? I don't mean by this podcast specifically, but in general.
Thanks!
halfer says on Apr 28, 2008 @ 03:24 AM:
Disclaimer: I'm a symfony user.
Just my penny's worth: it's a real shame when framework supporters feel the need to throw insults around in defence of their preferred technology: anyone who uses phrases like "real ignorant" is either hitting a language barrier (and needs to be more careful) or is in danger of looking like a teenager picking a flame fight.
One of the things I like about the spirit of the core devs at the symfony project is that they regularly and publicly admire good features in frameworks, such as Rails and Zend (and probably CakePHP too) rather than publicly disparaging them. In a similar vein, many of the regular forum contributors take the view of "the right framework for the project" rather than a blinkered "my framework for all projects". It would be great if we could see this from contributors here, too - can't we agree that there's some great things about Cake AND symfony, rather than rain on each other's parade?
Chris Hartjes says on Apr 28, 2008 @ 07:46 AM:
@halfer
I admire a lot of stuff in Rails and have contributed stuff to Zend Framework (Audioscrobbler web service module) I can definitely see the good in (for lack of a better word) "competiting" frameworks. Good ideas push everyone forward.
My objection is to the label "enterprise". I don't think Symfony is "enterprisey" any more than Cake or Zend Framework.
Stefan says on Apr 28, 2008 @ 02:08 PM:
disclaimer: big symfony fan/user here
Chris: What is the problem with the word enterprise then? The fact that symfony uses that word does not mean it is *more* enterprise than Cake or Zend. It never implies that. It is only a description for the framework, for the market it is targetting. Nothing wrong with that, is there?
Cake could also start presenting itself as an enterprise framework. I don't understand what is wrong with labelling your framework enterprise if you feel that is what you're trying to accomplish.
halfer says on Apr 30, 2008 @ 04:05 PM:
@Chris, I'm pleased you are, to a certain extent, framework-agnostic, even as a Cake core dev. And it may please you to know that I'm keen to try Cake at some point (I think it was lack of Oracle support 18 months ago that meant I didn't look further during company time). I believe also you have a good homegrown ORM, which I've heard positive things about (and wonder whether that might be worth mixing with symfony for the folks who don't get on with Propel?).
FWIW, I think the 'enterprise' tag is not something to get unduly worried about, and I believe that Fabien + co are specifically intending to market symfony in this direction. I hear a promo website aimed at IT managers and non-techies is planned. As Stefan says, Cake could go in the same direction if it chooses, but equally it could aim for the small-to-medium market, which arguably might attract more users and more production installations.
I can't comment on the relative "enterpriseness" of PHP frameworks as I only know symfony in detail, but if asked, I'd probably first think of symfony or ZF, probably because both have a reputation of having a learning curve to master.
Anonymous says on May 13, 2008 @ 05:22 PM:
I've been a Cake developer for over a year now, and am considering switching to Symfony simply because of the friction within the core Cake team. There is an obvious power struggle occurring with the main developers that is hindering the advancement of the framework. There has even been rumor of a fork of the Cake project.
Michael Kimsal says on May 15, 2008 @ 06:24 AM:
Funny you say that because I've picked up on some of that too, but had felt it earlier this year - I wasn't sure if that had been ironed out by now or not.