Two months ago I blogged about my experiences of giving a Symfony2 training course with the PR7 release of Symfony2. The last three days I gave another in-depth Symfony2 training course, this time using beta3 / beta4. It was interessting to see how much Symfony2 has evolved over the last two month. There were improvements at every part of the Framework and the current betas made a really solid impression.
The things the attendees loved:
- The flexibility of Symfony. It seems that is nothing you can’t do with Symfony2
- The annotation way of developing. Having the configuration metadata of Entities and Controllers all in one place (the DocBlock of the method).
- The maturity of the underlying concepts. You can see that all concepts are really well-thought. I wasn’t able to count the amounts of “brilliant” shouts of the attendees in these three days but there were lots of them.
- Twig! Everybody liked Twig. Most loved: The inheritance possibility of the templates
- Assetic. This is one of the killer features of Symfony. Assetic is really great and powerful. We faced some problems with beta3 on windows with YUICompressor. After an update to beta4 some of them seems to be fixed, others remained.
- Doctrine: Symfony1-Users like how lightweighted Doctrine2 is. New-time users love Doctrine for the features, abstraction and Query-Language.
- Unit-Testing: Using PHPUnit is feeling really good. The WebTestCase is a easy way to test controllers and pages.
There are still some glitches with Symfony2 that brings up
- Long-Time Symfony1 user are missing the magic sometimes. There is a bit irritation sometimes that there is that many configuration work.
- Because Symfony2 is moving that fast, there is the problem that some interessting Third-Party-Bundles can’t keep up with all the changes. This is a problem until we have a stable release.
- The last betas and PRs changed a lot of syntax (take annotations for example). All these changes made sense but the problem is that there are tons of tutorials in the web that use the old ways. That is not a Symfony2 problem at all but brings up a lot of questions.
- Documentation: The official Symfony-Documentation is getting better and better. Ryan Weaver and the others are doing a brilliant Job there, the problem is that everything that is not in the core has only little, outdated or nearly no documentation at all. Take the Assetic usage in Symfony2 for example, or the FrameworkExtraBundle. It is sometimes difficult to find the right place to start your search for information. For Symfony2-beginners it’s a challenging problem.
- Symfony1-Users are missing the out-of-the-box behaviours of Doctrine1. Sure you can install them using the DoctrineExtraBundle but we were not able to use this Bundle with beta3.
After three days packed with Symfony2 and Doctrine-Stuff I have a very positive feeling that we are getting close to a very stable and good release of 2.0. It is pretty amazing how much more flexibility new version brings and lightweighted I feels.
As always I’m looking forward to the next Symfony2 training session.