Blog
Symfony Live London – September 20th 2013
Last week I attended the Symfony Live conference in London.
As a Drupal developer, I was eager to get to know more about the framework that's getting up close and personal with Drupal 8, powering its new innovations, and to get an idea of the learning curve involved. On arrival at the Glaziers Hall, registration was quick and easy, and a welcome cup of coffee later, I was ready to dive in!
There were two tracks of sessions for the day, so attendees who were already well-versed in particular aspects of the framework had a choice. However, if you were torn between sessions, there was no need to worry as both tracks were being recorded. (These will be put online very soon, so keep an eye on https://twitter.com/SensioLabsUK for the latest.)
Getting the Symfony basics right
I had never worked with Symfony before, so first on my list was the "Build your first Symfony2 application" with Stefan Koopmanschap.
Stefan has been involved in Symfony since 2006, and PHP from 1997. He started off by explaining how to set up your first Symfony application. He explained that it was much easier to set things up with Composer, rather than getting the package from the download page on the Symfony site, as Composer will set up all of your dependencies for you. In Drupal 8, Composer is also used to set up dependencies.
We were then rapidly taken through some core concepts/technologies in Symfony, like routing, bundles, Twig templating, Doctrine and form building. The latter is not going to be present in Drupal 8, so it was interesting to see how Drupal 9 could work with this, as it seemed much simpler, and more flexible than the Form API within the current version of Drupal.
The Symfony learning curve
Next up was Lars Janssen presenting A year with Symfony2. Lars is an experienced software architect at Powwownow, and his session took us through the learning curve with their recent adoption of Symfony2. It was good to see that after a year of working with the framework, they felt they had gone with the right choice, after trying out Zend and CodeIgniter first. Encouraging for Drupal developers!
Integrating Symfony with Drupal 8
Integrating Drupal into Symfony2 was led by by Fabrice Bernhard. As a Drupal developer, seeing the Symfony community reacting to Drupal's adoption of Symfony2 was very interesting. Wrapping Drupal 8 for use within a Symfony2 application points to greater co-operation between the two communities in the future, and any performance benefits from this approach could be fed back into Drupal. For the bundle and more information, see this link.
Test driven development and long-term relationships
Creator of PhpSpec, Marcello Duarte, and Konstantin Kudryashov, creator of Behat (which we use here at Deeson Online) presented The Framework as an implementation detail.
The two speakers made a great team on stage, and the end result felt more like a good conversation than a usual presentation.
The main message I took away from this session was "TDD is for long-term relationships" – the relationships being between stakeholders, such as a business and their clients, but also the developers within that business. It is vital that businesses create processes that ensure code is maintainable to reinforce the relationships created.
It definitely made me think more about my own personal development processes, and how we all can change the relationships within our own network of stakeholders.
Be the better developer
One of my favourite presentations of the day, "Building Better Developers" by Rowan Merewood was after lunch. Rowan took us through some of his experiences and ideas on how to become a better developer. Key points included:
* You're never going to be the best at everything.
* Measure systems, not people.
* Encourage specialisation in one area, be a generalist in others.
Some prominent examples of people not following these points were presented, showing that even the best developers in the world got things wrong.
How to get Xdebug to work on Symfony
Derick Rethans, author of Xdebug, presented "Xdebug for Symfony Developers". Derick had only been using Symfony for around a week, so his talk mostly focused on how to get Xdebug working correctly with Symfony, and around its own debugging tools. There were some interesting tips to take from this, such as saving function traces to a file when unfamiliar with a platform.
Allowing for expressions within service definitions
The keynote speech by Fabien Potencier, creator of Symfony2, introduced a new feature – the Expression Language, which solves a big problem within Symfony. It allows for expressions within service definitions, routes, access control and validation constraints. It was good to see the reasoning behind the new feature, the issue tracker conversations that led to this point, and examples of where the new feature is useful. Fabien was in-depth and obviously thorough, approaching the problem from different angles until the right solution became apparent. From an outsider's perspective, it was reassuring to see the effort to make the right choices in pushing the framework forward.
Wrap up
As the conference ended, I came away with a better grounding in Symfony2, and felt eager to get more involved in the new changes in Drupal 8. It was clear that myself and other Drupal developers attending felt much more confident in the future of Drupal after learning some fundamentals.
Add new comment