Le magazine américain Linux Format a réalisé une petite interview avec Rasmus Lerdorf et voici les grandes lignes :
LF : Quel est votre engagement dans le développement de PHP aujourd'hui ?
Rasmus L : Ce qui est sur c'est qu'il est moindre qu'il y'a 10-15 ans, Mais je lis les mailing-listes tous les jours et je discute de la suppression des bugs, de la sécurité et des questions de performances plus qu'autre chose.
Je suis aussi impliqué que je l'ai été depuis des années.
Rasmus L : Ce qui est sur c'est qu'il est moindre qu'il y'a 10-15 ans, Mais je lis les mailing-listes tous les jours et je discute de la suppression des bugs, de la sécurité et des questions de performances plus qu'autre chose.
Je suis aussi impliqué que je l'ai été depuis des années.
LF : Qui prend les décisions finales ?
RF : Nous. Nous possédons une mailing-liste accessible à tous, j'ai toujours insisté pour que le process soit transparent. N'importe qui peut consulter les archives de cette mailing liste et constater quelles décisions ont été prises et la position de chacun sur chacune d'entre elle.
La tendance est de donner la priorité au code, si 2 groupes se disputent une fonctionnalité et qu'un des deux a une implémentation de celle-ci et l'autre non, l'implémentation l'emporte. Aucune importance sur comment les groupes l'ont imaginée, si nous devons avoir cette fonctionnalité mais nous ne sommes pas d'accord sur l'implémentation, nous suivons ceux qui en feront une implémentation concrète.
RF : Nous. Nous possédons une mailing-liste accessible à tous, j'ai toujours insisté pour que le process soit transparent. N'importe qui peut consulter les archives de cette mailing liste et constater quelles décisions ont été prises et la position de chacun sur chacune d'entre elle.
La tendance est de donner la priorité au code, si 2 groupes se disputent une fonctionnalité et qu'un des deux a une implémentation de celle-ci et l'autre non, l'implémentation l'emporte. Aucune importance sur comment les groupes l'ont imaginée, si nous devons avoir cette fonctionnalité mais nous ne sommes pas d'accord sur l'implémentation, nous suivons ceux qui en feront une implémentation concrète.
LF : La pression est-elle le juge final des décisions ?
RL : Pour sûr, il y en a. J'essayais toujours de minimiser ce rôle, parce que je ne veux pas avoir le dernier mot dans beaucoup de ces choses. Je veux que le projet soit autosuffisant et je veux que cela s'auto-propulse. Si je suis dans la boucle comme le décideur, je prends chaque décision - qui ne pèse pas du tout.
Honnêtement, il y a une masse de choses que je ne connais pas assez. Je veux dire, prenez Sybase. Je n'ai jamais utilisé Sybase dans ma vie. Comment prendrais-je une décision intelligente contre une extension Sybase ? La plupart du temps avec PHP, c'est comme cela. Il y a des groupes de personnes qui sont beaucoup mieux loti pour la prise de ces décisions.
RL : Pour sûr, il y en a. J'essayais toujours de minimiser ce rôle, parce que je ne veux pas avoir le dernier mot dans beaucoup de ces choses. Je veux que le projet soit autosuffisant et je veux que cela s'auto-propulse. Si je suis dans la boucle comme le décideur, je prends chaque décision - qui ne pèse pas du tout.
Honnêtement, il y a une masse de choses que je ne connais pas assez. Je veux dire, prenez Sybase. Je n'ai jamais utilisé Sybase dans ma vie. Comment prendrais-je une décision intelligente contre une extension Sybase ? La plupart du temps avec PHP, c'est comme cela. Il y a des groupes de personnes qui sont beaucoup mieux loti pour la prise de ces décisions.
LF : Quels langages vous ont inspirés pour le développement de PHP ?
RL : C et Perl. Ils étaient les deux langages que j'utilisais à l'époque. Parce qu'à l'origine je n'essayais pas de construire un nouveau langage, j'ai simplement eu besoin d'une méthode d'utilisation car je connaissais déjà les limites du serveur Web et je devais résoudre un problème. Je n'ai pas eu besoin de beaucoup de trucs qui étaient dans Perl et je n'ai pas voulu toute la gestion de la mémoire du C, donc j'ai eu besoin d'une version déshabillée de C, qui n'était pas tout à fait Perl.
Plus tard, le C ++ et le Java étaient des langages que nous avons regardés pour comprendre ce que nous avions eu besoin de faire dans notre code orienté d'objet. Mais c'était pour d'autres personnes. Je n'ai jamais été un supporter énorme de l'OO - je l'utilise quand je pense que c'est approprié.
Je pense que la chose principale que je peux dire est : vous devez renoncer au contrôle. Si vous voulez construire un projet Open Source, vous ne pouvez pas laisser votre ego bloquer. Vous ne pouvez pas réécrire les patchs de tout le monde, vous devez donner un contrôle égal à tout a chacun.
RL : C et Perl. Ils étaient les deux langages que j'utilisais à l'époque. Parce qu'à l'origine je n'essayais pas de construire un nouveau langage, j'ai simplement eu besoin d'une méthode d'utilisation car je connaissais déjà les limites du serveur Web et je devais résoudre un problème. Je n'ai pas eu besoin de beaucoup de trucs qui étaient dans Perl et je n'ai pas voulu toute la gestion de la mémoire du C, donc j'ai eu besoin d'une version déshabillée de C, qui n'était pas tout à fait Perl.
Plus tard, le C ++ et le Java étaient des langages que nous avons regardés pour comprendre ce que nous avions eu besoin de faire dans notre code orienté d'objet. Mais c'était pour d'autres personnes. Je n'ai jamais été un supporter énorme de l'OO - je l'utilise quand je pense que c'est approprié.
Je pense que la chose principale que je peux dire est : vous devez renoncer au contrôle. Si vous voulez construire un projet Open Source, vous ne pouvez pas laisser votre ego bloquer. Vous ne pouvez pas réécrire les patchs de tout le monde, vous devez donner un contrôle égal à tout a chacun.
LF : Gardez vous un oeil sur d'autres langage comme Ruby ?
RF : Je pense que Rails arrive un peu tard, peut-être que la dernière version sera intéressante mais il subsiste des problèmes de performances avec le scaffolding. Je n'ai jamais été un fan de la génération de code automatique.
Le scaffolding est bien mais se résume à la duplication d'applications existantes.
Le Ruby est un langage propre et agréable mais peu de monde le maitrise.
Beaucoup de gens ont tentés Ruby à cause des screencasts qui martelaient : "Vous pouvez créer une application Web 100 fois plus vite" mais quand ils ont eu besoin de faire quelque chose de concret ils se sont dis : "Oh mon dieu, je ne connais pas assez Ruby ..."
RF : Je pense que Rails arrive un peu tard, peut-être que la dernière version sera intéressante mais il subsiste des problèmes de performances avec le scaffolding. Je n'ai jamais été un fan de la génération de code automatique.
Le scaffolding est bien mais se résume à la duplication d'applications existantes.
Le Ruby est un langage propre et agréable mais peu de monde le maitrise.
Beaucoup de gens ont tentés Ruby à cause des screencasts qui martelaient : "Vous pouvez créer une application Web 100 fois plus vite" mais quand ils ont eu besoin de faire quelque chose de concret ils se sont dis : "Oh mon dieu, je ne connais pas assez Ruby ..."
Et vous que pensez-vous du succès de PHP ?
Qu'est-ce qui fait qu'aujourd'hui c'est ce langage qui vous parait le plus approprié pour vos projets ?