Skip to content

SymfonyLive London 2016

September 15 – 17, 2016 • London (United Kingdom)

illu-city-left Created with Sketch.
illu-city-right Created with Sketch.

Unglue all the things! Beau Simensen

Bundles. Packages. Modules. Plugins. So much code is locked up in framework-specific packages. With so may people talking about wanting to write framework agnostic packages, it can be easy to get stuck thinking that this is, and should always be, the end goal. Learn about one developer's experience trying to write truly framework agnostic code. See what worked, what didn't, and walk away having a better idea how you, too, can attempt to unglue all the things!

The Workflow Awakens Tugdual Saunier

It is common having to handle statuses or product states, either on e-commerce or editorial websites. To do that, you can use the classical -manual- way, or get help from libraries covering the basis. In this talk, we will talk about the state machine concept and definition before considering its usage looking at existing open source libraries. Finally following the Symfony way, we will study the brand-new "Workflow" component.

How I started to love what they call design patterns Samuel ROZE

We, as developers, often think that we don’t have to or don’t need to know what are what they call design patterns. We think that we already know how to build a software and don’t need all this theory. Years after years, by having to deal with the low maintainability of my own codebases, I explored a lot of ways of decoupling applications, in order to have enterprise-grade software that last for years. With concrete examples, I want to share with you some design patterns and how they can help you to grow well structured and decoupled applications

Form: Use Cases and Optimizations Jules Pietri

Let's take a look at some simple use cases where forms can be so useful but sometimes hard to implement. With the last PHP7 allowing strict types on object methods, with the Form component refactoring and new features, we will take a moment to share some updated best practices and tricks. - Using an API with ChoiceType/EntityType: how to optimize data loading? - Using PHP7: how to handle validation for strict-typed getters/setters? - Using sensitive data: how to handle permissions and fields visibility? - Using symfony 2.7 and older: how to rethink some form types while migrating? - Using multi-steps forms: how to keep control of submitted data?

Conscious Coupling Ciaran McNulty

"By using a comprehensive feature-filled framework we can build software fast. On the other hand, by decoupling our applications we can build sofware that is independent of our framework and infrastructure choices, and therefore longer lasting. We can't do both, is one approach always right? In this talk we'll look at different decoupling techniques, what problems they solve, and when they make sense. We will learn some concrete techniques to discover where we should be investing in decoupling, and when we should let the framework maintainers do the work for us."

Going micro with the Symfony microkernel Jakub Zalas

A microframework is a simple and not-opinionated web application framework. It leaves most architecture related decisions up to the developer, as opposed to a full-stack framework that comes with most decisions already made. Symfony is the only PHP framework that can be used as a full-stack and a micro framework. Now, since the microkernel is part of the core framework, it has never been easier. Learn how to build your first Symfony microframework application, choose bundles and components you need, and remove all the fat! This exercise will increase your awareness of Symfony's internals which you'll also benefit from when working on a full-stack application. Finally, you will learn how to convert to the full-stack edition with ease as your application grows.

Flipping Out with Feature Flags and Toggles Michael Cullum

Quite often it can be useful to enable new functionality for only certain users on your site, or perhaps to only enable it on a test version of your application. One method of doing this, with a single shared codebase, is feature flags, and is the method used by huge organisations with monolithic repositories like Flickr, but can also be used on much smaller scales when you want to test out new functionality in production or perform A/B testing. This talk will guide you through why feature flags can be helpful to your development workflow, and how you can use them whilst avoiding too much added complexity to your application.

How to monitor your Symfony applications in production Alexandre Salomé

Exploitation of an application means monitoring of usage and data inside it. To make the good decisions for your application, you need to have a correct level of information on it. First, we will see the existing solutions for monitoring, and how to choose the best one from the available products, for the problem you face. Once we covered the solutions, we will see how to instrumentalize a Symfony application for it to communicate with the monitoring system. We will cover existing PHP components and pros/cons for each of those solutions. The final step is to choose the metrics and events you want to publish to your monitoring tool. We will think about the useful metrics you can have in a Symfony application, and for each of them the value in decision taking. This presentation will cover the monitoring process of a generic Symfony application, but also our solution at Auchan Retail France, how we implemented it in our applications and how we help teams taking good decisions.

Getting instantly up and running with Docker and Symfony Andre Rømcke

A look into how you can start to use Docker today with ready made setup with php7, nginx, redis, blackfire and so on. How you may extend it, and integrating it into your continuous integration workflow, and how you can setup a continuous deployment workflow using for instance Travis-CI.

PSR-6 & Symfony Cache: fast by standards Nicolas Grekas

After several months of discussion, the PHP-FIG (PHP Framework Interop Group) published the PSR-6. Its goal is to enable interoperability between caching systems implementations - a mandatory aspect to improve performance in your applications. At this conference, we will see the benefits and limitations of PSR-6, we will discuss the various existing cache solutions (Doctrine, Stash, php-cache), and I will present the new Symfony 3.1 Cache component and its upcoming improvements in version 3.2.

Tell a story with your (git) repository Tomasz Kowalczyk

Ever found yourself searching for *that commit* that broke everything? Trying to analyse project history and learn why something was done that way? Maybe all you see is a list of "fixed this" and "fixed that" messages that makes you want to start over? Want to know how can you do it better? Repository history is often overlooked as a tool to keep information about project development process. I'd like to share my experience in keeping and encouraging discipline among engineers to not only keep the code clean, but also care about what goes into VCS.

Sponsors

Gold Sponsors

Silver Sponsors

Did you miss SymfonyLive London 2016?

Join us at an upcoming conference!

SymfonyOnline June 2025

Online

June 12 – 13, 2025

Talks are in English

SymfonyCon Amsterdam 2025

Amsterdam / Netherlands

November 27 – 28, 2025

Talks are in English

SymfonyLive Paris 2026

Paris / France

March 26 – 27, 2026

Talks are in French

SymfonyLive Berlin 2026

Berlin / Germany

April 23 – 24, 2026

Talks are in English