• All talks are in english.
  • Comment and rate talks on joind.in

Keynote

Slides
Video

By Fabien Potencier
github @fabpot
twitter @fabpot


PSR-6 & Symfony Cache: fast by standards

Description
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 Symfony 3.1 Cache component and its latest improvements in version 3.2.

Slides
Video

By Nicolas Grekas
github @nicolas-grekas
twitter @nicolasgrekas


Do not (always) use FOSUserBundle!

Description
FOSUserBundle is evil - and I will explain why. Under this trollish introduction hide a conference about Bundles and how to chose them to avoid spending more time extending them than actually building your application which is why you needed Symfony in the first place and yeah I know this sentence is hard to read, like a project where there is too many Bundles.

Slides
Video

By Damien Alexandre
github @damienalexandre
twitter @damienalexandre


5 Years with Symfony

Description
Sylius development has started together with one of the early alpha releases of Symfony framework. 5 years later it is the most promising competitor to existing solutions of the mainstream market, like Magento.

From the age of 18, I have built my entire professional career on Symfony. This allowed me to work on countless projects. I have seen Symfony in action on very small web projects, high availability websites, complex APIs and 14 year old legacy systems. I have integrated various Symfony applications, combining Sylius with eZ Platform, Akeneo PIM and existing custom apps.

In this talk I’d like to share everything I have learned during this journey. I show real world examples of projects, share solutions to both technical and more business-related problems and prove that Symfony is one of the greatest communities and projects that ever existed. This talk is supposed to be a retrospective of Symfony evolution from my perspective and knowledge-feast for the attendees.

Slides
Video

By Paweł Jędrzejewski
github @pjedrzejewski
twitter @pjedrzejewski


Making your applications work together through interoperability

Description
In all our careers at some point we’ll have multiple web applications or services we need to be able to integrate; whether that be as simple as sharing sessions or more complex such as manipulating HTTP responses provided by applications in libraries. Integration is hard but for frameworks, libraries and applications interoperability is an ever increasing goal. In this talk we’ll discuss how we can go further with interoperability to make your life easier: how you can make Drupal, phpBB and eZ Publish integrate with your Symfony web app; how you can use Symfony Components and Zend Framework modules side by side; and about decoupling your applications from any one specific library by depending on interfaces instead of implementations.

Slides
Video

By Michael Cullum
github @michaelcullum
twitter @michaelcullumuk


Challenges and solutions in getting your open source company to contribution

Description
How open source contribution benefits businesses and practical help on getting management and technical teams on the same page and contributing on a regular basis.

Many companies and their developers struggle to incorporate contribution into their daily working routines. Why do we struggle with contributing if we "believe" in open source and "know" contribution is “obviously” a good thing for all of us?

Chris Jansen and Jeffrey A. "jam" McGuire present practical, actionable ways to better unify our beliefs and our actions regarding open source contribution based on an extensive academic study Chris carried out in 2015. Our goal is to get management and developers on the same page about open source contribution and help you make it happen.

  • How open source contribution benefits your company.
  • Roadblocks and unblockers to contribution for management and technical teams.
  • Proven, actionable tactics, improved developer workflows.
  • Contribution beyond code and patches.

Slides
Video

By Jeffrey A. McGuire
github @horncologne
twitter @horncologne


Knowing your state machines

Description
Web development is not just about delivering a response. It is also about writing good code. The state pattern will help you move complexity from being all over your code to one or more state machines. This talk will introduce state machines, show how to identify uses of them and implement them in your Symfony application in an object oriented manner using the Symfony Workflow component.

Slides
Video

By Tobias Nyholm
github @Nyholm
twitter @TobiasNyholm


Profiling PHP

Description
You cannot improve what you cannot measure. That's why profiling applications should always be the first step before trying to improve its performance. Learn how to spot your applications' bottlenecks and how to adopt profiling into your developer pipeline.

Slides
Video

By Sebastian Grodzicki
github @sgrodzicki
twitter @sebgrodzicki


When To Abstract

Description
One of the most difficult challenges in a developers life is finding the "right" abstraction, or at least the best one given the current circumstances. The core problem is that abstraction is a bet on the future development of the software and we know that future is volatile. I will discuss different environments of software development and we find a base for you to decide when and what to abstract.

Slides
Video

By Kore Nordmann
github @kore
twitter @koredn


A CQRS and Event Sourcing approach in a Symfony application

Description
The Command Query Responsibility Segregation pattern, instead of the traditional CRUD, introduce different models for reading and updating the application states. Event Sourcing is the idea that every state of your application can be represented by a sequence of events. Using these two principles as the heart of a system or an application is quite common but can be challenging if we don’t use the right tools or architecture. With a concrete application as example, we’ll go through the architecture, libraries and bundles we can use in a Symfony application in order to apply these patterns.

Slides
Video

By Samuel ROZE
github @sroze
twitter @samuelroze


Symfony Distributions Reloaded

Slides
Video

By Fabien Potencier
github @fabpot
twitter @fabpot


Soup up Symfony - Keep PHP Alive Between Requests

Description
Traditionally in PHP, each HTTP request is processed by a new instance of an application. This "shared nothing" architecture provides crucial simplicity, security and stability.

However, we can keep Symfony applications alive between requests and vastly improve their performance.

Wait a minute before charging off! When using PHP in this way we have to pay careful attention to session handling, application state and memory leaks. This talk will demonstrate how to develop and configure Symfony applications for this purpose.

Slides
Video

By Andrew Carter
github @AndrewCarterUK
twitter @AndrewCarterUK


Make your code do your job

Description
Throughout history, advancement has come from reducing the amount of work that needs to be done by humans and letting technology do it for us. Long before computers, humans were letting our technology work for us in order to make ourselves better.

So too with programming. We have the ability in PHP, as in many languages, to make the language syntax itself find bugs for us. It's called "types", and is a far too under-utilized part of the language. Even many seasoned developers don't realize the benefits that come from having strict, explicit types in their code rather than relying on haphazard "duck typing".

This talk will make the case that your best way to improve your productivity as a developer is to make your language itself do your work for you. With PHP 7's improved typing support that is now even easier than ever.

Slides
Video

By Larry Garfield
github @Crell
twitter @Crell


Modernizing with Symfony

Description
A legacy application. It still earns the money, but maintaining the old code base is getting harder and harder. Feature development is too slow and the bug tracker is full of severe defect reports.

Rewriting the whole application is something your developers would simply love to do. But the rewrite probably won't go live before it's running out of budget.

Let's have a look at simple techniques that allow us to transform our legacy application step by step into a modern Symfony application.

Slides
Video

By Alexander M. Turek
github @derrabus
twitter @derrabus


Jenkins deployment pipeline

Description
Currently I'm working on a flexible deployment pipeline in Jenkins where I can reuse some templates and create new pipelines within minutes. I'd like to present my solution, talk about the basics of Jenkins and explain why it's the better way to deploy with a CI server.

Slides
Video

By Nicole Cordes
github @IchHabRecht
twitter @IchHabRecht


Kafka will get the message across, guaranteed

Description
Apache Kafka is a message broker that offers not only massive scalability and fault tolerance, but also unique guarantees around message ordering and delivery. Relaying billing information, detecting security-related events, storing information at high-throughput - Kafka greatly simplifies it all and gives developers a chance to rethink the data flows between components, moving information interchange into the center of their architectures.

Slides
Video

By David Zuelke
github @dzuelke
twitter @dzuelke


Symfony Plugin for PhpStorm - 3 years later

Description
In 2013 the "Symfony Plugin" for PhpStorm was born. Today we see over 1 million downloads and several other plugins for projects like Laravel, Drupal, Shopware, ... that help to improve your productivity.

I will talk about Symfony related features and will give you some tips and tricks. Also, we take a look at the infrastructure behind these plugins and how I maintain all of them.

Slides
Video

By Daniel Espendiller
github @Haehnchen
twitter @BigHaehnchen


A year of Symfony

Description
Last year, Symfony 3 was out right before the SymfonyCon. A lot happened! 52 blog posts to help you keep up with all new things, 1200+ pull requests, 2 new versions out… Well I'm sure you missed something. Let's review what happened during last year: basically we'll see and/or discover nice new features that appeared since the last SymfonyCon.

Slides
Video

By Sarah Khalil
github @saro0h
twitter @Saro0h


Form : One use case, many optimizations

Description
By taking one of the most usual and simple use case: a post and some tags, we will identify many ways to optimize our work with forms.

The focus will be about:

  • simple many-to-many relationship,
  • data mapping,
  • PHP 7 scalar type hints,
  • form type inheritance mechanism,
  • while some tricks will be shared along the way.

Also the final may reveal a surprise! Stay tuned ;)

Slides
Video

By Jules Pietri
github @HeahDude
twitter @julespietri


HTTP Security: headers as a shield over your application

Description
You are all aware of what are XSS vulnerabilities; do you know what's Clickjacking? You have probably heard of Root Certificate compromission; do you know the principle of a protocol downgrade attack?

You're coming to SymfonyCon because you are HTTP application developers and I will present you awesome HTTP headers that will help you to mitigate these kind of attacks, just using W3C WebAppSec recommendations.

Slides
Video

By Romain Neutron
github @romainneutron
twitter @romainneutron


Adventures in Symfony - Building an MMO-RPG

Description
Ride along on a tour of my latest adventure! I will unpack my process for turning design ideas into game mechanics, talk about the tools that were used (including Symfony and other open source goodies), examine major roadblocks and how they were overcome, give a postmortem on key implementation decisions, and share the highlights of what I learned along the way.

Slides
Video

By Margaret Staples
github @mstaples
twitter @dead_lugosi


How I learned to Stop Wiring and Love Autowiring Containers

Description
Does managing YAML, XML or PHP container configurations make you sad? Do you dread making changes to your classes' dependencies for fear of the inevitable container configuration wiring blues? Life doesn't have to be this way! Not if your container supports autowiring, that is. Hear one developer's journey into the wild world of containers, learn how autowiring works, and find out how using autowiring can free you from having to manually configure every dependency.

Slides
Video

By Beau Simensen
github @simensen
twitter @beausimensen


Handling 10k Requests/second With Symfony and Varnish

Description
It is believed that the Symfony framework is quite heavy and it can be difficult to develop a website that will be able to work under the high load. It is true, but does this mean that it is impossible to implement a dynamic caching and to update only a small part of entire page as data is updated? This talk will give your an answer to that. It is Varnish, ESI-blocks and load balancing. With hundreds of thousands of unique visitors and million hits a day, we continue to use Symfony, and do not see any problems.

Slides
Video

By Alexander Lisachenko
github @lisachenko
twitter @lisachenko




Lightning Talks

Microservice experience in 7 minutes

Slides
Video

By Stephan Schulze
github @nahpeps
twitter @nahpeps


Introduction to PandawanNeo4jBundle

Slides
Video

By Xavier
github @xavismeh
twitter @xavismeh


CMF 2.0

Slides
Video

By Maximilian Berghoff
github @ElectricMaxxx
twitter @ElectricMaxxx


Talkception

Slides
Video

By Titouan Galopin
github @tgalopin
twitter @titouangalopin