SlideShare une entreprise Scribd logo
PHP, ce truc de vieux
ou pas ?
@omansour
PHP, ce truc de vieux
PHP, ce truc de vieux
PHP, ce truc de vieux
PHP, ce truc de vieux
https://toggl.com/programming-princess
PHP : Personal Home Page
Tools
Crée par Rasmus Lerdorf (étudiant)
Juin 1995 - "La syntaxe elle-même était similaire à celle
du Perl, bien que beaucoup plus limitée, plus simple, et
un peu incohérente"
(http://php.net/manual/fr/history.php.php)
mai 1998 : 1% des serveurs utilisaient PHP/FI
PHP 3 => première version de
PHP
juin 1998
extensions en C, se
connecte à tout !
projet universitaire de Andi
Gutmans et Zeev Zuraski
mod Apache
10% des serveurs web
1998 !!!
PHP : PSD => Macromedia
Fireworks <table> pixel.gif .php
édition courageuse des fichiers
et insertion du PHP
Pendant ce temps :
Java : JSE 1.2 (JIT, Swift,
etc…)
Python 1.5
PHP 4 => les outils
mi 1999 : Zend Engine
2000 - 2001 :
Wordpress, Drupal,
Joomla (Mambo) etc.
DRUPALCONN 2014 - Austin, USA
PHP 5(.3) => explosion de
l’OSS
2004 : PHP 5.0
Zend Engine 2 + OOP
2009 : PHP 5.3
les espaces de nom,
closures
http://www.journaldunet.com/developpeur/php/xavier-lacot-forum-php-2012.shtml
PHP 5.x => l’accélération et les
frameworks
2011 : premier commit sur
packagist
2012 : PHP 5.4 opcache
2013 : PHP 5.5 generator,
finaly
PSR, adoption de composer,
intégration des frameworks
dans les outils
PHP 7 => mind = blow
fin 2015 : sortie de PHP
7.0
double les perfs
scalar + return type
declarations, classes
anonymes etc…
PAGES - TOOLS - FRAMEWORKS
“PHP has 100% market share in the
porn industry. And that makes a lot
of PHP.”
Rasmus Lerdorf - 2012
PHP, ce truc de vieux
PHP, ce truc de vieux
PHP est un langage
d’amateur
bourré de faille de
sécurité
lent
n’est pas “enterprise
ready”
Il y a une instruction goto
“fractal of bad design"
“The PHP singularity"
“PHP is meant to die”
https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/ (2012)
https://blog.codinghorror.com/the-php-singularity/ (2012)
https://software-gunslinger.tumblr.com/post/47131406821/php-is-meant-to-die (2013)
Vous devez arrêter de faire du
PHP pour …
JAVA / Python (2000)
Ruby on Rails (2005)
Javascript / NodeJS (2013)
Golang (2016)
Clojure, Haskell, Erlang (next ?)
PHP, ce truc de vieux
PHP est très simple ! (dev +
architecture)
super stable + BC
compatibility
Les facteurs externes sont au
top
* hébergement
* open source, docs,
communauté
* libs
* recrutement
“taking PHP seriously”
“PHP the right way”
“Ewww, you use PHP
?”
https://www.infoq.com/presentations/php-history (2013)
http://www.phptherightway.com/
https://blog.mailchimp.com/ewww-you-use-php/ (2014)
PHP, ce truc de vieux
“J’ai migré un drupal 4 monolithique
pas maintenu depuis 2 ans en
micro services nodeJS”
conclusion : Javascript > PHP
PHP, ce truc de vieux
PHP, ce truc de vieux
Les développeurs
Aiment être utile
Aiment la nouveauté, apprendre
Ont une vision sur ce qu’il faut faire
Ont des préférences, des habitudes
Connaissent les détails
https://www.sitepoint.com/phps-creator-rasmus-lerdorf/5/
Rasmus : “I hate
programming”
“Ultimately all language issues get
settled when users vote with their
feet.”
Tcl War of 1994 - John Ousterhout’s (who created
Tcl)
“Le mieux est l’ennemi du
bien.”
Voltaire - 1772
Le plus dur pour un architecte est
de trouver les meilleurs
compromis.
(et de nommer les choses, voire d’invalider le cache
;) )
PHP @ m6web (6play)
PHP7, Symfony, composer,
satis, atoum, …
fast API
~ 20 développeurs
bo, commandes, démons,
web apps
CI, TU, 15 déploiements par
jour
PHP, ce truc de vieux
http://tech.m6web.fr/video-phptour-worker-php/
Faut il tout changer et
prendre des risques pour
10% de rps ?
Ou 10% sur le hardware.
“Une superbe stack que
personne ne comprend, ne sert à
rien.”
Olivier Mansour - BlendWebMix 2016
Jusqu’ici, le langage choisi
n’a pas été un frein.
Mais on a bossé un peu … quand même.
http://tech.m6web.fr/la-poo-canada-dry
Qu’est ce qui est important ?
(l’amour bien sur)
PHP, ce truc de vieux
PHP, ce truc de vieux
“Languages, libraries and
frameworks don't scale.
Architectures do.”
Cal Henderson - CTO @ slack
scalability != performance
Take PHP seriously
avec un framework (?!?!!!!!!!!)
des pratiques modernes (micro service, TDD, CI,
profiling, monitoring, …)
avec les pieds des développeurs !
https://hackernoon.com/ruby-vs-python-the-definitive-faq-5cb0046292be
PHP sucks !?
PHP est à double tranchant
N’est pas un langage pour débuter !
Il faut ouvrir ses yeux (et ses oreilles) et ne pas rester sur ses
acquis
Les problèmes sont résolus (manque de challenge ?)
programmation fonctionnelle, immutabilité, multi-threading, etc
… :/
“Ça, c’est une truelle loulou
!”
Valérie D.
PHP is the new JAVA
C’est un truc de vieux ! Et tant mieux !
PHP n’est PAS un mauvais choix (en lui même)
Pour M6 Web c’est “bien” et pour vous ?
Il faut le challenger
Javascript !!!!!!
Le futur de PHP est (toujours)
radieux
PHP a 20 ans,
La roadmap est pleine ! Les contributeurs OSS sont
chauds,
L’évolution des outils et des frameworks continus,
PHP will no more die (reactphp / kraken).
“That’s
rocket
science”
oui, en 2016 !
Merci !
http://tech.m6web.fr/jobs
@techm6web
@omansour

Contenu connexe

PDF
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
DOC
Vidkritiy urok z_movi_2_6kl
PDF
Marketing on Facebook
PDF
ACC Docket July-July 2016
PPTX
Influencia del cambio social en la dinámica de grupo
PDF
Terraform: Configuration Management for Cloud Services
DOC
Vidkritiy urok z_movi_1_6klas
PDF
2016-04-CI-Transformation-cross-border-Nauheim
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
Vidkritiy urok z_movi_2_6kl
Marketing on Facebook
ACC Docket July-July 2016
Influencia del cambio social en la dinámica de grupo
Terraform: Configuration Management for Cloud Services
Vidkritiy urok z_movi_1_6klas
2016-04-CI-Transformation-cross-border-Nauheim

En vedette (6)

PDF
Mindmap Rotter & Mischel
PDF
Behat c'est plus que ça | Behat is more than that
PPTX
Debugging Effectively - php[world] 2015
PDF
The Commando Devops
PPTX
Teoría de cognicion social
PDF
100 preguntas-sobre-sexualidad-adolescente
Mindmap Rotter & Mischel
Behat c'est plus que ça | Behat is more than that
Debugging Effectively - php[world] 2015
The Commando Devops
Teoría de cognicion social
100 preguntas-sobre-sexualidad-adolescente
Publicité

Similaire à PHP, ce truc de vieux (20)

PDF
AFUP & PHP @ Supelec
PDF
AlterWay SolutionsLinux Outils Industrialisation PHP
PPTX
PHP : Une Plateforme Industrialisable Au Service De L'Agilité
PDF
43_pps.pdf
PDF
Haxe 4, un Typescript pour PHP ?
PPTX
Devoxx 2017 : toutes les actualités technologiques à surveiller !
PPT
Barcamp tunisie edition 2010 langage de programmation php
PDF
Ecrire et déployer une appli PHP maintenable
PDF
cours-gratuit.com--coursMySql-id2218.pdf
ODP
Phpotes #1 - 10.09.13
PPTX
20100221 my phingtool - blog
PDF
Lp web tp3_idse
PDF
Symfony2 Presentation
PDF
Symfony à la télé
PPT
Annexe1 éTude Comparative Sur Les Moteurs De Recherche
PPTX
PhPotes: Drupal
PPTX
2_langage_PHP_les_bases_.2_langage_PHP_les_bases_.pptx
PDF
Dotnet j2 ee
PDF
Introduction aux logiciels libres et à Linux
KEY
Conference Php Web Services
AFUP & PHP @ Supelec
AlterWay SolutionsLinux Outils Industrialisation PHP
PHP : Une Plateforme Industrialisable Au Service De L'Agilité
43_pps.pdf
Haxe 4, un Typescript pour PHP ?
Devoxx 2017 : toutes les actualités technologiques à surveiller !
Barcamp tunisie edition 2010 langage de programmation php
Ecrire et déployer une appli PHP maintenable
cours-gratuit.com--coursMySql-id2218.pdf
Phpotes #1 - 10.09.13
20100221 my phingtool - blog
Lp web tp3_idse
Symfony2 Presentation
Symfony à la télé
Annexe1 éTude Comparative Sur Les Moteurs De Recherche
PhPotes: Drupal
2_langage_PHP_les_bases_.2_langage_PHP_les_bases_.pptx
Dotnet j2 ee
Introduction aux logiciels libres et à Linux
Conference Php Web Services
Publicité

Plus de Olivier Mansour (6)

PDF
Devfacts are coming
PDF
Le second écran chez M6Web, another (php) brick in the wall !
PDF
Bilan moral et financier du bureau AFUP 2013
ODP
Keynote de cloture du forum PHP 2013
PDF
Keynote d'ouverture du forum PHP 2013
ODP
Acheter des prestations IT et web
Devfacts are coming
Le second écran chez M6Web, another (php) brick in the wall !
Bilan moral et financier du bureau AFUP 2013
Keynote de cloture du forum PHP 2013
Keynote d'ouverture du forum PHP 2013
Acheter des prestations IT et web

PHP, ce truc de vieux

  • 1. PHP, ce truc de vieux ou pas ? @omansour
  • 7. PHP : Personal Home Page Tools Crée par Rasmus Lerdorf (étudiant) Juin 1995 - "La syntaxe elle-même était similaire à celle du Perl, bien que beaucoup plus limitée, plus simple, et un peu incohérente" (http://php.net/manual/fr/history.php.php) mai 1998 : 1% des serveurs utilisaient PHP/FI
  • 8. PHP 3 => première version de PHP juin 1998 extensions en C, se connecte à tout ! projet universitaire de Andi Gutmans et Zeev Zuraski mod Apache 10% des serveurs web
  • 9. 1998 !!! PHP : PSD => Macromedia Fireworks <table> pixel.gif .php édition courageuse des fichiers et insertion du PHP Pendant ce temps : Java : JSE 1.2 (JIT, Swift, etc…) Python 1.5
  • 10. PHP 4 => les outils mi 1999 : Zend Engine 2000 - 2001 : Wordpress, Drupal, Joomla (Mambo) etc.
  • 11. DRUPALCONN 2014 - Austin, USA
  • 12. PHP 5(.3) => explosion de l’OSS 2004 : PHP 5.0 Zend Engine 2 + OOP 2009 : PHP 5.3 les espaces de nom, closures http://www.journaldunet.com/developpeur/php/xavier-lacot-forum-php-2012.shtml
  • 13. PHP 5.x => l’accélération et les frameworks 2011 : premier commit sur packagist 2012 : PHP 5.4 opcache 2013 : PHP 5.5 generator, finaly PSR, adoption de composer, intégration des frameworks dans les outils
  • 14. PHP 7 => mind = blow fin 2015 : sortie de PHP 7.0 double les perfs scalar + return type declarations, classes anonymes etc…
  • 15. PAGES - TOOLS - FRAMEWORKS
  • 16. “PHP has 100% market share in the porn industry. And that makes a lot of PHP.” Rasmus Lerdorf - 2012
  • 19. PHP est un langage d’amateur bourré de faille de sécurité lent n’est pas “enterprise ready” Il y a une instruction goto “fractal of bad design" “The PHP singularity" “PHP is meant to die” https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/ (2012) https://blog.codinghorror.com/the-php-singularity/ (2012) https://software-gunslinger.tumblr.com/post/47131406821/php-is-meant-to-die (2013)
  • 20. Vous devez arrêter de faire du PHP pour … JAVA / Python (2000) Ruby on Rails (2005) Javascript / NodeJS (2013) Golang (2016) Clojure, Haskell, Erlang (next ?)
  • 22. PHP est très simple ! (dev + architecture) super stable + BC compatibility Les facteurs externes sont au top * hébergement * open source, docs, communauté * libs * recrutement “taking PHP seriously” “PHP the right way” “Ewww, you use PHP ?” https://www.infoq.com/presentations/php-history (2013) http://www.phptherightway.com/ https://blog.mailchimp.com/ewww-you-use-php/ (2014)
  • 24. “J’ai migré un drupal 4 monolithique pas maintenu depuis 2 ans en micro services nodeJS” conclusion : Javascript > PHP
  • 27. Les développeurs Aiment être utile Aiment la nouveauté, apprendre Ont une vision sur ce qu’il faut faire Ont des préférences, des habitudes Connaissent les détails
  • 29. “Ultimately all language issues get settled when users vote with their feet.” Tcl War of 1994 - John Ousterhout’s (who created Tcl)
  • 30. “Le mieux est l’ennemi du bien.” Voltaire - 1772
  • 31. Le plus dur pour un architecte est de trouver les meilleurs compromis. (et de nommer les choses, voire d’invalider le cache ;) )
  • 32. PHP @ m6web (6play) PHP7, Symfony, composer, satis, atoum, … fast API ~ 20 développeurs bo, commandes, démons, web apps CI, TU, 15 déploiements par jour
  • 35. Faut il tout changer et prendre des risques pour 10% de rps ? Ou 10% sur le hardware.
  • 36. “Une superbe stack que personne ne comprend, ne sert à rien.” Olivier Mansour - BlendWebMix 2016
  • 37. Jusqu’ici, le langage choisi n’a pas été un frein. Mais on a bossé un peu … quand même.
  • 39. Qu’est ce qui est important ? (l’amour bien sur)
  • 42. “Languages, libraries and frameworks don't scale. Architectures do.” Cal Henderson - CTO @ slack scalability != performance
  • 43. Take PHP seriously avec un framework (?!?!!!!!!!!) des pratiques modernes (micro service, TDD, CI, profiling, monitoring, …) avec les pieds des développeurs !
  • 45. PHP sucks !? PHP est à double tranchant N’est pas un langage pour débuter ! Il faut ouvrir ses yeux (et ses oreilles) et ne pas rester sur ses acquis Les problèmes sont résolus (manque de challenge ?) programmation fonctionnelle, immutabilité, multi-threading, etc … :/
  • 46. “Ça, c’est une truelle loulou !” Valérie D.
  • 47. PHP is the new JAVA C’est un truc de vieux ! Et tant mieux ! PHP n’est PAS un mauvais choix (en lui même) Pour M6 Web c’est “bien” et pour vous ? Il faut le challenger Javascript !!!!!!
  • 48. Le futur de PHP est (toujours) radieux PHP a 20 ans, La roadmap est pleine ! Les contributeurs OSS sont chauds, L’évolution des outils et des frameworks continus, PHP will no more die (reactphp / kraken).