/ SYMFONYPHPCONFERENCE

SymfonyWorld Online 2021 Summer Edition

I was quite sceptical if an online conference could make me pay attention in the same way a “physical” conference could. Spoiler: It could.

There were some minor issues, such as not so perfect sound, but it was sufficient.

The conference took place at an online platform (hopin). All sessions were pre-recorded and made available for all attendees after the conference. During the two conference days, the talks started again after seven hours to also give developers from all timezones the opportunity to attend all talks.

Each talk has been subtitled in english, that helped me a lot to follow some speakers.

I will focus on my highlights of that conference in this article.

Keynote

The Keynote has been held by Symfony-inventor Fabien Potencier and for quite some surprise announced, that Symfony is going to drop the Long-Term-Support (LTS) releases. So, in order to stay up-to-date Symfony applications should be updated every 6 month, when a new version is released.

#NoLTS

Fabien also announced that PostgreSQL is now the preferred way to store data in Symfony. That also applies for messages and locks.

PostgreSQL

Symfony Forms: Advanced Use Cases

The talk by Alexandre Salomé was not so much about advanced use cases, but an interesting and nice walk-through the Symfony forms-component with a lot of gems.

Forms

I immediately recognized some simplifications for things we implemented in projects and had the feeling to now have a better understanding of forms, where I lacked some knowledge.

Symfony Notifier Demystified

Jan Schädlich introduced the symfony notifier component and its versatility and simplicity. The component can be used to write Notifications to different channels, such as flash messages on the website, console or even - depending on the configuration - via SMS, email, or to chat channels.

Keynote - You’re not in IT

Stefan Koopmanschap led a talk, about the misunderstanding that we are working in the IT business but more in a learning business. He took us on a journey through his career and achievements in being a developer and open source maintainer.

skoop

Important for me were all the achievements he ‘unlocked’ and that for being a successful developer there may be more to life than coding, but also helping others by spreading the word or being a supporter.

Great Talk!

Keynote - Towards Digital Sustainability

A quite unexpected (at least for me) keynote about digital sustainability and green IT by François Zaninotto gave important impulses to think about when developing applications.

His company developed a service for measuring the carbon footprint of websites.

He once ran a widely adopted library, called faker on that he dropped the maintenance for ecological reasons.

Cypress, the E2E must learn from the past

Guillaume Loulier introduced cypress as end-to-end testing framework and its integration into Symfony.

It has a better integration than Panther and also supports more features. The talk was great for people, that want to dive into the world of e2e-testing.

Runtime component: The game changer

The talk by Tobias Nyholm was one of my favourite talk at this conference. The sound and video were great, one could immediately see that Tobias is an experienced Speaker.

Nyholm Setup

He explained the newly integrated symfony/runtime component, whose benefits I didn’t understand upon reading the article about it. The runtime component - in short - solves problems where different PHP runtimes are used for serving content, such as RoadRunner, Swoole or bref by decoupling the application from the global state.

Closing Keynote - A Dynamic Frontend with Twig & Zero JavaScript? Say Hello to…

The closing keynote was presented by Ryan Weaver. Ryan introduced a new way of reusing Twig components for a symfony application. The component component is still in an early stage, but looks very pro

Twig Components

He showed a lot of code, and the approach and code examples looked great and were comprehensible. I’m really looking forward for using them, as I needed such things often in the past and mostly used a RenderController approach.