pt
Moulé à la louche depuis 1999
Les trucs qui m'énervent... et je vais pas prendre de pincettes
Internet, informatique, logiciel libre, économie, politique, vie courante et tout le reste...

L'écrasante domination de php

Samedi 21 janvier 2012

(Cet article est technique.)

D'après Journal du net (qui reprend un rapport de W3Techs), le langage de programmation php domine le web: Il est présent sur 77,3% des sites web. Et en progression. C'est énorme. ASP.Net (Microsoft) est à 21,7%, et Java à 4%.

Je trouve cela plutôt étonnant étant donné que c'est quand même un langage assez amobifreux (de la contraction de "abominable" et "affreux"): typage faible, syntaxe peu élégante, lib standard bordélique, support unicode inexistant... php est vraiment un amas hétéroclite, comme s'il avait évolué de manière anarchique, avec des excroissances et appendices qui ne collent pas avec le reste du corps. Non je ne suis pas en train de lancer un troll: J'ai moi aussi commis du code php, en milieu professionnel mais aussi pour mes projets perso.

Non seulement le langage est moche, mais une énorme partie des exemples de code qu'on trouve sur internet prônent de mauvaises pratiques, quand elles ne sont pas carrément dangereuses.


Alors pourquoi malgré tout cela autant de sites choisissent php ? Wikipedia ? Programmé en php. Facebook ? En php. Wordpress ? En php. Les exemples sont nombreux.

php est moche, mais ça n'a aucune importance. php suck, but it doesn't matter (très bon article, au passage). On y arrive. Avec de la discipline, on peut faire assez propre. Et puis il y a une quantité absolument formidable de logiciels, bibliothèques et frameworks qui rendent le travail plus simple et plus efficace.

Même si je préfère 100 fois Python, c'est bien php que je choisis majoritairement pour mes projets web perso. Pourquoi ? Simplement parce que le choix d'hébergeurs proposant php est très large. En fait, il est même difficile de trouver des hébergeurs ne supportant pas php (Alors que trouver des hébergeurs qui supportent ASP.Net ou Python est plus difficile). Cela joue en faveur du langage.

Et comme php est finalement assez bas niveau, faire des choses simples reste simple. Vive le KISS. (Quand vous commencez à devoir trouver des solutions de contournement pour faire des choses qui ne sont pas prévues d'origine par certains frameworks évolués, ça peut commencer à devenir folklorique.)


Assez curieusement, si php progresse sur les serveurs, il régresse dans l'index TIOBE (qui tente de mesurer la popularité des langages): php perd 2,13% pendant que C# gagne 2,55%. Allez comprendre.

Tout ça pour en venir à quoi ? Je suis juste surpris de l'énorme popularité de php malgré sa conception.

Si vous apprenez php comme premier langage (Cthulhu vous en préserve !), ne prenez pas pour argent comptant le premier exemple que vous trouverez sur le net. Lisez un peu sur les best-practice et les erreurs de sécurité les plus courantes.


EDIT: Voilà, je vais manger grave.

Voir tous les billets