Journal CPU Ex0145 25 ans de PHP

Posté par  (site Web personnel) . Licence CC By‑SA.
Étiquettes :
7
8
oct.
2020

Dans cette release de CPU : signe inférieur, point d'interrogation, “php”, et flute ! j'ai oublié le prologue UTF-8. Nos invités sont Stéphanie Trumtel et Franck Allimant, de l'AFUP Toulouse.

Podcasts, liens documentaires et vos commentaires : http://cpu.pm/0145

Chapitres :

La semaine prochaine : deuxième partie où l'on parlera de PHP 8.

Petit bonus, la blague qui me rend jaloux

  • # quelques remarques

    Posté par  (site Web personnel) . Évalué à 1. Dernière modification le 10/10/20 à 05:00.

    Emission sympathique sur un sujet qui m'intéresse.
    Les deux invités ont davantage l'air d'être des devs Symphony que des devs PHP purs et durs, car :

    • c'est dommage de ne pas connaître le sebang PHP pour les scripts sh : #!/usr/bin/env php (ou #!/usr/bin/php dans la plupart des distribs) et de ne pas en voir l'utilité.

    • dire qu'un dev qui n'utilise pas de debugger est un dev aveugle. Moi j'aurais dit l'inverse : un dev qui a besoin d'un debugger est un dev qui navigue en aveugle dans son code.

    Aparté sur le short_open_tag déclaré "deprecated" : il est loin de disparaître, sauf à entendre hurler dans les chaumières. La base existante est énorme, et la désactivation de cette option sur un site a le malheureux effet secondaire d'afficher sans crier gare le code dans le navigateur (bonjour la sécurité). Comme il n'y a aucun (mais vraiment aucun) intérêt à taper systématiquement trois lettres de plus (<?php au lieu de <?), qu'on nous foute donc la paix avec le short_tag.

    • [^] # Re: quelques remarques

      Posté par  (site Web personnel) . Évalué à 2.

      dire qu'un dev qui n'utilise pas de debugger est un dev aveugle. Moi j'aurais dit l'inverse : un dev qui a besoin d'un debugger est un dev qui navigue en aveugle dans son code.

      Un dev qui n'a jamais eu besoin d'un debugger s'en fout que son programme fonctionne en prod.

      Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

      • [^] # Re: quelques remarques

        Posté par  (site Web personnel) . Évalué à 0.

        Donc ça fait 20 ans que je m'en fous de ce qui tourne en prod, merci de me l'apprendre, haha. Ca va faire plaisir à mes clients.

        Pour préciser ma pensée (et entrer dans ton troll du samedi), je n'ai jamais eu besoin d'un debugger parce que je sais comment se déroule mon programme, quel est le contenu des variables, et ce à tout moment. Un cerveau humain qui émule un interpréteur, pour programmer, c'est quand même pratique, non ?

        Chacun est libre d'utiliser un debugger ou pas, je n'ai pas de problème avec les gens qui en utilisent. Mais dire que celui qui n'en utilise pas est aveugle, c'est l'histoire de la poutre et de l'oeil.

        • [^] # Re: quelques remarques

          Posté par  . Évalué à 4.

          je n'ai jamais eu besoin d'un debugger parce que je sais comment se déroule mon programme, quel est le contenu des variables, et ce à tout moment. Un cerveau humain qui émule un interpréteur, pour programmer, c'est quand même pratique, non ?

          C'est aussi débile que de dire que tu n'as pas besoin d'un debugger parce que tu écris sans bug.

          « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

          • [^] # Re: quelques remarques

            Posté par  (site Web personnel) . Évalué à -2.

            Oui et non, on n'est pas tous pareils, et on ne fait pas tous la même chose.
            Un dev symphony a sans doute davantage besoin d'un debugger qu'un autre.
            Dire qu'un dev qui n'utilise pas de debugger est aveugle, c'est faire fi de la diversité des développeurs et de la diversité des méthodes de développement.

            • [^] # Re: quelques remarques

              Posté par  (site Web personnel) . Évalué à 0.

              Ben dis donc, ça manque singulièrement de tolérance ici… la meute des utilisateurs de debugger se sont sentis attaqués ? Il n'y avait pourtant pas de raison.
              Je pensais que les utilisateurs de Linuxfr, compte-tenu du sujet principal du site, avaient un peu plus d'ouverture d'esprit et de tolérance que les utilisateurs de sites lambda. Mais je me rends compte que finalement la nature humaine engendre les mêmes travers sur tous les forums, blogs, commentaires… quel que soit le sujet.
              Pas grave, hein. Restez donc entre vous, je continuerai à lire (et écouter dans le cas présent) les excellentes dépêches sans intervenir dans les commentaires, c'est mieux pour tout le monde.
              Ad astra.

              • [^] # Re: quelques remarques

                Posté par  (site Web personnel) . Évalué à 4.

                Opinion impopulaire : tous les développeurs ont besoin de débogueurs, mais ils n'ont pas les moyens de les embaucher.

              • [^] # Re: quelques remarques

                Posté par  (site Web personnel) . Évalué à 3.

                Attention, attention, de dangereux individus circulent en ce moment sur linuxfr. Je demande à tous la plus grande prudence.

                Vous les reconnaîtrez à leurs propos incohérents, par exemple:

                • je n'ai pas besoin de debugger, je ne fais jamais de bug ;
                • le cpold est plus efficace qu'un gestionnaire de version ;
                • les frameworks c'est nul, je préfère tout coder moi même.

                Si vous les rencontrez, fuyez et prévenez l'exterminateur le plus proche.

                Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

                • [^] # Re: quelques remarques

                  Posté par  (site Web personnel) . Évalué à 0.

                  Bon allez, je fais l'effort de te répondre une fois de plus ::

                  je n'ai pas besoin de debugger, je ne fais jamais de bug

                  Je n'ai jamais eu besoin d'un outil dédié (un debugger) pour trouver et corriger mes bugs. On parle bien de PHP, hein, c'est bien le sujet de la dépêche. Dans d'autres langages, c'est peut-être différent, j'en sais rien, vu que je ne code qu'en PHP (sauf à appeler javascript un langage).
                  Si tu trouves un endroit où j'ai dit que je ne faisais jamais de bug, tu viens le montrer, faut assumer dans la vie.

                  le cpold est plus efficace qu'un gestionnaire de version

                  Aucune idée de ce qu'est cpold, et j'ai un peu la flemme de chercher là. Et comme on n'a nul part parlé de gestionnaire de version, le gars il dit qu'il ne voit pas le rapport avec la choucroute.

                  les frameworks c'est nul, je préfère tout coder moi même.

                  C'est mon avis, que je partage avec moi-même. Si ça te défrise, tant pis pour toi.
                  Je déteste les frameworks, j'utilise des classes ou libs faites par d'autres, mais avec parcimonie et en regardant comment c'est fait. Oui, je préfère tout coder moi-même, et mes clients ne s'en plaignent pas, au contraire. Tout coder soit même a ses avantages.

                  Comme je le disais, ça manque cruellement de tolérance ici. Utilise donc ton debugger si ça t'aide, mais n'impose pas aux autres ta façon de développer.

                  • [^] # Re: quelques remarques

                    Posté par  (site Web personnel) . Évalué à 4.

                    Aucune idée de ce qu'est cpold, et j'ai un peu la flemme de chercher là.

                    $ cp foo.c foo.c.OLD
                    $ vim foo.c
                    $ make foo
                    $ ./foo
                    BusError, aborted.
                    $ cp foo.c.OLD foo.c
                    $
                    
                    • [^] # Re: quelques remarques

                      Posté par  (site Web personnel) . Évalué à -2.

                      Merci "tonton th" pour cet éclairage. J'aurai plutôt nommé ça cpsav que cpold, je crois qu'on a tous fait ça au moins une fois dans notre vie de dev.

                      "devnewton" est donc bien à côté de la plaque, à généraliser ce que lui pense être de mauvaises pratiques, en tentant d'en glisser une vraie parmi des fausses. Basse pratique assez courante, son debugger a sans doute buggé. Il va encore moinsé, mais finalement rien à battre, ça confirme juste que tous les sites ont leur lot de boulets, quelque soit le sujet.

                      • [^] # Re: quelques remarques

                        Posté par  (site Web personnel) . Évalué à 4.

                        Tu devrais proposer un sondage pour voir quel est l'opinion la plus répandue sur le sujet.

                        Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

                        • [^] # Re: quelques remarques

                          Posté par  (site Web personnel) . Évalué à 0.

                          Voila bien le problème, la majorité a-t-elle toujours raison ? La diversité a-t-elle le droit d'exister ?

                          Parce que la majorité des devs utilisent un debugger, faudrait que ce soit la seule façon de coder ? Tu as une drôle de conception du libre. Et puis je ne vois pas trop pourquoi tu fais tant de prosélytisme. Les devs qui n'utilisent pas de debugger, ça te dérange ? c'est de la jalousie ? un besoin irrépressible que tout le monde fasse comme toi ? Un mesquin sentiment d'être dans la meute du côté des plus forts ? Un bon psy peut sans doute t'aider, tu sais.

                          Un sondage, bof ? Le résultat importe peu, et il ne serait sûrement pas le même pour les devs PHP que pour les devs java.

                          Et pour finir sur le sujet, j'ai longtemps fait du RPG sur AS/400, je n'ai jamais utilisé le debugger sur mes propres programmes, mais je l'utilisais souvent sur les programmes écrits par d'autres (qui n'étaient pas toujours sains d'esprit, et c'est peu dire). Donc tu vois, contrairement à toi, je ne suis pas sectaire, c'est une question d'utilité dans un contexte donné. En PHP, j'ai le bonheur de ne pas avoir à modifier le code des autres, ou très peu, pas besoin de debugger pour mes propres devs, voilà tout.

                          • [^] # Re: quelques remarques

                            Posté par  (site Web personnel) . Évalué à 4.

                            Et puis je ne vois pas trop pourquoi tu fais tant de prosélytisme. Les devs qui n'utilisent pas de debugger, ça te dérange ?

                            Oui quand je dois travailler avec eux :-)

                            Le problème qu'on ne fait que rarement du développement tout seul. Hors quand dans une équipe, Manu le dev-trop-fort-je-debugge-avec-printf ne trouve pas le bug qui bloque tout le projet, c'est Jean Luc qui doit s'y coller. Un coup de xdebug et c'est réglé, mais Jean Luc a perdu sa journée et est en retard sur son vrai boulot.

                            (Histoire inspirée de faits réels, les noms des personnages ont été changés pour protéger les innocents).

                            Le prosélytisme est donc rationnel: en promouvant ma façon de travailler, j'augmente les chances d'avoir des collègues qui bossent comme moi !

                            Note que parfois c'est moi qui me fait imposer un outil : https://linuxfr.org/nodes/100105/comments/1496062

                            Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

                            • [^] # Re: quelques remarques

                              Posté par  (site Web personnel) . Évalué à -3.

                              Donc tu fais du prosélytisme parce que Manu est un bras cassé. Un bras cassé, ça se vire. Rien à voir avec l'obligation d'utiliser un debugger.

                              Le monde du travail impose parfois d'utiliser des outils qu'on déteste, bien souvent Microsoft Windows que, si tu es cohérent, tu devrais utiliser à la place de Linux, vu que la majorité l'utilise. Quoi ? la majorité n'aurait pas toujours raison ?

                              Ici on parle de PHP, et de l'usage d'un debugger. Faudra bien que tu admettes que des gens, dans leur situation sans doute différente de la tienne, de part leur façon de coder, de part leurs capacités, de par leurs habitudes, … n'en ont pas forcément besoin, et ne sont pas aveugles pour autant.

      • [^] # Re: quelques remarques

        Posté par  . Évalué à 0.

        Printf est une technique de debuggage aussi valable qu'une autre.

        Un compromis serait d'injecter des printf via le debugger : Dynamic Printf

  • # Souvenirs

    Posté par  . Évalué à 3.

    Merci pour l'émission.

    J'ai découvert PHP à sa version 3 en 99. Dans un élan de nostalgie, j'ai téléchargé cette version depuis https://www.php.net/releases/index.php .

    Un ./configure && make plus tard j'avais un interpréteur fonctionnel sous une Debian amd64 ! Ne pas oublier de forcer l'utilisation de la locale par défaut pour effectuer les tests si vous utilisez gawk avec LC_ALL=C make test.

    Un simple "Hello, World!" consomme tout de même 600K et on nous demandait de ne pas dépasser le méga parce que la RAM ça coûte cher. On devait aussi tester nos fichiers HTML depuis une disquette pour simuler approximativement les temps d'accès via un modem 56K.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.