Notre blog
Nous partageons nos découvertes, nos retours d’expérience et plus généralement nos bonnes pratiques, dans l’objectif de diffuser la connaissance à tous.
Ce blog technique est le fruit de notre veille constante sur les technologies que nous employons.
A Journey to find a memory leak
In this article, I will cover my journey to find and fix a memory leak in a PHP application. The final patch is simple, but only the journey is important, right? Introduction In our application, we had a worker that consumed a lot of RAM. After 10 seconds, the consumption reached…
Améliorer la DX de vos Fixtures PHP
Les fixtures sont utilisées pour charger des données définies par les développeurs dans une base de données. Elles sont très utiles en environnement de développement car elles permettent d’avoir une application avec plusieurs jeux de données qui correspondent à ce qu’il se passe…
Lire la suite de l’article Améliorer la DX de vos Fixtures PHP
Ce que vous devez savoir sur les Attributes de PHP 8
Une RFC très importante vient d’être acceptée et va changer le futur de PHP. Dans cet article, nous allons parler des Attributes. Si vous travaillez avec PHP, cela vous concerne ! Mise à jour du 2 Juillet 2020 ⚠️ : Cet article présente la syntaxe initiale <<>> mais depuis…
Lire la suite de l’article Ce que vous devez savoir sur les Attributes de PHP 8
Symfony Messenger et l’interopérabilité
Le composant Messenger a été mergé dans Symfony 4.1, sorti en mai 2018. Il ajoute une couche d’abstraction entre un producteur de données (publisher) et son consommateur de données (consumer). Symfony est ainsi capable d’envoyer des messages (la donnée) dans un bus, le plus souvent…
Lire la suite de l’article Symfony Messenger et l’interopérabilité
Une introduction au cloud et aux lambdas en PHP
En cette période de confinement, je vous propose de vous évader quelques instants et de partir à la découverte du monde merveilleux du cloud et de démystifier l’utilisation des fonctions en tant que service, notamment grâce aux lambdas d’Amazon. Parce que même si, aujourd’hui, tous…
Lire la suite de l’article Une introduction au cloud et aux lambdas en PHP
What libsodium can do for you? An Introduction to Cryptography in PHP
(Read the 🇫🇷 version here) Cryptography or cryptology is the practice and study of techniques for secure communication in the presence of third parties called adversaries. More generally, cryptography is about constructing and analyzing protocols that prevent third parties or the…
Lire la suite de l’article What libsodium can do for you? An Introduction to Cryptography in PHP
Jane v5.3: Performances, Authentication & OpenAPI 2!
Two months after v5.2 and four months after v5.0, we are releasing v5.3 with focus on three things: Performance Before, generating a really big OpenAPI schema was very long. We even had issues where the generation took more than 40 minutes! Thanks to @lyrixx & @bastnic who took…
Lire la suite de l’article Jane v5.3: Performances, Authentication & OpenAPI 2!
Battle log: a deep dive in Symfony stack in search of optimizations 2/n
This article is the second in a series that explains what we learned and how we discovered new performance improvements. It’s focused on the dev environment. The first article guides us through multiple new optimizations for the prod environment. You should definitely read it first.…
Lire la suite de l’article Battle log: a deep dive in Symfony stack in search of optimizations 2/n
Battle log: a deep dive in Symfony stack in search of optimizations 1/n
My team and I are working on a big project that is becoming bigger and bigger. Split in micro services, each end-user call generates an increasing number of HTTP API calls. Performance was becoming a problem and the Developer eXperience (DX) suffered as a result. Note that we already…
Lire la suite de l’article Battle log: a deep dive in Symfony stack in search of optimizations 1/n
Introducing Docker Starter 2.0
For this first article of the year 2020 on our blog, we wanted to wish you all the best for this coming year! ✨ Six months ago we released our docker-starter. This is a starter-kit for our projects based on Docker, PHP and Nginx. Since then, we have enhanced the project a lot. Here…
UUID generation in PHP
We have been using UUID for years and different ways to generate UUID exist. I prefer the PECL extension over the ramsey/uuid because it’s simpler and more straightforward. Few weeks ago, with Nicolas Grekas we had the idea to port the PECL extension to plain PHP as a Symfony Polyfill.…
PHP 7.4 FFI: What you need to know
(🇫🇷 Lire la version en Français ici) PHP Foreign Function Interface, or FFI for fans, is a PHP extension that allows you to include with ease some externals libraries into your PHP code. That means it’s possible to use C, Go, Rust, etc. shared library directly in PHP without writing…
Lire la suite de l’article PHP 7.4 FFI: What you need to know
PHP 7.4 et FFI, ce qu’il faut retenir
(🇬🇧 Read the english version here) PHP Foreign Function Interface, ou PHP FFI pour les intimes, ou FFI pour les fans, est une extension PHP qui permet d’inclure facilement des bibliothèques externes au sein de PHP. Autrement dit, il est possible d’utiliser directement des librairies…
Lire la suite de l’article PHP 7.4 et FFI, ce qu’il faut retenir
Libsodium pour les nuls, ou la cryptographie en PHP
(Read the 🇬🇧 version here) La cryptographie, plus communément appelé crypto, est une des disciplines de la cryptologie s’attachant à protéger des messages (assurant confidentialité, authenticité et intégrité) en s’aidant souvent de secrets ou clés. via wikipedia Avez-vous déjà eu…
Lire la suite de l’article Libsodium pour les nuls, ou la cryptographie en PHP
How to visualize Symfony logs in dev with Elasticsearch and Kibana
Symfony comes with Monolog and some extension like easy-log-handler that writes logs in a fancier format in var/log/dev.log. But if you are building a complex application, many API endpoints can be hit at the same time, many workers can run at the same time, … and so, finding something…
Lire la suite de l’article How to visualize Symfony logs in dev with Elasticsearch and Kibana
Jane 5.0 has been released! 🍾
Jane is a set of libraries to generate models & API clients based on OpenApi specs. It will generate everything you need to use your API such as endpoints and related exceptions if needed. As a reminder, OpenApi Specification is an API description format or API definition language.…
Ce que nous retenons du Forum PHP 2019
À l’occasion de sa 13e édition, l’équipe de JoliCode s’est à nouveau rendue au Forum PHP pour deux jours de partage, de conférences, de veille technique et de papotage ! Comme chaque année, l’équipe de l’AFUP a fait un travail de sélection et d’organisation qui force l’admiration.…
Lire la suite de l’article Ce que nous retenons du Forum PHP 2019
Dites-nous tout !
Un de nos articles vous a aidé dans votre travail et vous voulez nous remercier ?
Vous avez trouvé une typo ou une erreur ?
N’hésitez pas à nous le faire savoir
en nous envoyant un message