Projets Open Source au Forum PHP 2010

le 03/10/2010 à 22:07
Projets Open Source au Forum PHP 2010
L'AFUP (l'association Française des Utilisateurs de PHP) lance l'appel aux projets « Open Source » pour la deuxième année consécutive pour le Forum PHP 2010 qui se déroulera le 9 et 10 novembre 2010 à Paris.

L'initiative permettra de rencontrer les différentes personnes des projets développés actuellement autour des Frameworks, CMS, ERP, CRM, etc...

- Forum PHP 2010

A lire également

C'est en 1994 que Rasmus Lerdorf inventa le langage PHP, un projet personnel visant initialement à mieux gérer son site Internet. Alors que le PHP souffle cette année sa quinzième bougie, il est utilisé sur un tiers des sites Internet. Qu'il s'agisse de Yahoo, Facebook ou des sites gouvernementaux, le PHP a su s'imposer en se couplant avec une base de données. De Wordpress à Drupal en passant par Gallery et Joomla, nombreux sont les projets open source qui ont permis de densifier la communauté des développeurs.

A l'occasion du forum PHP 2010 organisé par l'AFUP (Association française des utilisateurs de PHP) et qui se déroule actuellement à Paris, nous avons rencontré M. Lerdorf qui revient sur les origines du langages et son évolution.Après avoir créé le langage PHP pour résoudre un problème personnel, quelles ont été vos motivations pour le distribuer en open source ?Rasmus Lerdorf : Oh c'était de la paresse ! En fait j'en étais arrivé à un point où je ne pouvais plus tout gérer tout seul. Les développeurs se plaignaient en me demandant de modifier telle ou telle partie du code. C'était beaucoup de travail. Finalement il était donc beaucoup plus facile de le distribuer et de laisser les autres le modifier eux-mêmes.Pensiez-vous ou espériez-vous que le PHP connaîtrait un tel succès ?RL : Non, je n'avais aucun projet ni aucune vision. Le langage PHP a toujours été très pragmatique et jamais je n'aurais pensé qu'un tiers des sites Internet l'utiliseraient un jour. Tout le monde s'y est mis en corrigeant des portions de code ici et là et c'est finalement devenu très populaire. Vous savez, on ne peut pas planifier un tel succès.Quel est votre rôle aujourd'hui dans l'élaboration du PHP ?RL : Il y a beaucoup de portions de code que je ne connais même pas. Le PHP est devenu tellement large que je ne peux pas donner mon aval sur toutes les initiatives de développement. Les programmeurs familiers avec certains projets prennent en charge eux-même les décisions. Pour ma part, j'essaie de résoudre les conflits. Aussi je donne des conseils et propose des approches.Quels sont vos derniers travaux ?RL : Je travaille actuellement pour la start-up WePay. Je développe les interfaces de programmation OAuth. Avant cela je planchais sur APC (NDRL : Alternative PHP Cache) pour la gestion de la mise en cache des données. J'ai toujours travaillé sur des portions de code du PHP.Quels sont les projets développés en PHP qui vous semblent les plus intéressants ?RL : C'est difficile, il y en a tellement et dans plusieurs domaines différents. J'ai été très impressionné par la communauté de Drupal. Aussi, certains travaux de Wordpress sont très intéressants, notamment leur double stratégie avec Wordpress.org et Wordpress.com.

Il y a aussi ce projet fascinant, CrisisCamp, qui permet de fédérer les développeurs et de gérer les catastrophes naturelles. Voilà quelque chose de fantastique qui permet réellement de résoudre un problème. En soit le PHP n'est qu'un langage, c'est un outil tout comme un système d'exploitation mais finalement on peut en faire des choses remarquables.Si l'on en croit la base de données des vulnérabilités érigée par le gouvernement américain, 30% des failles de logiciels seraient dues à des applications PHP. Pensez-vous qu'il y ait un problème dans l'apprentissage du langage et des bonnes pratiques ?RL : Le PHP est un langage très accessible et les débutants commenceront par apprendre ce dernier plutôt qu'un autre comme Python ou Perl. Ces langages-là sont utilisés par des programmeurs expérimentés qui ne commettent pas d'erreurs. Le PHP permettra à n'importe qui de concevoir facilement une idée et de la mettre en ligne très vite.

Cependant on ne peut pas faire quelque chose qui soit à la fois accessible mais qui demande également un apprentissage profond pour éviter les erreurs. Nous aurions probablement pû faire un meilleur travail dans ce sens mais cela aurait impliqué des limites en terme de fonctionnalités. Nous devons donc garder un bon équilibre parce que plus nous développons des choses poussées, moins ces dernières sont faciles de prise en main. Parfois nous avons arrêté certains projets justement parce qu'ils ne devenaient plus vraiment accessibles.Vous avez travailé sept ans chez Yahoo! Quel a été votre rôle au sein de la société ?RL : Durant les trois premières années, j'ai été chargé d'effectuer la migration vers le PHP. Yahoo était un agglomérat de 35 sociétés rachetées ici et là et possédant chacune leurs propres technologies. Pendant un temps ca a bien fonctionné, même en Europe. Ils laissaient les ingénieurs respectifs prendre en charge le développement de leurs produits.

Après Yahoo! a voulu s'étendre en Asie et y décliner plusieurs de ses sites Internet. Il leur fallait uniformiser leurs infrastructures. Ca aurait été bien trop difficile d'embaucher des développeurs et de les former à différents langages. Yahoo! souhaitait un environnement homogène.N'était-ce pas trop dur de convaincre les ingénieurs de changer d'outils de travail ?RL : Si effectivement parfois c'était difficile, certains refusaient de migrer. Cela en a énervé plus d'un mais honnêtement certaines de leurs technologies étaient tout simplement inefficaces ou incompatibles avec les sites Internet proposés. Et de toute façon, la migration était inévitable.

Une fois la transition effectuée je travaillais avec les ingénieurs, m'occupais du recrutement ou des relations publiques. Prendre en charge la responsabilité du développement du plus grand site Internet était un défi vraiment intéressant mais une fois le travail achevé, je n'avais plus trop de raisons de rester.Nous entendons de plus en plus parler de JavaScript basé sur le serveur comme Node.js. Que pensez-vous de cette technologie ?RL : Je pense qu'il peut y avoir un intérêt à utiliser le même langage côté client et côté serveur bien que les deux ne soient pas totalement identiques.Pensez-vous que cela puisse un jour être aussi puissant et développé que le PHP ?RL : A mon avis cela dépendera de l'écosystème et de ce que feront les développeurs tiers. Par exemple si cela ne permet pas la prise en charge une base de données avec LDAP alors ce sera simplement inutile. Les bases de données sont très importantes aujourd'hui.Quel est votre framework PHP préféré ?RL : Oh je n'en ai pas, ils sont tous nazes ! Ils essaient d'être trop génériques en voulant répondre aux besoins de tout le monde. Finalement ça ne fonctionne pas. Je préfère les frameworks spécialisés comme ceux de Drupal ou de Wordpress.Enfin quid de PHP 6 ?RL : A l'heure actuelle nous n'avons aucun objectif pour la sortie de PHP 6, tout simplement parce qu'il n'y a pas assez de développeurs. Notre but initial était la prise en charge d'Unicode. Mais, cela demandait beaucoup de travail pour les développeurs parce que leurs extensions n'étaient plus fonctionnelles. Finalement j'ai décidé de tout arrêter et d'avancer plus lentement et avec de plus petites étapes de transistion.Je vous remercie.
Fabien PotencierCréé en 1998, la firme française Sensio édite le framework PHP Symfony et se place donc face à Zend ou CakePHP. Société de services, Sensio déploie sa solution auprès de grands comptes et de jeunes pousses parmi lesquels nous retrouvons EDF, Yahoo, Lagardère Active, LaBanque Postale, Peugeot ou encore Orange.

A l'occasion du Forum PHP organisé par l'Afup (Association française des utilisateurs de PHP) et qui s'est déroulé cette semaine à Paris, Fabien Potencier, co-fondateur de la société, a accepté de revenir sur son parcours en nous présentant la prochaine version de Symfony.Comment êtes-vous tombé dans le PHP et pourquoi s'être focalisé sur ce langage ?Fabien Potencier : En fait j'ai commencé avec le Perl. Je dirais même que j'ai plus d'expériences avec le Perl. Je suis quelqu'un de pragmatique. Je suis développeur par passion et non par métier. Je suis un auto-entrepreneur. On a fait du PHP dès l'année 2000. A l'époque il y avait une grosse vague de PHP4. Au début on refusait de suivre le mouvement et au fil des années le PHP est devenu de plus en plus important.

Puis il y a eu PHP5 qui a apporté beaucoup d'améliorations notamment avec l'orientation objet. Nous percevions un gros potentiel et j'ai donc créé Symfony qui est mon premier projet PHP. Au début nous l'avions développé pour nos propres clients avec un premier prototype en 2004. Puis en avril 2005 nous l'avons publié en open source.Aujourd'hui, quelle est la part de marché de Symfony sur le secteur des frameworks ?FP : Pour la part de marché c'est difficile à déterminer mais ce que je peux vous dire c'est que Symfony est très fort en Europe. Je ne crois pas me tromper en disant que nous sommes très largement leader en France et enregistrons aussi la plus forte croissance. Par ailleurs j'ai vu plusieurs offres d'emplois qui recherchent spécifiquement des compétences PHP + Symfony. Sur les 9 premiers mois de l'année 2010 nous avons enregistré 1 million de visiteurs en France, ca me paraît énorme.Quels sont les avantages d'une société à choisir Symfony plutôt qu'un autre framework tel que Zend ?FP : Bien tout d'abord il faut savoir que des frameworks ciblant les entreprises il n'y en a pas cinquante. Et je ne pense pas qu'il soit raisonable de regarder autre part que Zend ou Symfony parce qu'ils ont tous les atouts avec une large base d'utilisateurs à travers le monde.Justement, cela ne porte-t-il pas préjudice à Symfony d'être internationalisé ? Les entreprises ne souhaitent-elles pas avoir une documentation purement française et approfondie ?FP : Un framework franco-français n'aura pas la même maturité. Aussi l'entreprise doit regarder autour de l'écosystème. Nous sommes dans un métier qui est anglophone. Qu'il le veuille ou non le développeur devra apprendre l'anglais. Cela ne peut pas être un critère de choix.

Un framework franco-français signife une communauté relativement restreinte. Il faut atteindre une masse critique pour que le projet soit finalement auto-alimenté.Quel est le modèle économique de Sensio ?FP : Sur le marché, tous les frameworks sont gratuits donc il faut obligatoirement avoir un business model de services. Et d'ailleurs cela tombe bien puisque Sensio propose déjà du service. Nous faisons beaucoup de formations. Cela fonctionne plutôt bien en France puisque ces dernières sont payées par l'Etat.

Nous avons également une partie conseil, nous vendons notre expertise en prônant les bonnes pratiques tant au niveau technique que pour la gestion de projets. En sommes nous apportons notre savoir-faire au client.

Nous avons également un programme Guru. Ces derniers sont au-dessus des experts. Ce sont des acteurs de l'open source. Ils résolvent des problèmes complexes, notamment au niveau de l'architecture logicielle. Ils interviennent aussi bien au niveau des grands comptes que des startups. Ils trouvent une solution à un problème que personne n'a su résoudre jusque là.Ces services s'articulent-ils strictement autour de Symfony ?FP : Non autour de Symfony ou du PHP en général. Par exemple nous avons travaillé avec Evian pour le site e-commerce MyEvian qui propose d'acheter des bouteilles personnalisées. Nous avons fait ce site avec Magento.

Pour revenir sur nos services, nous proposons aussi des audits de sécurité, encore une fois, sur l'implementation du PHP en général ainsi que des audits de bonne pratiques. Nous essayons de déterminer ce que peut apporter un framework par rapport à une solution développée en interne. Par ailleurs en tant que développeur, cela ne m'intéresse pas d'être formé à un framework personnalisé que je ne pourrais jamais réutiliser après.Pourriez-vous revenir sur les nouveautés du prochain Symfony 2.0 ?FP : Il s'agit d'une ré-écriture totale. Nous avons recueilli des feedbacks sur les premières versions. Il n'était pas possible de le faire évoluer donc la version 2.0 marquera une rupture.N'est-ce pas dangereux de ne pas assurer de compatibilité ?FP : Non, nous ne le faisons que tous les cinq ans. Et vous savez le web lui-même est marqué de ruptures technologiques. Prenez Drupal, à chaque fois ils cassent la compatibilité. Et ils sortent une nouvelle version à peu près tous les ans et là nous en sommes à la septième version…

Aussi nous proposons des versions LTS (NDLR : à support étendu). Nous sommes le seul à le faire et pourtant c'est fondamental en entreprise. Nous offrons un support de 5 ans.

Symfony 2.0 a été repensé pour être très performant. Il est 2 à 3 fois plus rapide que Zend Framework 1. Il est aussi facile d'accès pour les débutants tout en étant flexible pour les professionnels. Il s'agissait-là d'un gros challenge. J'attache beaucoup d'importance à l'expérience utilisateur. On peut utiliser Symfony 2.0 aussi bien pour un blog qu'au sein d'une grande société.

La flexibilité se traduit notamment par l'injection de dépendances, nous nous appuyons sur des bibliothèques existantes, le tout au sein d'une expérience unifiée. Nous respectons les standards, notamment pour la gestion du cache. Là aussi nous sommes le seul à le faire. Cela permet des montées en charge hallucinantes pour les sites à fort trafic.Nous entendons beaucoup parler de JavaScript basé sur le serveur tel que node.js, pensez-vous qu'un jour cela puisse être comparable au PHP ?FP : Cela peut l'être, mais vous savez, l'idée n'est pas neuve. Netscape faisait déjà cela il y a dix ans. C'est effectivement revenu au goût du jour avec Node.js. Je pense que cela peut avoir un intérêt pour des besoins précis. Mais tout faire en JavaScript serait suicidaire. Je pense que cela pourrait être intéressant en complément des technologies d'aujourd'hui. C'est comme le NoSQL, cela ne règle pas tous les problèmes.Si l'on en croit la base de données des vulnérabilités érigée par le gouvernement américain, 30% des failles de logiciels seraient dues à des applications PHP. Pensez-vous qu'il y ait un problème dans l'apprentissage du langage et des bonnes pratiques ?FP : Je vais vous donner un autre chiffre : un tiers des sites Internet sont en PHP. C'est à cause de gens qui n'utilisent notre framwork ! Par défaut nous protégeons les sites contre les attaques XSS, CRSF ou les injections SQL.

Ce sont les développeurs qui introduisent ces vulnérabilités. N'importe qui peut faire du PHP. C'est donc bien un problème de bonnes pratiques.Je vous remercie.

Commentaires

Ecrire

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours