mageekblog - Mot-clé - Ivan Enderlin - CommentairesLe blog personnel de Frédéric Hardy. Au menu, PHP, agilité, FreeBSD, cuisine et photographies.2021-12-02T08:20:54+01:00Frédéric Hardyurn:md5:26874ca5b8cd4cac8d08b0e68e64f63aDotclearL'avenir de PHP vu par Ivan Enderlin - bdelespierreurn:md5:1ecad22760824342af5480500342fe002013-11-12T19:10:32+01:002013-11-13T12:28:19+01:00bdelespierre<p>Un avis intéressant et pourtant nuancé (c'est rare, j'ai plutôt l'habitude d'entendre des zélotes qui évangélisent pour PHP ou leur techno en particulier).</p>
<p>En revanche, je ne suis pas certain que la programmation évènementielle verra un jour le jour en PHP. Il est d'ores et déjà possible de l'émuler avec la PCNTL mais bon... Je crois au contraire que PHP doit se concentrer sur ses points forts plutôt que de tenter de faire de la concurence à Node.</p>L'avenir de PHP vu par Ivan Enderlin - Gugelhupfurn:md5:4fd468bb760c65e1fa688e94093927582013-11-08T11:11:30+01:002013-11-09T16:01:39+01:00Gugelhupf<p>"J’observe également de nouveaux usages de PHP : dans des micro-systèmes, des TV, des téléphones…"<br />
.<br />
Aie aie aie...</p>Mettons fin aux rumeurs, voici les faits #2 - Jérômeurn:md5:4ba952cf167f1d54c16594f493f8fd9b2013-10-11T15:56:23+02:002013-10-11T15:31:39+02:00Jérôme<p>Il y a quand même une chose qui m'échappe... vous vous êtes investis à ce point dans PHP que la seule penser d'apprendre autre chose de plus moderne, mieux pensé, plus efficace vous terrifie ?</p>
<p>Pour moi ça ressemble quand même beaucoup à une mentalité à la : "surtout ne pas essayer quelque-chose d'autre, ça pourrait me plaire".</p>
<p>C'est désolant de voir autant de stagnation. Les gens ne critiquent pas (tous) PHP par plaisir, mais parce qu'ils ne comprennent pas que vous soyez aveugles à ce point. Il ne faut pas voir les attaques comme une critique personnelle mais bel et bien comme une expression d'incompréhension.</p>
<p>Moi perso, je me moque que vous dédiez vos vies au PHP, limite ça m'arrange, ça permet de filtrer rapidement les C.V à l'entrée : "tiens, il fait que du PHP, ça doit être un sacré rétrograde". Mais si vous tenez à votre carrière, mettez vos égos de coté et essayez au moins sérieusement d'autres technos au lieu d'essayer toujours et encore de coller des rustines sur un langage dont les fondations même sont bancales.</p>
<p>Non, PHP ne va pas mourir demain, il va toujours exister, comme le COBOL.</p>À propos de atoum #3 - Amauryurn:md5:b922d8b61c053589502c418bb775f88d2013-05-31T09:40:01+02:002013-05-31T09:33:37+02:00Amaury<p>C'est effectivement la magie des projets libres en action.<br />
Ce sont des collaborations où tout le monde a à y gagner. Renaud a été un partenaire formidable sur le SkrivML, proposant des améliorations et des débuggages, faisant évoluer les choses de manière très constructive. D'un côté il a trouvé un langage de balisage léger qui lui convenait (notamment en apportant certaines innovations par rapport aux autres langages équivalents), de l'autre cela donne − comme tu l'as dit − une formidable vitrine de démonstration des capacités du SkrivML.<br />
C'est génial ! <img src="/themes/default/smilies/smile.png" alt=":-)" class="smiley" /></p>Mettons fin aux rumeurs, voici les faits #2 - exfromthelefturn:md5:95da936f2c068dae08c31611a9d28fe42013-04-14T19:06:16+02:002013-04-14T19:26:20+02:00exfromtheleft<p>@<a href="http://blog.mageekbox.net/?post/2013/04/05/Mettons-fin-aux-rumeurs%2C-voici-les-faits-2#c4983" rel="nofollow">Victor</a> : puis je te poser une question assez simple, connais tu un langage qui est toujours et en toute circonstance le meilleur outil?</p>Mettons fin aux rumeurs, voici les faits #2 - krakjoeurn:md5:7a2a9d84b7498511948ce08687904b032013-04-12T09:58:19+02:002013-04-12T09:41:33+02:00krakjoe<p>That article reads like a baker describing how to build a skyscraper. The author is clueless. The author clearly has no real knowledge of memory management or garbage collection, or any of the other things he has drawn ridiculous conclusions about.</p>
<p>People love to hate on PHP, the number of websites relying on PHP show very clearly that none of these concerns are genuine. PHP cannot be everything to everyone, but it does manage to be everything to about three quarters of the internet, so you have to wonder, what is more likely, that three quarters of the internet are struggling to run their websites, or that the tiny fraction of users complaining about problems which they are not even qualified to talk about are completely and utterly wrong. Programming should give you that most important human ability - being logical, use it, use it all the time, use it especially when faced with nonsense.</p>Mettons fin aux rumeurs, voici les faits #2 - Ludourn:md5:f23ad10270971ee416e5635eecd08ca82013-04-10T01:58:28+02:002013-04-10T08:42:48+02:00Ludo<p>"D'après l'auteur et en résumé, PHP doit mourir", si je ne m'abuse, c'est un jeu de mot que l'auteur reconnait faire lui même dans sa conclusion.<br />
Dans le sens le process php doit s'arrêter: genre die(), le titre est racoleur et l'auteur le souligne, mais il se précise à chaque fois qu'il ne souhaite pas la mort de php.</p>Mettons fin aux rumeurs, voici les faits #2 - mageekguyurn:md5:2ac0d10467f172a3a5db184c7424d5bd2013-04-08T21:59:02+02:002013-04-08T21:00:29+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2013/04/05/Mettons-fin-aux-rumeurs%2C-voici-les-faits-2#c4996" rel="nofollow">Pascal MARTIN</a> : Le plus gros problème posé par la parallélisation, qu'elle passe par des threads ou du fork, c'est qu'il y a finalement assez peu d'algorithme véritablement parallélisable sans problème.</p>Mettons fin aux rumeurs, voici les faits #2 - Pascal MARTINurn:md5:6685d0aa926d385b58393bfb2cc5d2092013-04-08T18:38:47+02:002013-04-08T20:58:51+02:00Pascal MARTIN<p>@Eric de ce que je peux lire sur internals@, je confirme que la version ZTS n'est pas considérée comme "importante", effectivement (historiquement, elle servait surtout sous windows, qui n'est pas une cible prioritaire dans l'esprit de beaucoup ; et même sous windows, ce n'est plus vraiment "la" solution).</p>
<p>Des cas impossibles à reproduire, je veux bien le croire ; déjà en multi-processus (donc sans mémoire partagée), avec jouant avec du cache, des fichiers, et de la base de données, on arrive des fois à s’emmêler les pinceaux...</p>
<p>Mais il doit bien y avoir quelques cas bien spécifiques où jouer avec des threads peut apporter un certain gain (ne serait-ce que niveau perfs, pour jouer des traitements en arrière-plan ou en parallèle) -- à condition de ne pas en abuser, et de savoir ce qu'on fait, bien entendu.</p>Mettons fin aux rumeurs, voici les faits #2 - Ericurn:md5:1effcca6bb6bf3dd26a2dda72c3ab6812013-04-08T16:37:54+02:002013-04-08T16:55:56+02:00Eric<p>@<a href="http://blog.mageekbox.net/?post/2013/04/05/Mettons-fin-aux-rumeurs%2C-voici-les-faits-2#c4993" rel="nofollow">Pascal MARTIN</a> : Ce qui est ennuyeux avec les threads c'est que la version ZTS est assez peu testée et pas du tout prioritaire dans la tête des dev php. On est bien dans la logique une requête/une réponse.</p>
<p>Mais théoriquement le "event driven" permet justement d'éviter d'utiliser les threads. Les retours des autres langages étant que finalement ils sont complexes à mettre en oeuvre, complexe à debugger et génèrent des cas impossible à reproduire (non testables donc).</p>Mettons fin aux rumeurs, voici les faits #2 - Ericurn:md5:7b7d6acf9d3d392dd6f0da3dadb5ad242013-04-08T16:06:42+02:002013-04-08T16:55:56+02:00Eric<p>@<a href="http://blog.mageekbox.net/?post/2013/04/05/Mettons-fin-aux-rumeurs%2C-voici-les-faits-2#c4980" rel="nofollow">mageekguy</a> : Humm ceci dit Photon n'a pas l'air ultra maintenu non plus</p>Mettons fin aux rumeurs, voici les faits #2 - Pascal MARTINurn:md5:7a2b34a88e98d29a5e255d760a2ecaa72013-04-08T13:40:43+02:002013-04-08T12:54:59+02:00Pascal MARTIN<p>@Paul pour ce qui est des threads, tu as l'extension pthreads qui pourrait répondre.<br />
Cf <a href="https://github.com/krakjoe/pthreads" title="https://github.com/krakjoe/pthreads" rel="nofollow">https://github.com/krakjoe/pthreads</a> et <a href="http://fr2.php.net/pthreads" title="http://fr2.php.net/pthreads" rel="nofollow">http://fr2.php.net/pthreads</a></p>
<p>Par contre, j'admet, ce n'est pas fourni "de base" (et ça ne le sera probablement jamais : ce n'est pas "la logique" de PHP, et ne répond à un besoin que seuls peu d'utilisateurs ont) ; et ça demande de recompiler PHP en activant ZTS.</p>Mettons fin aux rumeurs, voici les faits #2 - Paulurn:md5:7ab6f8d9731d1a928c9119e90b5bbb212013-04-08T09:16:37+02:002013-04-08T09:53:50+02:00Paul<p>J'ai plusieurs démons qui tourne et je n'utilise que les fonctions standard et je n'ai jamais constaté de fuite mémoire.</p>
<p>Par contre, ce qui est beaucoup plus bloquant pour faire des demons c'est l'inexistence des "thread". Et même si souvent lancer un autre processus permet de palier à ce problème, partager une ressource (connection BD) et souvent un enorme casse tête voir impossible.</p>
<p>J'espère qu'un jour PHP aura une vrai gestion des exceptions comme python/java et un vrai système de "thread".</p>
<p>J'y crois <img src="/themes/default/smilies/smile.png" alt=":)" class="smiley" /></p>Mettons fin aux rumeurs, voici les faits #2 - Guillaume Dievarturn:md5:7bac55f82512f52be334c652298e84f52013-04-05T18:26:24+02:002013-04-05T19:40:38+02:00Guillaume Dievart<p>Pour ma part je développe depuis peu des démons PHP pour de la téléphonie, et je ne peux que confirmer que ça tourne très bien, et pendant plusieurs mois sans memleak</p>Mettons fin aux rumeurs, voici les faits #2 - Victorurn:md5:9b974fbc23ab3df3c0cd4455c52316062013-04-05T16:42:33+02:002013-04-05T19:40:11+02:00Victor<p>C'est pas la peine de s'énerver comme ça !</p>
<p>J'ai pas du tout la même lecture de l'article "PHP is meant to die" que toi et pour une fois je trouve que c'est un article plutôt bien argumenté.</p>
<p>C'est plutôt ta réponse qui manque d'arguments, tu parles beaucoup de démons mais pas de l'asynchrone dans le sens où l'entend l'auteur. Je pense qu'il parle de la prog event-driven comme ReactPHP (<a href="http://reactphp.org/" title="http://reactphp.org/" rel="nofollow">http://reactphp.org/</a>) qui existent dans beaucoup d'autres langagues depuis bien longtemps (et même depuis bien avant Node qui est très hype ajd'hui).</p>
<p>Il me semble que l'auteur veut dire que PHP n'est pas toujours le meilleur outil (cf la prez "Don't use a screw when you need a nail" - <a href="http://www.slideshare.net/skoop/dont-use-a-screw-when-you-need-a-nail-symfony-live-paris-2011" title="http://www.slideshare.net/skoop/dont-use-a-screw-when-you-need-a-nail-symfony-live-paris-2011" rel="nofollow">http://www.slideshare.net/skoop/don...</a>) et c'est la vraie vérité.</p>
<p>L'auteur reconnaît aussi que la situation c'est ameliorée: "Maybe there’s people that think that a more services-oriented architecture may help to overcome PHP’s limitations. Maybe there’s people that can argue that PHP 5.4 or PHP 5.5 are a lot better, and that the language is slowly improving.".</p>
<p>En conclusion je pense qu'il y a pas mal de choses a retirer de cet article pour l'évolution de PHP et qu'il est aussi vrai que si PHP ne sait pas s'adapter rapidement, il ne sera simplement plus dans la course pour les nouveaux usages du web et il va forcément perdre en vitesse.</p>Mettons fin aux rumeurs, voici les faits #2 - mnapoliurn:md5:d452ce16321eec8054b3015abbf4c55f2013-04-05T15:50:56+02:002013-04-05T15:06:39+02:00mnapoli<p>Je tiens à dire que je suis tout à fait d'accord avec toi, j'ai déjà fait tourner des démons en vanilla PHP ou appuyé sur Beanstalkd ou Gearman et ça marche très bien.</p>
<p>Je dirais même que 95% des possibles problèmes sont anticipés avec Supervisor qui se chargera de relancer notre démo immédiatement au cas où celui-ci se crashe. Et je n'ai jamais vu un démon crasher pour une raison qui n'était pas lié à un bug de mon code.</p>Mettons fin aux rumeurs, voici les faits #2 - Amaury Bouchardurn:md5:2a7504f7c85967df6d7e52b880666c462013-04-05T15:41:49+02:002013-04-05T14:44:53+02:00Amaury Bouchard<p>Tout à fait d'accord avec toi, évidemment ! <img src="/themes/default/smilies/smile.png" alt=":-)" class="smiley" /></p>Mettons fin aux rumeurs, voici les faits #2 - mageekguyurn:md5:b181071e0289fae6839de15b7f16b2ac2013-04-05T15:31:51+02:002013-04-05T14:32:15+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2013/04/05/Mettons-fin-aux-rumeurs%2C-voici-les-faits-2#c4978" rel="nofollow">Laurentj</a> : Exact, avec en plus du øMQ derrière pour s'amuser encore plus…</p>Mettons fin aux rumeurs, voici les faits #2 - Laurentjurn:md5:2370ebd4d4f386e54091032efd2bb82a2013-04-05T15:09:34+02:002013-04-05T14:31:14+02:00Laurentj<p>Il y a aussi le projet Photon, qui, s'y j'ai bien compris reste lui aussi en mémoire en permanence <a href="http://www.photon-project.com/" title="http://www.photon-project.com/" rel="nofollow">http://www.photon-project.com/</a></p>Le forum PHP 2012, c'est terminé ! - mageekguyurn:md5:401cbaf36d0edcfe4c058de2f311b9812012-06-11T10:36:36+02:002012-06-11T09:37:04+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2012/06/08/Le-forum-PHP-2012%2C-c-est-termin%C3%A9-%21#c3937" rel="nofollow">MaitrePylos</a> : ça va se faire, mais pas tout de suite, il y a des choses à terminer avant.</p>