SensioLabs speakers at the SymfonyLive Online French Edition

· Jules Daunay · 3 minutes to read
SensioLabs-speakers-at-the-SymfonyLive-Online-French-Edition-2021

The SymfonyLive Online French Edition 2021 happened on April 9th in a new online format. Two SensioLabs developers, Laurent Voullemier and Guillaume Loulier, were speakers. They tell us about their talks and their experience.

SensioLabs Team Talks at SymfonyLive Online

On April 9th, two SensioLabs developers shared their technical expertise at the SymfonyLive Online French Edition 2021. We had Guillaume Loulier speak about “Cypress, the modern E2E must still learn from the past.” and Laurent Voullemier on “Deep Dive into the Form Component.” Let’s have a quick look at their presentations.

Guillaume Loulier: “Cypress, the Modern E2E Must Still Learn from the Past.”

Guillaume talked about Cypress, a framework becoming increasingly popular. His talk started with a presentation of Cypress, an E2E-oriented framework available via Yam NPM and Docker. Cypress offers a familiar, simple, and intuitive syntax with shortcuts to speed up the writing process.

Then, he compared Cypress to its competitors such as Behat or Panther. The framework does not offer a bridge/bundle with Symfony for the moment and no support for Selenium compared to Panther.

Guillaume presented the pitfalls to avoid. For example, despite its apparent simplicity, Cypress cannot simplify all tests. Debugging errors is not always easy. He also discussed the pros and cons of Cypress: how to use it daily to prevent mistakes of the past. Finally, Guillaume gave us his advice on how to use Cypress, and his recommendations about this framework:

His advice:

Writing tests outside the application makes them more resilient and scalable.

Cross-browser testing should become the norm.

Like Symfony, Cypress could offer native extensions for current frameworks/libraries.

In which cases does he recommend this framework?

To produce resilient tests, which are fast and adapted to the latest front-end evolutions.

If you want to handle multiple browsers, network requests, and the latest client-side developments.

If you are not afraid of JS, to maintain your tests and optimize your CI.

Laurent Voullemier: “Deep Dive into the Form Component”

Laurent talked about the Form component in his talk, especially what happens when you submit a request dealing with a form. His talk started with the creation of a form. Then he zoomed into the FormFactory class and its six methods that all instantiate a form. He also focused on the ResolvedFormType, which encapsulates the inheritance logic in the Form component.

Then, he addressed the initialization of the form data and its submission. At this stage, the phenomenon of recursion is omnipresent: the component is based on the composite pattern. Laurent went on to discuss two essential mechanisms for form submission: DataTransformer and DataMapper. These two associated concepts can transform a data model object into a displayable representation in the shape of an HTML form.

To conclude his talk, Laurent presented two other concepts of the component. These are the extensions to add complete functionality to the component (validation, CSRF security…) and the Guessers to guess the type of a form field from the metadata (Doctrine, validation, or other) of the object it represents.

Mathias Arlaud: “An Adapted Serialization with API Platform”

Mathias is a recent SensioLabs Alumni. He presented at SymfonyLive Online a talk about API Platform. API Platform is a REST/GraphQL framework based on Symfony. API Platform works with the serialization/deserialization process, i.e. the process of transforming objects into a persistent format and vice versa.

Mathias explained to us that there is a heavy dependency between API Platform and Symfony’s Serializer components. Thanks to it, we benefit from a multitude of technical solutions to serialize an object. Many tools such as DataTransformers or DTP can meet specific needs. Some of them can be less complex while others are more powerful. But how to choose a technical solution matching our needs? Some of the solutions have been presented to us during this talk. But also three levers in API Platform to boost serialization:

The ContextBuilder: when serialization depends on a state and/or a Request.

The Resource Metadata Factory: when serialization only depends on the resource independently from its values.

Serializer and/or DTO: acting here directly on data to serialize and not on its groups.

Finally, Mathias presented the new features of API Platform version 2.6 released at the end of 2020.

A Successful First Speaker Experience at SymfonyLive Online

For both Laurent and Guillaume, speaking at a SymfonyLive conference was a first-time experience! Besides, with the switch to SymfonyLive Online, the format of the talks has evolved this year. To prevent technical issues, all talks are pre-recorded beforehand and then streamed during the conference. Speakers answer questions in the chat room while the recording is playing. They then discuss for a few minutes live with the participants at the end of their speech. For more details about the SymfonyLive Online French Edition 2021, please read our blog post at this link.

Guillaume and Laurent have been selected among several developers on their choice of topics. They should interest the Symfony developer community. Laurent decided to focus on the Form component because we often see it as a black box. “I studied it to prepare the certification, and it inspired me to dive into it.” Guillaume chose to talk about Cypress, a framework he had already used for a project at SensioLabs.

Guillaume and Laurent’s talks went very well. The stress level decreased with the ability to pre-record and redo new shots. It is not the same experience as speaking in public on a stage. But this new format requires a lot of preparation time to perform several attempts and perfect your subtitles.

This double premiere was a success for both Guillaume and Laurent. They both appreciated the opportunity to speak at the SymfonyLive. They are ready to repeat the experience. This time maybe at a physical event!

Tips for Presenting a Talk at a SymfonyLive Online Conference:

Laurent: “I would say: close your eyes and jump. Stress is natural, even for the most experienced speakers. Our challenge is to successfully manage it, so it doesn't show”.

Guillaume: “I think that the hardest part is to start and propose an idea for a talk. You have to be able to synthesize and sell your talk in the Call for Papers with a good summary of your topic.”

A big thank you to Laurent and Guillaume for their stories and their helpful advice. And congratulations to them and to Mathias for their excellent talks 👏 We hope to see you soon at the next Symfony conference!

And remember that you can replay all the conferences you missed on live.symfony.com with your voucher.

This might also interest you

The SensioLabs team celebrating the 20th anniversary of Symfony with balloons
Jules Daunay

The Story Continues: SensioLabs Celebrates Symfony's 20th Anniversary

Time flies, especially when you're busy shaping the future of development! The SensioLabs team has just reached a milestone with the anniversary of the Symfony framework. We marked the occasion at the office, but the party isn't over yet. The date is already set for an XXL celebration at SymfonyCon Amsterdam 2025, from November 27 to 28.

Read more
PHP 8.5 URI extension
Oskar Stark

PHP 8.5's New URI Extension: A Game-Changer for URL Parsing

PHP 8.5 introduces a powerful new URI extension that modernizes URL handling. With support for both RFC 3986 and WHATWG standards, the new Uri class provides immutable objects, fluent interfaces, and proper validation - addressing all the limitations of the legacy parse_url() function. This guide shows practical before/after examples and explains when to use each standard.

Read more
3 dog heads
Mathieu Santostefano

Bring Your Own HTTP client

Break free from rigid dependencies in your PHP SDKs. Learn how to use PSR-7, PSR-17, and PSR-18 standards along with php-http/discovery to allow users to bring their favorite HTTP client, whether it's Guzzle, Symfony HttpClient, or another. A must-read for PHP and Symfony developers.

Read more
Blue sign on a building with several Now What? letters
Thibaut Chieux

How To Prioritize Messages When Building Asynchronous Applications With Symfony Messenger

Asynchronous processing offers benefits like decoupled processes and faster response times, but managing message priorities can become a challenge. When dealing with tasks ranging from password resets to complex exports, ensuring timely delivery of critical messages is essential. This article explores common asynchronous processing issues and provides solutions using Symfony Messenger, allowing you to optimize your application without extensive refactoring.

Read more
SensioLabs University Courses announcing the new level 3 Master training course now available
Jules Daunay

Master Symfony: Unlock Expert Skills with Our Training

Take your Symfony proficiency from good to great with the new Level 3 training course at SensioLabs! Master complex topics, optimize performance, and become a Symfony expert.

Read more
Two images: on the left many cars stuck in a traffic jam with the sign "All directions" above, on the right a blue car moving forward alone on the highway with the sign "Service Subscriber" and a Symfony logo above
Steven Renaux

Symfony Lazy Services with Style: Boost DX using Service Subscribers

Boost your Symfony app's performance and developer experience! Learn how to use Service Subscribers and traits for lazy service loading to reduce eager instantiation, simplify dependencies, and create modular, maintainable code.

Read more
Poster of Guillaume Loulier presentation
Salsabile El-Khatouri

A Symfony Training at SensioLabs: Behind The Scenes

What does Symfony training at SensioLabs look like? Find out in this interview with Guillaume Loulier, a passionate developer and trainer, who tells us all about the official Symfony training courses.

Read more
Toy factory production line
Silas Joisten

Supercharging Symfony Testing with Zenstruck Foundry

Zenstruck Foundry has revolutionized the way we write tests in Symfony. In this post, you’ll learn how expressive factories, isolated test data, and a smoother developer experience helped us streamline our testing workflow and boost productivity.

Read more
Image