Symfony and Drupal 8: The lowdown from Symfony Live London
Eager to keep up with the big changes heralded by Drupal 8, I headed to London for Symfony Live London 2012 - 13th & 14th September 2012. This was a two-day event organised by Sensio Labs, the creators of Symfony. It was the first major Symfony event to be held in London.
Day one was organised around hands-on workshops which were geared towards those at beginner and intermediate level. Among the delegates, there were plenty of 'Drupalers', a host of Symfony recruits, representatives of organisations that are heavy Symfony users and curious freelancers.
The day was very well paced and had a good mix of 'learning by doing' and learning from the experience of others. Being new to the Symfony framework, I attended 'Introduction to Symfony2', which was expertly led by Hugo Hamon from Sensio Labs.
Coding live on his laptop, with us delegates attempting to keep up on ours, Hugo gave us a thorough grounding in the fundamentals, from installation through to a fully functioning website. The majority of the content covered can be found in 'The Book', but coding along with someone with such a deep knowledge of the subject was invaluable.
The Symfony conference was held the following day. Attendees were treated to a broad range of in-depth talks from Symfony contributors and the wider php community. Drupal developers were well represented, but this time they were outnumbered by seasoned Symfony experts
The day kicked off with a keynote from Dries Buytaert entitled 'The Secrets of Building and Participating in Open Source Communities'. Dries was forced to admit there were no real 'secrets', but he did have many a story to tell about growing open source communities. He also did an efficient job of 'selling' Drupal in preparation for the more technical Drupal 8 presentation held later in the day.
For the remainder of the day, the Symfony Conference continued along two 'tracks', giving delegates a choice of presentations. I opted for 'Effective code reviews' with Sebastian 'Proofek' Marek. He introduced a variety of characters to illustrate the right and wrong approaches to code reviews. Take away points: Remember what you need to review and why.
Next up were Richard Miller and Jeremy Mikola who discussed 'ElasticSearch'. I was impressed by the benefits of this search tool. Built on Lucene, it offers speed, scalability and flexibility. There is a nascent Drupal module which Miller and Mikola claimed can be expanded into a fully scalable search solution. I'll be interested to see has this develops.
After lunch, I learned about phpdocumenter2, a PHP project which has been through the 'Drupal 8' experience. phpdocumenter was built up from a significant amount of legacy custom code. phpdocumenter2 ripped out a lot of this in order to replace it with Symfony components, making it more efficient and easier to maintain. It provided an excellent example for all those wanting to see how integrating Symfony components works in practice.
Next, it was time to talk Drupal 8. I'd argue that it was the most interesting talk of the day. Catch from the drupal core team and Alex Pott talked frankly about the problems with Drupal – mountains of legacy code from the days of PHP4, deployability and the race to catch up with the RESTful web. Both Catch and Pott appealed strongly to the Symfony community for help.
Following on from that, there was a lively discussion about the 'Behaviour Driven Development' framework Behat. Marcello Duarte and Konstantin Kudryashov were clearly excited and couldn't disguise their passion for testing websites. Behat is a testing platform that shows genuine promise and I'm currently looking at how we can expand on the framework to provide effective Drupal Testing. Watch this space.
The final word went to Fabien Potencier, the creater of Symfony. His in-depth talk laid out the future of Symfony and plans for an Ubuntu-style six monthly release schedule featuring 'Enterprise' releases with Long Term Support. These will sit alongside 'latest and greatest' releases which are supported for a very short period of time. It was good to hear that backwards compatibility is on Potencier's mind, with Symfony appearing very current and 'bleeding edge' when compared to the long support offered by Drupal, whose 6.0 release is already four years old.
It was a real pleasure to be a part of this conference and see how another open source community operates.