Aller au contenu | Aller au menu | Aller à la recherche

mardi 24 janvier 2012

Statistiques de versions de PHP - janvier 2012

Il y a quelques mois, j’avais publié un article présentant des statistiques de déploiement des différentes versions de PHP : Statistiques de versions de PHP - septembre 2011.

Aujourd’hui, alors qu’environ quatre mois se sont écoulés et que la sortie de PHP 5.4 est imminente (les données présentées dans cet articles ont été collectées entre vendredi 20 et dimanche 22 janvier 2011 — après la sortie de la Release Candidate 6, qui est censée être la dernière pour PHP 5.4), voici une mise à jour de ces statistiques.

Sommaire :


Quelques mots sur la méthode

Pour faire simple, j’ai récupéré une liste de plus de 7.7 millions de noms de domaines, issus principalement :

  • Du top 1 million d’Alexa (chargé plusieurs fois à quelques semaines d’écart, ce qui donne plus de 1 million de noms de domaines),
  • Du top 1 million de Quantcast,
  • Des liens externes de wikipedia de plusieurs langues (environ 3 millions de noms de domaines),
  • De l’export mis à disposition par l’Export Open Directory (environ 2 millions de noms de domaines — dont beaucoup de vieux sites, pour autant que je puisse en juger),
  • Et de quelques résultats de recherche google (quelques milliers de noms de domaines).

Ensuite, pour chacun de ces noms de domaines, j’ai effectué une requête HTTP HEAD sur domaine.tld, en me rabattant sur www.domaine.tld si la première requête échouait.

Après cela, je me suis généralement1 basé sur l’en-tête HTTP X-Powered-By renvoyée par le serveur, pour en extraire le nom de logiciel ayant servir à générer la page, ainsi que sa version.
Et dans le cas où cette en-tête n’existe pas, ou ne contient pas d’information exploitable, je me suis rabattu sur l’en-tête Server.

Pour rappel, et en ne prenant que quelques exemples relativement typiques, les en-têtes HTTP renvoyées par le serveur, dans le cas de pages générées par PHP et sur un serveur exposant la version de PHP utilisée, ressemblent souvent à quelque chose de ce type (pour www.php.net) :

Server: Apache/1.3.41 (Unix) PHP/5.2.17
X-Powered-By: PHP/5.2.17

ou (pour www.mozilla.org) :

Server: Apache
X-Powered-By: PHP/5.2.9

A partir de là, extraire le numéro de la version de PHP utilisée est une opération relativement aisée…


Quelques chiffres

Réponses PHP

Sur les 7.4 millions de requêtes HTTP effectuées sur les noms de domaines que j’ai testé, environ 26% des réponses ont été identifiées comme générées par du PHP.

Plus précisément, j’ai identifié 1,947,849 réponses comme correspondant à du PHP.

Avec ce nombre relativement conséquent de réponses, les statistiques présentées plus bas devraient avoir des chances d’être à peu près correctes, ou, tout au moins, de donner des résultats et chiffres relativement proches de la réalité des versions de PHP installées…


Serveurs Web

Cela dit, avant d’entrer dans le détail des versions de PHP, et même si ce n’est pas vraiment le but premier de cet article ou de la collecte de données effectuée, voici la liste des Serveurs Web les plus fréquemment identifiés lors de ma collecte de données :

  • Apache : 4,491,135 — 67.80%
  • IIS : 1,233,729 — 18.63%
  • nginx : 366,639 — 5.54%
  • Autres : 261,484 — 3.95%
  • GSE : 155,842 — 2.35%
  • YTS : 47,748 — 0.72%
  • LiteSpeed : 39,865 — 0.60%
  • lighttpd : 27,163 — 0.41%

Ou, sous forme d’un graphe :

Serveurs Web

On notera :

  • Apache, toutes versions confondues, est toujours premier, loin devant les autres,
  • nginx est dans le top 3, pour les données collectées ici — depuis le début de l’année, il est annoncé comme ayant dépassé IIS et atteint la seconde place pour les sites « actifs », notion qui ne se retrouve pas dans les données utilisées pour rédiger cet article.


Versions majeures de PHP

Commençons par les versions majeures de PHP, en prenant en compte les résultats qui ont été identifiés comme correspondant à une version supérieure ou égale à 3, et inférieure ou égale à 62.

Mes tests ont remonté le nombre suivant de domaines sur chaque version majeure de PHP :

  • PHP 3 : 851 — 0.04%
  • PHP 4 : 274,442 — 14.09%
  • PHP 5 : 1,672,456 — 85.86%
  • PHP 6 : 38 — 0.00%

Sous forme d’un graphe, qui peut être plus parlant pour certains et permet de voir en un clin d’oeil quelle est la version majeure de PHP la plus répandue, cela donne :

Versions majeures de PHP

On notera :

  • Que, fort heureusement, PHP 5 est la version majeure la plus répandue,
  • Mais que, seconde moitié 2011, on a encore quelques centaines de sites, sur 7.4 millions, qui tournent encore sur du PHP 3,
  • Et aussi que PHP 4 est encore trop répandue, alors que cela fait des années que cette version n’est plus du tout maintenue (PHP 4.4.9, publiée en Août 2008, était annoncée comme étant la dernière version de PHP 4.x),
  • Et enfin que, plus d’un an après la mise à mort de la branche PHP 6 (qui, pour rappel, n’a jamais vu une version ne serait-ce qu’alpha être publiée), on rencontre (encore) des sites qui utilisent PHP 6 en production ??? Très peu, certes, mais suffisamment pour attirer l’attention : cela signifie que, un jour, quelqu’un a installé sur un serveur « public » une version de développement de PHP, et n’a ensuite pas pris la peine de le mettre à jour…


Versions mineures de PHP

Si on passe aux versions mineures de PHP, toujours pour PHP >= 3.x et PHP <= 6.x, et en ne conservant que les versions qui sont remontées 10 fois ou plus, on obtient les données suivantes :

  • PHP 3.0 : 849 — 0.04%
  • PHP 4.0 : 1,945 — 0.10%
  • PHP 4.1 : 4,638 — 0.24%
  • PHP 4.2 : 4,262 — 0.22%
  • PHP 4.3 : 62,552 — 3.21%
  • PHP 4.4 : 201,042 — 10.32%
  • PHP 5.0 : 8,212 — 0.42%
  • PHP 5.1 : 95,439 — 4.90%
  • PHP 5.2 : 1,214,416 — 62.35%
  • PHP 5.3 : 354,182 — 18.18%
  • PHP 5.4 : 198 — 0.01%
  • PHP 6.0 : 38 — 0.00%

Et sous forme graphique :

Versions mineures de PHP

Pour résumer :

  • PHP 5.2, qui a atteint sa fin de vie en décembre 2010, il y a déjà plus d’un an, est toujours, et de loin, la version de PHP qui semble aujourd’hui la plus utilisée / répandue,
  • PHP 5.3, stable depuis juin 2009, soit plus de deux ans et demi, n’arrive qu’en seconde place — et loin derrière PHP 5.2,
  • Et PHP 5.1 et 4.3/4.4 sont relativement proches l’un de l’autre.
  • Enfin, PHP 5.4, qui n’est pas encore sortie en version stable (les données utilisées utilisées ici ont été collectées après la sortie de la RC6, et avant la sortie de la première version stable), est déjà utilisée sur un nombre non-négligeale de serveurs publics ; et on trouve un peu de tout : beta1, RC2, RC3, RC4, RC5, RC6, … Donc il ne semble pas s’agir d’une volonté de tester/valider la toute dernière version3.


Versions releases de PHP

Et enfin, si on descend au niveau des versions release de PHP 5.x4, en ne conservant que les versions qui remontées 100 fois ou plus, on obtient les données suivantes :

  • Pour PHP 5.0 :
    • 5.0.1 : 143 — 0.01%
    • 5.0.2 : 305 — 0.02%
    • 5.0.3 : 851 — 0.05%
    • 5.0.4 : 5,723 — 0.34%
    • 5.0.5 : 1,135 — 0.07%
  • Pour PHP 5.1 :
    • 5.1.1 : 415 — 0.02%
    • 5.1.2 : 7,163 — 0.43%
    • 5.1.3 : 1,540 — 0.09%
    • 5.1.4 : 2,588 — 0.15%
    • 5.1.5 : 289 — 0.02%
    • 5.1.6 : 83,424 — 4.99%
  • Pour PHP 5.2 :
    • 5.2.0 : 27,968 — 1.67%
    • 5.2.1 : 5,823 — 0.35%
    • 5.2.2 : 2,026 — 0.12%
    • 5.2.3 : 9,349 — 0.56%
    • 5.2.4 : 45,958 — 2.75%
    • 5.2.5 : 34,122 — 2.04%
    • 5.2.6 : 192,326 — 11.50%
    • 5.2.7 : 159 — 0.01%
    • 5.2.8 : 22,939 — 1.37%
    • 5.2.9 : 84,735 — 5.07%
    • 5.2.10 : 43,988 — 2.63%
    • 5.2.11 : 32,939 — 1.97%
    • 5.2.12 : 42,008 — 2.51%
    • 5.2.13 : 64,110 — 3.83%
    • 5.2.14 : 64,124 — 3.83%
    • 5.2.15 : 5,507 — 0.33%
    • 5.2.16 : 28,964 — 1.73%
    • 5.2.17 : 507,259 — 30.33%
  • Pour PHP 5.3 :
    • 5.3.0 : 3,076 — 0.18%
    • 5.3.1 : 4,575 — 0.27%
    • 5.3.2 : 47,836 — 2.86%
    • 5.3.3 : 79,910 — 4.78%
    • 5.3.4 : 6,723 — 0.40%
    • 5.3.5 : 37,700 — 2.25%
    • 5.3.6 : 60,296 — 3.61%
    • 5.3.7 : 861 — 0.05%
    • 5.3.8 : 90,884 — 5.43%
    • 5.3.9 : 22,282 — 1.33%
  • Pour PHP 5.4 :
    • 5.4.0 : 197 — 0.01%

Et sous forme graphique :

Versions releases de PHP

Pour résumer :

  • Une quantité non-négligeable de sites sous PHP 5.1.6 (qui a été publiée en Août 2006) ; la version fournie par défaut sous certaines distributions, il me semble, genre Redhat Enterprise.
  • Beaucoup de PHP 5.2.6 (publiée en Mai 2008) ; la version fournie par défaut sous Debian Lenny, par exemple.
  • La version de PHP la plus répandue est PHP 5.2.17 (publiée en Janvier 2011) ; ça reste du 5.2, qui a atteint sa fin de vie, mais positivons, en se disant que c’est la dernière version, la plus à jour…
  • Et enfin, plusieurs sous versions de PHP 5.3.x, sans qu’aucune ne s’impose réellement ; notons que la version 5.3.7, avec son bug de sécurité, et qui n’a été disponible que quelques jours, n’est heureusement pas la plus répandue5.


Evolution

Je ne ferai pas une longue analyse sur le pourquoi du comment des chiffres que j’ai présenté ici : libre à vous de commenter sur le trop grand usage de versions complètement obsolètes, et le manque de mise à jour que l’on peut, malheureusement, trop souvent constater…

Cela dit, puisque ce n’est pas la première fois que j’effectue ce processus de collecte de statistiques à propos des versions de PHP utilisées, je me suis dit qu’il pouvait être intéressant de tracer un graphe représentant l’évolution de ces utilisations.

Le graphe reproduit ci-dessous présente donc l’évolution de l’utilisation des versions mineures de PHP, depuis septembre 20116, date à laquelle j’ai effectué ce type d’analyse pour la première fois (avec un point en décembre 2011, où j’avais effectué une collecte partielle de données, pour tester les améliorations que j’étais en train d’effectuer sur mes scripts) :

Evolution de l'utilisation des versions (mineures) de PHP

J’ai essayé de mettre en évidence les versions les plus à même de nous concerner en ce moment (à savoir, PHP 5.2, 5.3, et 5.4), ainsi que, dans une moindre mesure les deux autres versions les plus utilisées (autrement dit, PHP 4.4 et 5.1).


Notes importantes : la liste des sites analysés a énormément évolué entre septembre 2011 et janvier 2012 !

  • Entre septembre et décembre 2011, plus de 3 million de noms de domaines ont été ajoutés à ma liste ; dont une portion non-négligeable correspondant à de vieux sites (liste provenant principalement de l’export ODP). Ceci explique l’augmentation du pourcentage de sites utilisant PHP 4 et la diminution du pourcentage de sites utilisant PHP 5.2, entre septembre et décembre 2011 : selon toute logique, plus d’anciens sites signifie plus d’anciens serveurs, pour certains non mis à jour.
  • Les noms de domaines ajoutés ensuite, entre décembre 2011 et janvier 2012, correspondent principalement à des sites actifs, selon toute logique plus récents et/ou plus récemment mis à jour, et on retrouve la progression à laquelle on s’attendrait : augmentation du nombre de serveurs en PHP 5.3, au détriment de PHP 5.2 et 4.x.

Autrement dit : ce graphique n’est pas à considérer comme réfletant la réalité des évolutions des versions de PHP entre septembre et décembre 2011 !
Il deviendra probablement plus utile si je continue à publier ce type d’analyse dans le futur — c’est pourquoi je l’affiche tout de même ici.



  1. Pour certains types de serveurs ou de logiciels, j’ai mis en place un bout de code qui va chercher les informations de version dans d’autres en-têtes que X-Powered-By. Par exemple, pour les sites développés en ASP.NET, les informations de version figurent généralement dans une en-tête nommée X-AspNet-Version

  2. Pour ne pas prendre en compte les quelques résultats abherrant qu’on aurait pu relever — du genre overworld.su qui renvoi X-Powered-By: PHP/10.0.0 ??? 

  3. Et ce type de validation, de toute manière, n’est normalement pas le genre de chose qui se fait sur un serveur de production, public… 

  4. PHP 4 correspondant à des versions tellement dépassées que je préfére ne pas prendre la peine de rentrer au niveau des versions release. 

  5. On pourrait souhaiter qu’une version connue pour un problème de sécurité comme ne soit celui qui avait fait tant de bruit au moment de PHP 5.3.7 ne soit absolument pas utilisée… Mais, malheureusement… 

  6. Les chiffres présentés sur le graphique d’évolution sont en pourcentages, afin d’être indépendants du nombre d’hôtes interrogés, qui varie à chaque série de collectes. 

lundi 7 novembre 2011

Traduction française de « Zend Framework: Survive The Deep End! »

Courant juin 2009, Pádraic Brady, auteur du livre électronique Zend Framework, Surviving The Deep End, a lancé un projet de traduction de celui-ci en plusieurs langues.

Sur les mois qui ont suivis, deux traductions ont été réalisées :

  • Une traduction en allemand, par Matthias Zeis,
  • Et une traduction en français, par moi-même.

Malheureusement, pour diverses raisons, les deux traductions réalisées n’ont jamais été publiées[1].
En y repensant il y a quelques semaines de ça, Matthias et moi nous sommes dit que, même si Zend Framework 1.x date un peu et que ZF 2.x approche, ces deux traductions pourraient peut-être tout de même être utiles à quelqu’un, et qu’il était de toute manière dommage de ne pas les mettre en ligne.

Nous les avons donc uploadées les versions HTML « brutes »[2] ce week-end :

En espérant que ceci pourra encore s’avérer utile, même après tout ce temps, je vous souhaite une bonne lecture !


Notes

[1] ni sur le site officiel de ZFSDTE, ni ailleurs

[2] sans trop d’effort sur la CSS, autrement dit ; mais le contenu est là

lundi 3 octobre 2011

Statistiques de versions de PHP - septembre 2011

Avec la sortie de PHP 5.4 qui approche petit à petit[1], et PHP 5.3 rendue publique il y a plus de deux ans, je me demandais quelles sont les versions de PHP qui sont, aujourd’hui, les plus utilisées — et, donc, quelles sont les versions de PHP sur lesquelles nous pouvons nous attendre à voir nos applications déployées.


Sommaire :


Quelques mots sur la méthode

Pour faire simple, j’ai récupéré une liste de plus de 3 millions de noms de domaines, issus :

  • Du top 1 million d’Alexa,
  • Des liens externes de wikipedia en anglais (plus de 2 million de noms de domaines non compris dans le top Alexa),
  • Et de quelques résultats de recherche google (quelques milliers de noms de domaines).

Ensuite, pour chacun de ces noms de domaines, j’ai effectué une requête HTTP HEAD sur domaine.tld, en me rabattant sur www.domaine.tld si la première requête échouait.

Après cela, je me suis basé sur l’en-tête HTTP X-Powered-By renvoyée par le serveur, pour en extraire le nom de logiciel ayant servir à générer la page, ainsi que sa version.
Et dans le cas où cette en-tête n’existe pas, ou ne contient pas d’information exploitable, je me suis rabattu sur l’en-tête Server.


Pour rappel, et en ne prenant que quelques exemples relativement typiques, les en-têtes HTTP renvoyées par le serveur, dans le cas de pages générées par PHP et sur un serveur exposant la version de PHP utilisée, ressemblent souvent à quelque chose de ce type (pour www.php.net) :

Server: Apache/1.3.41 (Unix) PHP/5.2.17
X-Powered-By: PHP/5.2.17

ou (pour www.mozilla.org) :

Server: Apache
X-Powered-By: PHP/5.2.9

A partir de là, extraire le numéro de la version de PHP utilisée est une opération relativement aisée…


PHP ?

Sur les 3.1 million de requêtes HTTP effectuées sur les noms de domaines que j’ai testé, environ 25% des réponses ont été identifiées comme générées par du PHP.

Plus précisément, j’ai identifié 828,564 réponses comme correspondant à du PHP.

Avec plus de 800k réponses, les statistiques présentées plus bas devraient avoir des chances d’être à peu près correctes, ou, tout au moins, de donner des résultats et chiffres relativement proches de la réalité…


Versions majeures de PHP

Commençons par les versions majeures de PHP, en prenant en compte les résultats qui ont été identifiés comme correspondant à une version supérieure ou égale à 3, et inférieure ou égale à 6[2].

Mes tests ont remonté le nombre suivant de domaines sur chaque version majeure de PHP :

  • PHP 3 : 257
  • PHP 4 : 86,594
  • PHP 5 : 741,638
  • PHP 6 : 18

Sous forme d’un graphe, qui peut être plus parlant pour certains et permet de voir en un clin d’oeil quelle est la version majeure de PHP la plus répandue, cela donne :

version-1.png

On notera :

  • Que, fort heureusement, PHP 5 est la version majeure la plus répandue,
  • Mais que, seconde moitié 2011, on a encore quelques centaines de sites, sur 3 millions, qui tournent encore sur du PHP 3,
  • Et aussi que PHP 4 est encore trop répandue, alors que cela fait des années que cette version n’est plus du tout maintenue (PHP 4.4.9, publiée en Août 2008, était annoncée comme étant la dernière version de PHP 4.x),
  • Et enfin que, plus d’un an après la mise à mort de la branche PHP 6 (qui, pour rappel, n’a jamais vu une version ne serait-ce qu’alpha être publiée), on rencontre (encore) des sites qui utilisent PHP 6 en production ???


Versions mineures de PHP

Si on passe aux versions mineures de PHP, toujours pour PHP >= 3.x et PHP <= 6.x, et en ne conservant que les versions qui sont remontées 10 fois ou plus, on obtient les données suivantes :

  • PHP 3.0 : 257
  • PHP 4.0 : 595
  • PHP 4.1 : 1,385
  • PHP 4.2 : 1,446
  • PHP 4.3 : 22,095
  • PHP 4.4 : 61,072
  • PHP 5.0 : 3,422
  • PHP 5.1 : 47,695
  • PHP 5.2 : 566,243
  • PHP 5.3 : 124,240
  • PHP 5.4 : 30
  • PHP 6.0 : 17

Et sous forme graphique :

version-2.png

Pour résumer :

  • PHP 5.2, qui a atteint sa fin de vie en décembre 2010, il y a déjà bientôt un an, est la version de PHP qui semble aujourd’hui la plus utilisée / répandue,
  • PHP 5.3, stable depuis juin 2009, soit plus de deux ans, n’arrive qu’en seconde place — et loin derrière PHP 5.2,
  • Et PHP 5.1 et 4.4 sont relativement proches l’un de l’autre.


Versions release de PHP 5.x

Et enfin, si on descend au niveau des versions release de PHP 5.x[3], en ne conservant que les versions qui remontées 100 fois ou plus, on obtient les données suivantes :

  • Pour PHP 5.x :
    • 5.0.2 : 116
    • 5.0.3 : 326
    • 5.0.4 : 2,401
    • 5.0.5 : 502
  • Pour PHP 5.1 :
    • 5.1.1 : 196
    • 5.1.2 : 3,012
    • 5.1.3 : 184
    • 5.1.4 : 1,227
    • 5.1.5 : 127
    • 5.1.6 : 42,940
  • Pour PHP 5.2 :
    • 5.2.0 : 10,493
    • 5.2.1 : 3,089
    • 5.2.2 : 960
    • 5.2.3 : 4,145
    • 5.2.4 : 21,111
    • 5.2.5 : 15,631
    • 5.2.6 : 94,194
    • 5.2.8 : 11,280
    • 5.2.9 : 43,752
    • 5.2.10 : 22,478
    • 5.2.11 : 15,610
    • 5.2.12 : 17,588
    • 5.2.13 : 28,808
    • 5.2.14 : 36,532
    • 5.2.15 : 3,594
    • 5.2.16 : 18,877
    • 5.2.17 : 217,942
  • Et pour PHP 5.3 :
    • 5.3.0 : 1,810
    • 5.3.1 : 2,715
    • 5.3.2 : 21,890
    • 5.3.3 : 28,359
    • 5.3.4 : 5,261
    • 5.3.5 : 16,680
    • 5.3.6 : 31,549
    • 5.3.7 : 643
    • 5.3.8 : 15,310

Et sous forme graphique :

version-3-5.x.png

Pour résumer :

  • Une quantité non-négligeable de sites sous PHP 5.1.6 (qui a été publiée en Août 2006) ; la version fournie par défaut sous certaines distributions, il me semble, genre Redhat Enterprise ?
  • Beaucoup de PHP 5.2.6 (publiée en Mai 2008) ; probablement la version fournie par défaut sous une autre distribution ?
  • La version de PHP la plus répandue est PHP 5.2.17 (publiée en Janvier 2011) ; ça reste du 5.2, qui a atteint sa fin de vie, mais positivons, en se disant que c’est la dernière version, la plus à jour…
  • Et enfin, plusieurs sous versions de PHP 5.3.x, sans qu’aucune ne s’impose vraiment ; notons que la version 5.3.7, avec son bug de sécurité, et qui n’a été disponible que quelques jours, n’est heureusement pas la plus répandue (même si on pourrait souhaiter qu’une version connue pour un problème de ce type ne soit absolument pas utilisée).


Le mot de la fin ?

Je ne ferai pas une longue analyse sur le pourquoi du comment des chiffres que j’ai présenté ici : libre à vous de commenter sur le trop grand usage de versions complètement obsolètes, et le manque de mise à jour que l’on peut, malheureusement, trop souvent constater…

Cela dit, une question pour vous, lecteurs : connaissez-vous des sites qui publient ce genre de statistiques de manière régulière — idéalement, gratuitement ?
Il fût un temps, nexen en publiait, mais j’ai l’impression qu’ils ont arrêté depuis 2008…


Notes

[1] la première version bêta de PHP 5.4 est sortie quelques jours après que j’aie réalisé les tests publiés ici

[2] Pour ne pas prendre en compte les quelques résultats abherrant qu’on aurait pu relever — du genre l2.ws qui renvoi X-Powered-By: PHP/10.0.0 ???

[3] PHP 4 correspondant à des versions tellement dépassées que je préfére ne pas prendre la peine de rentrer au niveau des versions release

mardi 27 septembre 2011

Intégration continue d'un projet PHP avec Jenkins

Cet article fait suite à Intégration continue avec Jenkins : installation et configuration de base — et pré-suppose que vous avez installé une plate-forme d’Intégration Continue Jenkins, avec les plugins qui seront nécessaires à la mise en intégration continue d’un projet PHP.

Nous allons maintenant passer à l’utilisation de la plate-forme que nous avons installé il y a quelques jours, en la configurant pour qu’elle effectue l’intégration continue d’un projet PHP.


Sommaire :

Lire la suite...

lundi 26 septembre 2011

Intégration continue avec Jenkins : installation et configuration de base

Jenkins, précédemment connu sous le nom de Hudson[1], est un outil Open-Source d’Intégration Continue, écrit en JAVA.

Cet article va montrer comment installer un serveur d’Intégration Continue sous Jenkins ; et sera suivi d’un second article, qui montrera comment utiliser cette plate-forme pour intégrer un projet PHP.


Sommaire :

Notes

[1] Pour faire simple, le projet Hudson s’est renommé en Jenkins suite à un désaccord avec Oracle — et, maintenant, les deux projets ont tendance à se considérer l’un-l’autre comme des forks…

Lire la suite...

mardi 16 novembre 2010

Slides de ma conférence "Ligne de commandes sous Linux : effrayant ? Non : indispensable !" au Forum PHP 2010

Mardi 9 et mercredi 10 novembre avait lieu, à Paris, le Forum PHP 2010, organisé par l’AFUP.

J’y ai donné une conférence intitulée "Ligne de commande sous Linux : effrayant ? Non : indispensable !".
Voici les slides que j’ai utilisé comme support lors de cette présentation :


Vous pouvez aussi directement télécharger le fichier PDF correspondant.

Bonne lecture !

Les slides des autres conférences ont été mis en ligne sur le site de l’AFUP.
Et vous pouvez poster des commentaires sur l’ensemble des conférences sur Joind.in.


Et, au passage, le photos de ces deux journées ont commencé à apparaitre sur flickr : Photos du groupe Forum PHP.


lundi 13 septembre 2010

Forum PHP 2010, les 9 & 10 novembre : j'y serai !

Cette année, le Forum PHP organisé par l’AFUP aura lieu les 9 et 10 novembre à la Cité des Sciences et de l’Industrie à Paris.

Il sera organisé autour de quatre thèmes directeurs :

  • PHP de A à Z : Débuter en PHP, Réussir un projet avec PHP, Choisir son hébergement
  • Les outils basés sur PHP : Drupal , outils de e-commerce et de business, CRM et ERP
  • L’industrialisation de PHP : Performances, tests, authentification centralisée, frameworks
  • Technologies autour de PHP : HTML 5, référencement…


Cette année, j’animerai une session intitulée Ligne de commande sous Linux : effrayant ? Non : indispensable !, qui s’inscrit dans le premier de ces quatre thèmes.

Pour résumer en quelques mots : nos applications PHP sont souvent déployées sur des serveurs Linux — et nous savons tous que, un jour ou l’autre, nous aurons besoin de nous connecter à ce serveur…
Alors, pourquoi ne pas anticiper, et découvrir quelques commandes qui vous seront forcément utiles un jour ou l’autre ?


Pour les conférences auxquelles je pense assister, je n’ai pas encore fait un choix définitif, mais une première pré-selectionne me donne au moins celles-ci :

Enfin, bref, encore une fois, un lot de conférences intéressantes — et le choix final va encore être difficile, dans certains cas ;-)


Et, pour finir, voici quelques liens susceptibles d’intéresser ceux qui hésitent encore :

Je suppose que cela sera l’occasion de croiser certains d’entre vous ; à bientôt, donc !

vendredi 10 septembre 2010

Tour du mois en PHP : aout 2010

Je disais il y a un mois que, malgré la soit-disant la pause estivale, j’avais noté pour le mois de juillet un bon nombre d’articles intéressants… Et bien, pour ce mois d’août 2010 aussi, il semblerait que nous ayons de la lecture !

Mort de PHP 6 + X jours

Pour commencer, voici le retour de la série d’articles Mort de PHP 6 + X jours, par mageekguy, quit nous fait un résumé des points intéressants de la mailling-list des développeurs de PHP :

L’avenir de PHP vu par …

Et avec tous ces changements, nouveautés, et débats, nous pouvons légitimement nous demander vers quoi PHP se dirige… Et bien, voici ce que plusieurs membres de la communauté francophone en pensent :

Scalar type hints in PHP trunk

C’est chose qui va encore probablement être modifiée, vu les débats sans fin autour de ce type de fonctionnalité, mais une première implémentation des « Scalar type hints » a été commitée ce mois-ci sur le trunk de PHP.
Reste à voir comment cela va évoluer, mais on peut s’attendre à ce que quelque chose de ce genre soit présent dans une prochaine version de PHP.

First Development Milestone of ZF 2.0 Released

Zend Framework 2.0 (qui, je le rappelle, requiert PHP 5.3 — et vous garanti donc que vous pourrez utiliser les nouvelles fonctionnalités qui viennent avec ;-) ) commence à sortir le bout de son nez, avec la publication de sa toute première version de développement.
Et puisque je parle de Zend Framework, au passage (même s’il s’agit ici de Zend Framework 1.x) : Testing Zend Framework Applications.

Microsoft Drivers for PHP for SQL Server 2.0 released!!

Pour ceux d’entre nous qui utilisent MS SQL Server avec PHP, une nouvelle intéressante : la sortie d’une nouvelle version des drivers — avec, maintenant, le support de PDO_SQLSRV !

HipHop for PHP: six months later

Six mois après la publication de HipHop, voici un état des lieux de ce qui a été fait depuis.
On notera en particulier que du travail est en cours avec les équipes de plusieurs projets PHP OpenSource majeurs[1], afin de les rendre compatible avec HipHop — ce qui signifie notamment supprimer des portions de code dynamique.

Features in PHP trunk: Array dereferencing

Une autre fonctionnalité qui est arrivée sur le trunk de PHP ce mois-ci (et qui sera donc peut-être présente pour une future version de PHP) : il est à maintenant possible d’utiliser des portions de code de ce type[2] :

echo retourne_array(10, 25)[5];

Pour rappel, auparavant, il était nécessaire de passer par une variable intermédiaire :

$mon_array = retourne_array(10, 25);
echo $mon_array[5];

Pour autant que je me souvienne, ça faisait un sacré bout de temps que cette fonctionnalité était demandée — et bien… voila ;-)

Is Your PHP Application Affected by the Y2K38 Bug?

Historiquement parlant, PHP manipule les dates sous forme de Timestamp UNIX — autrement dit, sous forme d’un nombre de secondes écoulés depuis le 1er janvier 1970.
Sur un système 32 bits, cela signifie qu’en 2038 (ou pour toute date après 2038), si vous continuez à utiliser ce système à base de timestamps, vous aurez des problèmes : les 32 bits arriveront au bout du compteur !
Une solution ? [3] Utilisez la classe DateTime, apparue en PHP 5.2, et améliorée en PHP 5.3 !

Autoloading Benchmarks

Lorsqu’il s’agit d’autoloading, plusieurs solutions techniques peuvent être mises en place.
En voici quelques unes, accompagnées de benchmarks permettant de déterminer laquelle donne les meilleurs résultats, en termes de performances brutes.

PHP Anthem

Et, pour finir : je ne sais limite même comment le prendre, si ce n’est en lolant — je crois — mais je suppose que ça mérite d’être écouté au moins une fois, pour pouvoir dire "sisi, on a des chansons autour de PHP" ^^


D’autres articles, ou évènements, ont attiré votre attention, pour ce mois d’août 2010 ?
Comme d’habitude, n’hésitez pas à en faire part en commentaire !


Notes

[1] Pour ceux qui sont sur le point de me poser la question : non, ça ne signifie pas que vous devez systématiquement utiliser HipHop pour votre site sous Drupal !

[2] Oui, il est rare que je poste du code dans mes tours du mois — mais c’est plus parlant que array dereferencing, non ?

[3] Non, 64 bits n’est pas la solution : cela ne fait que repousser le problème.

- page 1 de 12