AFUP AFUP Day 2024 Baromètre Planète PHP PUFA
planete-php.fr Articles Blogs Infos RSS Feed Atom Feed Twitter

Articles

Comment écrire une règle Rector

Jolicode 21/02/2024

Afin de mettre à jour Symfony sur l’application d'un client, nous avons dû corriger quelques usages de Doctrine au préalable. Il y a quelques années de cela, il était commun d'écrire ce genre de code dans un contrôleur :


$order = $this->getDoctrine()->getRepository('App:Order')->find($id);

La syntaxe <Namespace>:<EntityName> étant dépréciée, il faut mettre à jour en utilisant la syntaxe FQCN.


use App\Entity\Order;

$order = $this->getDoctrine()->getRepository(Order::class)->find($id);

A travers cet article, nous verrons comment créer une règle custom Rector, qui répondra à ce besoin.


Mais quitte à écrire une règle, ne pouvons-nous pas corriger le code ci-dessus pour qu'il ne transgresse pas la loi de Demeter ?


use App\Repository\OrderRepository;

class OrderController
{
public function __construct(
private readonly OrderRepository $orderRepository,
) {
}

public function show(string $id)
{
$order = $this->orderRepository->find($id);
//...
}

}

Mise en place de rector


À JoliCode, nous n'aimons pas ajouter les outils directement aux applications Symfony :


  • Ils peuvent mettre en conflit certaines dépendances ;

  • Ils alourdissent le projet ;

  • Pour des projets avec plusieurs applications (micro ou macro services), il faut installer N fois les outils ;

  • "Ce n'est pas bien rangé".

Nous avons l'habitude de les mettre dans le dossier tools/<outils> :


tools
├─ rector
│ ├─ composer.json
│ └─ composer.lock
├─ phpstan
│ ├─ composer.json
│ └─ composer.lock
└─ php-cs-fixer
├─ composer.json
└─ composer.lock

Dans le dossier tools/rector, nous avons le fichier composer.json suivant :


{
"type": "project",
"license": "proprietary",
"require": {
"rector/rector": "^1.0.1"
},
"require-dev": {
"phpunit/phpunit": "^9.6.16",
"symfony/var-dumper": "^5.4.35"
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"App\\Tests\\": "tests/"
}
}
}

Vous noterez que nous avons pris un peu d'avance en ajoutant :



  • symfony/var-dumper pour pouvoir utiliser dump() dans les tests et lors du debug ;


  • phpunit/phpunit pour pouvoir tester nos règles ;

  • l'autoloading de notre "application".

Voir la suite

Bloquez votre 13 mars pour le Super Apéro PHP 2024

AFUP 21/02/2024

Depuis 2017, le Super Apéro PHP est le rendez-vous de mars où les antennes AFUP synchronisent leurs montres et proposent une soirée de talks, d'échanges et de rencontres autour de quelques boissons. L'occasion, où qu'on soit en France, de passer un moment avec la communauté et de lever nos verres à l'unison en l'honneur du langage !


Le Super Apéro PHP 2024 se tiendra le soir du mercredi 13 mars : dès 18h30, dans les antennes AFUP participantes, la communauté PHP est invitée à une soirée de talks, un hackathon ou à un gros apéro PHP : quel que soit le programme de la soirée, l'essentiel est de passer un moment avec les devs de la région, de se rencontrer, d'échanger, d'apprendre, et de célébrer le langage qui permet de nous fédérer.


Retrouvez ce que vous proposent les antennes AFUP participantes sur la page du Super Apéro PHP 2024.
Votre antenne AFUP n'affiche encore aucune info ? Pas de panique, un certain nombre est encore en train de travailler sur le programme de la soirée. Votre antenne AFUP ne semble plus donner signe de vie depuis un petit moment ? Et si c'était là le signal vous invitant à la relancer ? Tenez-nous au courant si l'idée vous intéresse !

Nous sponsorisons les événements AFUP en 2024

Stéphane Hulard (CH Studio) 19/02/2024

Cette année encore, nous accompagnons l'AFUP en sponsorisant les événements.


L’article Nous sponsorisons les événements AFUP en 2024 est apparu en premier sur CH Studio - Incubateur d'innovation, conseil et accompagnement.


Passage de l'AFUP à la TVA : qu'est-ce qui change pour la billetterie ?

AFUP 19/02/2024

L'assujettissement à la TVA a un impact sur la billetterie. Le taux de TVA concernant ce sujet est de 10%. Les décisions prises par l'équipe sur la façon dont ce changement impacte les tarifs des places diffèrent selon les événements à venir.


Concernant le prix des places de l'AFUP Day 2024


La billetterie de l'AFUP Day 2024 est à cheval sur deux années : elle a ouvert en octobre 2023 (quand la TVA n’était pas applicable) et reste ouverte en 2024 (quand l'assujettissement à la TVA est désormais appliqué).


Si nous avions appliqué la TVA aux tarifs de billetterie à compter du 1er janvier 2024, le tarif pratiqué dépuis octobre 2023 serait alors devenu le tarif hors-taxe. Les particuliers achetant leur billet après le 1er janvier 2024 auraient donc payé plus que ceux ayant pris leur place en 2023 (les entreprises récupérant la TVA, cet impact était insensible pour elles). Nous ne trouvions pas cette augmentation juste, d’autant plus que nous n’avions pas communiqué en amont sur ce changement.


Nous avons donc décidé que, pour l’AFUP Day 2024, les tarifs pratiqués depuis l'ouverture de la billetterie en 2023 deviendraient le montant TTC en 2024 : l’AFUP prend donc à sa charge l’impact de l'assujettissement à la TVA sur cet événement. Ainsi, les particuliers paient le même montant, qu'ils aient acheté leur billet en 2023 ou qu'ils l'achètent en 2024. Quant aux entreprises, elles y gagnent puisque le tarif devient encore plus attractif pour elles ! Si vous ne l’avez pas fait, prenez vos places pour l’AFUP Day 2024.


Concernant le prix des places du Forum PHP 2024


La billetterie du Forum PHP 2024 ouvrant le 24 mai prochain, nous ne rencontrons pas le problème lié au calendrier. De plus, les finances de l'AFUP ne sont pas en mesure d'éponger l'intégralité des sommes liées à cet assujettissement à la TVA pour le Forum PHP 2024. Il nous a donc semblé essentiel de trouver un compromis juste à la fois pour le budget de l'événement tout comme celui des membres du public, en particulier celles et ceux dont l'entreprise ne couvre pas les frais d'inscription au Forum PHP.


Il a alors été décidé, pour le Forum PHP 2024, de reprendre les tarifs du Forum PHP 2023 et de répercuter la TVA de 10% sur les billets liés aux périodes des tarifs de croisière et des tarifs Late Bird.
Les tarifs Early Bird, qui proposent les billets les moins chers, disponibles entre l'ouverture de la billetterie et la publication du programme (ou jusqu'à écoulement des stocks), étant principalement destinés aux personnes aux plus faibles moyens, ils seront épargnés par la hausse de prix. L'AFUP prend en charge l'augmentation dûe à la TVA sur ces billets : nous visons ainsi à conserver l'esprit communautaire de l'événement et à permettre son accès au plus grand nombre. Le nombre de billets Early Bird disponibles sera également augmenté, afin de faciliter leur accès à notre public.

Voir la suite

Quelques conseils pour optimiser votre environnement de travail sous Linux

Eleven labs 19/02/2024

Dans cet article, je vais partager quelques conseils pour optimiser votre environnement de travail sous Linux. Tout ce que nous allons aborder ici représente des éléments que j'ai personnellement mis en place et que j'utilise quotidiennement.
Nous explorerons la configuration de plusieurs accès SSH, la personnalisation de notre Interface de Ligne de Commande CLI avec bash, et comment abandonner l'utilisation de zsh et Oh My Zsh.


Configuration de plusieurs accès SSH dans votre environnement Linux


Pour ce premier conseil, nous allons nous intéresser à SSH. Il vous est peut-être déjà arrivé d'avoir plusieurs accès SSH avec des informations de connexion différentes telles que l'adresse du serveur, l'utilisateur, les clés privées et publiques, etc.
Et vous avez probablement utilisé SSH en spécifiant toutes les informations de connexion, comme dans l'exemple ci-dessous :


ssh -i path-to-ssh-public-key user@host:port

Si vous avez plusieurs accès à différents serveurs SSH, vous devez probablement faire quelque chose de similaire à ceci :


ssh -i path-to-ssh-public-key-server-1 user-server-1@host-server-1:port-server-1

ssh -i path-to-ssh-public-key-server-2 user-server-2@host-server-2:port-server-2

ssh -i path-to-ssh-public-key-server-3 user-server-3@host-server-3:port-server-3

Si vous êtes un peu paresseux, vous avez peut-être configuré des aliases. C'est bien, mais non optimal !
Nous allons voir comment configurer notre client SSH de manière à simplifier tout cela. Allez, c'est parti !


Tout d'abord, vous allez créer le fichier .ssh/config avec les permissions suivantes : 0600 ou, si vous préférez, - rw- --- ---. Ensuite, vous allez l'éditer avec votre éditeur préféré : vim. ?


Dans ce fichier, nous allons ajouter des blocs de configuration ssh comme suit :


Host <<nom-super-nom-d-host>>
Property value
Property value

Vous voyez, ce n'est pas compliqué du tout ! Prenons un exemple plus concret avec un compte Gitlab auto-hébergé, un compte Gitlab, un compte Github, et deux accès à un serveur virtuel :


Host my-private-gitlab.com
PreferredAuthentications publickey
User git
HostName my-private-gitlab.com
IdentityFile ~/.ssh/id_my-private-gitlab.com

Host github
User git
HostName github.

Voir la suite

Compte-rendu de l'assemblée générale 2024

AFUP 12/02/2024

Bilan moral du bureau 2023-2024


Sébastien Rogier, président 2023-2024, a présenté un tour d'horizon des différents projets, pôles et groupes de travail à l'AFUP, lors de son bilan moral.


État des adhésions


Au moment de l'assemblée générale, l'AFUP compte 613 membres (dont 217 via une entreprise et 65 personnes morales). Par rapport aux années précédentes, ces chiffres reflètent une baisse en 2023 des cotisations des personnes morales en particulier : les entreprises ont moins adhéré à l’AFUP en 2023, ce qui fait également écho à la baisse de participation au Forum PHP 2023, les entreprises profitant souvent du Forum PHP pour renouveler leur adhésion.


État des lieux au sein des antennes AFUP


Depuis la fin du pic de la crise sanitaire, le constat porté sur l’activité au sein des antennes est toujours difficile : avec 53 meetups en 2023, il reste compliqué de relancer la machine et les antennes n’ont toujours pas retrouvé le niveau d’activité connu en 2019, avec plus de 100 meetups/an.

Cependant l’équipe souligne la réactivation de certaines antennes, qui étaient en sommeil depuis quelques années : Toulouse et Rennes par exemple ont repris l’organisation de meetups réguliers.


Du côté du baromètre des salaires en PHP 2023


La onzième enquête du baromètre des salaires en PHP menée par l'AFUP a été un succès, avec un record de participation de 1042 réponses ! Cette édition 2023 a été portée en collaboration avec un nouveau partenaire média, WeLoveDevs.com. La publication des résultats aura lieu en mars prochain, et une nouvelle enquête sera lancée en 2024, sur la base d’un nouveau calendrier afin de mieux correspondre aux périodes d’entretiens annuels au sein des entreprises.


AFUP Day 2023 et préparation de l'AFUP Day 2024


L’AFUP Day 2023 marquait enfin le retour de l’événement à son format multi-destinations : l’événement a été accueilli à Lille et à Lyon, et a accueilli environ 400 participants (246 à Lyon et 159 à Lille). 18 speakers étaient au programme et 17 sponsors ont soutenu l’événement.


L’AFUP Day 2024 sera quant à lui accueilli dans 4 villes : Lille et Lyon renouvellent l’expérience, et deux nouvelles villes, Nancy et Poitiers, s’ajoutent à la liste. Les équipes sont motivées, dynamiques et enthousiastes : l’AFUP Day 2024 Nancy annonce même d’ores et déjà complet !

Une adaptation du pôle antenne a été nécessaire pour permettre de suivre les 4 événements par le pôle antennes. Le fait d’avoir deux équipes plus expérimentées (Lille et Lyon) en parallèle de villes plus novices (Poitiers et Nancy) permet aussi de réguler la charge de travail : les équipes les plus rodées ont peut-être moins besoin d’accompagnement que des équipes découvrant toute l’organisation.


Forum PHP 2023 et 2024


Forum PHP 2023

Le Forum PHP 2023 a été organisé pour la deuxième année consécutive à Disneyland Paris.

Voir la suite

Héberger un projet PHP sans serveur avec WebAssembly

Jolicode 08/02/2024

D'après Wikipedia :



WebAssembly, abrégé wasm, est un standard du World Wide Web pour le développement d’applications. Il est conçu pour remplacer JavaScript avec des performances supérieures. Le standard consiste en un bytecode, sa représentation textuelle et un environnement d'exécution dans un bac à sable compatible avec JavaScript. Il peut être exécuté dans un navigateur Web et en dehors. WebAssembly est standardisé dans le cadre du World Wide Web Consortium.



Ce qu'il ne faut pas retenir, c'est que wasm est conçu pour remplacer JavaScript.


Ce qu'il faut retenir, c'est que WebAssembly est un langage de bas niveau qui est conçu pour être exécuté dans un contexte sécurisé. On le retrouve aussi bien dans un navigateur, que dans des workers @edge (comme chez fastly) ou dans les blockchains/smart contracts. Sa force est sa sandbox qui, par défaut ne permet pas d’interagir avec l'extérieur : pas de réseau, pas de système de fichier, etc.


Il existe cependant une interface WebAssembly System Interface (WASI) qui permet de communiquer avec l'extérieur. C'est dans celle-ci qu'il est possible de définir et configurer les fonctions qui permettent d'interagir avec d’autres systèmes.


Wasm est un langage qui est ensuite exécuté par un Runtime Environment. C'est une machine virtuelle qui va interpréter le bytecode wasm. Ce n'est ni plus ni moins qu'un "Processeur basé sur la pile" (Stack Machine en Anglais).


Mais ne vous méprenez pas, nous n'écrivons jamais du wasm a la main. Nous utilisons des langages de plus haut niveau, comme Rust, C, C++, etc. qui sont ensuite compilés en wasm.


Notre projet en quelques mots


À JoliCode, nous maintenons une librairie qui corrige automatiquement les problèmes de micro-typographie sur les contenus Web. Nous proposons aussi une demo en ligne. Cependant, cette démo est en PHP. Cela veut dire que nous avons besoin d'un cluster Kubernetes avec 80 nodes d'un serveur pour la faire tourner. Cela implique une dépense d'argent, de la maintenance, un serveur allumé en permanence, etc. Nous aimerions donc la migrer en wasm. Reste à savoir si c'est possible !


Le code


Le code à faire tourner dans le navigateur est le suivant :


require '/app/vendor/autoload.php';

use JoliTypo\Fixer;

$fixer = new Fixer('fr');
$fixer->setLocale(['Dash', 'Dimension', /*...*/ 'Unit']);

echo $fixer->fix('Merci de fixer ce texte.');

Rien de spécialement compliqué ?! Sauf qu'il y a quand même un require, et donc des fichiers à charger… (les dépendances Composer).

Voir la suite

Nous rejoindre à l'assemblée générale 2024

AFUP 08/02/2024

Comment nous rejoindre samedi


Option 1 : nous rejoindre sur place


Rendez-vous à la Maison des Associations (MAS) Paris XIIIème, au 10 rue des Terres au Curé en salle Potiron.

Nous vous attendons sur place à partir de 14h30. Pour y accéder en transports en commun : Métro 14 arrêt Olympiades ou Métro 7 arrêt Porte d'Ivry.


Option 2 : suivre l'AG en ligne


Suivez l'AG en ligne, propulsée par LiveStorm à partir de 15h. Le moment venu, rejoignez-nous sur la session accueillant l'AG en cliquant sur ce lien. Une fenêtre de chat vous permettra de discuter avec l'auditoire et de poser vos questions à l'équipe.


Prévoyez les accès à votre espace membre !


Que vous suiviez l'AG en présentiel ou en ligne, tous les votes se dérouleront via votre espace membre. Anticipez la situation et prévoyez vos accès à votre compte !

Dès 15h, connectez-vous à votre espace membre. Cliquez ensuite sur le bouton rose "Assemblée Générale". Les sujets soumis à votre approbation apparaîtront dans cet espace, au fur et à mesure qu'ils seront abordés et l'équipe menant l'assemblée générale vous signalera clairement les appels aux votes.

Vous pourrez voter "OUI" / "NON" / "ABSTENTION" à chaque point soumis au vote des membres.



En attendant samedi, rejoignez-nous sur le Slack Membres AFUP, channel #ag2024 : l'équipe répondra à toutes vos questions. Merci de votre présence lors de ce rendez-vous essentiel de l'association !

Passage de l'AFUP à la TVA : qu'est-ce qui change pour le sponsoring ?

AFUP 05/02/2024

Impact de la TVA sur les tarifs de sponsoring


Les tarifs de sponsoring sont présentés au sein de notre dossier de sponsoring, regroupant toutes les offres de l'année en vue de l'AFUP Day et du Forum PHP. Jusqu'à l'édition 2023 du dossier, les tarifs étaient indiqués sans TVA applicable. Par exemple, un sponsoring de 1000€ était facturé 1000€ sans TVA applicable : il coûtait donc 1000€ à l'entreprise sponsor.

Le dossier de sponsoring 2024 affiche désormais les tarifs hors-taxes. La TVA appliquée sur les sponsoring est de 20%. Ainsi, le même sponsoring de 1000€ est désormais facturé 1000€HT, soit 1200€ TTC. Les entreprises récupérant la TVA, le sponsoring coûte donc toujours bien 1000€ à l'entreprise sponsor.

Pour information, les tarifs de sponsoring ont peu évolué entre l'édition 2023 et l'édition 2024 du dossier, et les évolutions de tarifs s'expliquent principalement par un ajustement des avantages associés et par l'impact de l'inflation sur nos finances. Le passage à la TVA n'a donc absolument aucun impact direct sur les finances des entreprises qui nous soutiennent.

Si vous souhaitez soutenir l'AFUP et profiter d'une visibilité de qualité auprès des professionnel•le•s du monde PHP, demandez notre dossier de sponsoring !


Pourquoi l'AFUP est désormais soumise à la TVA ?


Dans notre objectif de professionnalisation de notre fonctionnement, nous avons pris la décision de changer de cabinet comptable, afin de mieux accompagner notre trésorerie. Lors de ce changement, il nous a été signalé que les associations étaient soumises à la TVA notamment lorsque leur action entre en concurrence avec des actions similaires portées par des entreprises. Il pouvait alors être entendu que nos événements pouvaient entrer en concurrence avec d'autres événéments techniques portés par des entreprises : nous sommes donc soumis à la TVA.


Ces changements liés à la TVA impactent également nos tarifs de cotisation ainsi que les tarifs de billetterie de nos événements. Nous vous avons présenté les changements liés à ce sujet concernant les adhésions dans un précédent article. Nous vous parlerons bientôt de l'impact sur le prix des places à nos événements.

Les places partent vite pour l'AFUP Day 2024

AFUP 01/02/2024

D'ores et déjà complet à Nancy


L'AFUP Day 2024 Nancy, porté par l'AFUP Lorraine, abordait cette première édition en ses terres de manière sereine : une petite jauge d'une soixantaine de places, au sein de l'I.U.T Nancy-Charlemagne, après un peu plus d'un an de retour à l'activité pour cette antenne AFUP de l'Est de la France. Et c'est en fait un raz-de-marée côté billetterie qu'elle a connu depuis la publication du programme début janvier : toutes les places ont trouvé preneurs en quelques semaines, et ce même après avoir poussé les murs pour accueillir une vingtaine de personnes supplémentaires ! Une liste d'attente est désormais ouverte : inscrivez-vous dès maintenant. Si nous apprenons le désistement de certaines personnes pour l'événement, nous contacterons les personnes sur liste d'attente dans l'ordre d'inscription. Bravo à l'AFUP Lorraine pour ce succès fulgurant !


Prenez vos places pour Lille, Lyon et Poitiers


Les places partent également très bien dans les autres villes : si les jauges à Lille et Lyon, dont l'événement est accueilli dans des salles plus grandes, ne soulèvent pas encore d'inquiétude dans l'immédiat sur la disponibilité des tickets, attention cependant à Poitiers où il ne reste qu'une vingtaine de billets disponibles !

Vous l'aurez compris, ne tardez pas trop à réserver vos billets en vue de l'AFUP Day 2024 à Lille, Lyon et Poitiers, le vendredi 24 mai prochain. Ce rassemblement printanier de la communauté PHP s'annonce comme une belle célébration de notre langage et du dynamisme du monde PHP aux quatre coins de France !

Blogs

Infos

Ajouter une source ?

Envoyez un email avec l'URL du site et du flux à planetephpfr AT afup POINT org

Gestion

AFUP