La parole est aux speakers : Romain Camp

Publié le

Jusqu’au Forum PHP 2021, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Faites-le en PHP !

Au fil des années et des versions, PHP est devenu un langage performant, complet et robuste. En prenant en compte également l’écosystème, pourquoi ne pas envisager d’utiliser PHP pour des applications qui lui semblaient interdites ?

Qui sait écrire des boucles en Bash ? Comment gère-t-on les erreurs des crons ? Comment faire de l’héritage en Python ? Comment écrire des tests unitaires pour Javascript ? etc.

Et si nous arrêtions de nous poser ces questions et que nous utilisions tout ce que propose le langage que nous connaissons ?

Nous pointerons les bénéfices d’utiliser PHP par des devs PHP (maintenabilité, rapidité, partage de connaissance, performance, robustesse…) et nous explorerons des exemples d’utilisation qui semblaient autrefois non standards (scripts, serveurs…).

Grace Hopper / Orly
21/10/2021
10:15-10:55

Tu vas nous parler de l’utilisation de PHP dans ces cas où il est généralement peu utilisé : comment t’est venue l’idée de cette conférence ?

Lorsque je discute avec d’autres devs, j’aime challenger les idées et les propositions. L’objectif est évidemment de savoir si le besoin et la solution envisagée concordent ou s’il n’y a pas une solution plus adaptée, quitte à sortir des sentiers battus.
Il en est de même lorsque je lis un article ou que je suis une conférence, je pense qu’il est judicieux de prendre un peu de recul et de se demander quel est le contexte. On sait qu’en développement il n’existe pas de solution parfaite dans toutes les situations, et qu’il va falloir s’adapter au contexte.
Par exemple, on va trouver sur internet des tonnes d’articles qui diront que PHP est un langage limité, ou qu’il manque telle ou telle fonctionnalité, ou pas adapté à tel cas d’utilisation. La question à se poser pourrait être « quand a été écrit cet article », « quelle version de PHP », « nouvelles libs depuis », etc. Lorsqu’on creuse dans la doc officielle de PHP, on découvre un tas de possibilités méconnues (et sous-exploitées), et en lisant les changelogs on remarque les améliorations apportées à chaque version.
Un autre exemple va être lorsqu’on va tomber sur un outil qui pourrait répondre à une problématique, mais dans un langage différent (« au hasard » à base de JS, de Go, de Ruby ou de Python). Avant de foncer dans cette direction, il faudrait se demander si on a les compétences pour maintenir ensuite la solution, s’il est judicieux d’investir maintenant dans cet apprentissage, si les bénéfices par rapport à une solution en PHP (en partant du principe que c’est le langage qu’on maitrise évidemment) sont réels (ex. idée reçue sur la performance, sur les possibilités, réel besoin de ci ou ça…). On se rend vite compte soit qu’on n’a souvent pas besoin de sortir l’artillerie lourde et qu’on peut garder en maîtrise, soit qu’il faut effectivement envisager une solution autre, mais en toute connaissance de cause !

Dans ton abstract tu parles de scripts, de serveurs, etc. Est-ce que ce sont tes retours d’expérience de ton quotidien de développeur ?

Tout à fait ! Lorsqu’on bosse sur des projets backend, notamment sous forte charge, on en vient à des besoins « temps réel », avec des scripts et des daemons. Les premières recherches naïves sur internet nous attirent vers des solutions qui font rêver, mais en creusant ce n’est pas toujours aussi merveilleux. Et en creusant un peu plus, on se rend compte que PHP et son écosystème proposent des solutions qui répondent à nos besoins, qu’on peut comprendre, qu’on peut tester, corriger au besoin, qu’on ne va pas bêtement suivre un tuto, etc.
En tant que développeur, on travaille aussi au quotidien avec des outils pour vérifier notre code, pour construire nos livraisons, pour déployer éventuellement, pour discuter avec nos collègues, pour gérer notre temps, nos tâches, etc. Et lorsque vous essayez de faire communiquer tous ces outils, il faut du courage ! Alors soit on a le luxe de pouvoir choisir uniquement des produits qui s’adaptent parfaitement entre eux, soit on distribue des casquettes « devops » dans les équipes pour écrire des scripts et des connecteurs ! Et dans ce deuxième cas, n’est-il pas judicieux de choisir un langage déjà maîtrisé par les devs, pour que chacun puisse intervenir et proposer des améliorations…

Vois-tu d’autres champs de possibilités avec PHP que tu aimerais essayer au delà de ta conférence ?

Des exécutables en PHP, autonomes ; avec une interface autre que la console, sans passer par un rendu navigateur. Sûrement qu’il existe déjà des possibilités 😉

Une conférence présentée par

Romain CAMP
Romain CAMP
Développeur PHP depuis un petit moment, Romain aime le langage et toutes les possibilités qu'il offre. Après quelques années à travailler à la modernisation des applications et des process pour un e-commerçant, il accompagne aujourd'hui les entreprises en tant que freelance.

Autres interviews

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation des cookies pour améliorer votre navigation. plus d'infos

1. Qu’est-ce qu’un cookie?

Un Cookie est un petit fichier texte enregistré sur votre terminal (ordinateur, tablette, smartphone, etc.), à l’occasion de la consultation d’un service en ligne grâce à votre logiciel de navigation. Il permet à son émetteur d’identifier le terminal dans lequel il est enregistré, pendant la durée de validité ou d’enregistrement du Cookie. Lors de la consultation de notre site Internet, des informations relatives à la navigation de votre terminal sont susceptibles d'être enregistrées dans ces fichiers dits "Cookies". Ces derniers sont installés sur votre terminal, sous réserve des choix que vous auriez exprimés concernant les Cookies et que vous pouvez modifier à tout moment.

2. A quoi servent les cookies émis sur notre site ?

Seul l’émetteur d’un cookie est susceptible de lire ou de modifier les informations qui y sont contenues.
Les cookies utilisés sur notre site permettent :

3. Vos choix concernant les cookies

Vous disposez de différents moyens pour gérer les cookies. Tout paramétrage que vous pouvez entreprendre sera susceptible de modifier votre navigation sur notre site et sur Internet en général et vos conditions d'accès à certains services de notre site nécessitant l'utilisation de cookies. Vous pouvez à tout moment exprimer et modifier vos souhaits en matière de cookies, par les moyens décrits ci-dessous. L'accord sur les cookies L'enregistrement d'un cookie dans un terminal est essentiellement subordonné à la volonté de l'utilisateur du terminal, que celui-ci peut exprimer et modifier à tout moment et gratuitement à travers les choix qui lui sont offerts par son logiciel de navigation. Si vous avez accepté dans votre logiciel de navigation l'enregistrement de cookies dans votre terminal, les cookies intégrés dans les pages et contenus que vous avez consultés pourront être stockés temporairement dans un espace dédié de votre terminal. Ils y seront lisibles uniquement par leur émetteur.

Le refus des cookies Si vous refusez l'enregistrement de cookies dans votre terminal, ou si vous supprimez ceux qui y sont enregistrés, vous ne pourrez plus bénéficier d'un certain nombre de fonctionnalités qui sont néanmoins nécessaires pour naviguer dans certains espaces de notre site. Tel serait le cas si vous tentiez d'accéder à votre compte ou à votre abonnement qui nécessite de vous identifier. Tel serait également le cas lorsque nous, ou nos prestataires, ne pourrions pas reconnaître, à des fins de compatibilité technique, le type de navigateur utilisé par votre terminal, ses paramètres de langue et d'affichage ou le pays depuis lequel votre terminal semble connecté à Internet. Le cas échéant, nous déclinons toute responsabilité pour les conséquences liées au fonctionnement dégradé de nos services résultant de l'impossibilité pour nous d'enregistrer ou de consulter les cookies nécessaires à leur fonctionnement et que vous auriez refusés ou supprimés. Les choix offerts par votre logiciel de navigation Vous pouvez configurer votre logiciel de navigation de manière à ce que des cookies soient enregistrés dans votre terminal ou, au contraire, qu'ils soient rejetés, soit systématiquement, soit selon leur émetteur. Vous pouvez également configurer votre logiciel de navigation de manière à ce que l'acceptation ou le refus des cookies vous soient proposés ponctuellement, avant qu'un cookie soit susceptible d'être enregistré dans votre terminal. Pour la gestion des cookies et de vos choix, la configuration de chaque navigateur est différente. Elle est décrite dans le menu d'aide de votre navigateur, qui vous permettra de savoir de quelle manière modifier vos souhaits en matière de cookies. Selon votre navigateur, consultez le lien ci-dessous pour configurer votre navigateur et refuser les cookies :