Upload
olivier-mansour
View
516
Download
0
Embed Size (px)
Citation preview
PHP, ce truc de vieuxou pas ?
@omansour
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 outilsmi 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.0double les perfsscalar + 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 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 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)
“J’ai migré un drupal 4 monolithique pas maintenu depuis 2 ans en micro services nodeJS”conclusion : Javascript > PHP
Les développeursAiment ê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
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)
“Languages, libraries and frameworks don't scale. Architectures do.”Cal Henderson - CTO @ slack
scalability != performance
Take PHP seriouslyavec 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 JAVAC’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