Des vacances sans bug

vendredi 28 décembre 2007 :: perrick :: Projets Open Source :: aucun commentaire :: aucun trackback

C'est l'objectif que je me suis donné pour cette semaine de vacances... Et ce sont donc 12 bugs et quelques autres tickets qui ont disparu ces derniers jours des trackers de SimpleTest !

17 tickets en moins sur le tracker de SimpleTest

Cela veut donc dire que sur les 14 tâches avant la prochaine parution de SimpleTest, il n'en reste plus que 9 ;-)

Parce qu'il n'y a pas que le code qui compte

vendredi 14 décembre 2007 :: perrick :: Projets Open Source :: aucun commentaire :: aucun trackback

Régulièrement je trouve des commentaires terribles sur la qualité des CMS écrits en PHP. Dernier en date ceux de Programming Reddit. A chaque fois, on tombe dans le débat le code est pourri, regarde ce CMS-ci le code est mieux.

Alors que la qualité d'un logiciel se retrouve via tellement d'autres aspects. Voici un exemple assez significatif pris dans la communauté Drupal : les participants au Google Highly Open Participation Contest ont presques épuisé les tâches proposés par la communauté. Cette communauté y trouve une floppée de nouveaux contributeurs et au passage remplit des tâches non-techniques très importantes (docs, tutoriaux, screencasts, etc.). C'est juste dommage que le groupe PHP -- ou l'AFUP -- n'aient pas participé au programme (l'année prochaine qui sait).

Ouverture de la Planète PHP FR

jeudi 13 décembre 2007 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Quatre soirées de développement plus tard, la Planète PHP FR sort enfin le bout de son nez.

Quelques précisions plus ou moins techniques...

Pourquoi le remplaçant de Google utilisera (peut-être) PHP ?

samedi 8 décembre 2007 :: perrick :: PHP :: un commentaire :: aucun trackback

Je viens de finir un conférence d'Alan Kay : The Computer Revolution hasn't happend yet (keynote OOPSLA 1997). Au dela des critiques de C++, de Java ou de MS-Dos, j'y ai trouvé une vision intéressante de l'avenir de l'informatique : enfin sortir de la métaphore physique (architecture, construction ou assemblage), y préférer la métaphore biologique. Son meilleur exemple : Internet. Plus de 30 ans que ça tourne, pas encore de reboot. Et pourtant toutes les fondations logicielles ont été changées.

D'autres systèmes tournent déjà avec ce genre de principes : Hadoop et son utilisation d'un (très gros) cluster où la panne ne peut pas être critique. Ou alors OpenID et son système décentralisé d'authentification.

Autre point important de cette métaphore biologique, l'évolution continue. Voyons donc ce que donne une Computer Languages Timeline. Bien sûr l'ensemble des langages commence par une période d'activités intenses : Smalltalk sort de nouvelles versions en 1971, 1972, 1974, 1976, 1978, 1980. Plus loin encore FORTRAN en 1954, 1956, 1957, 1958, 1962, 1968, 1971. Sauf que pour le premier il faudra attendre 1998 avant une sortie suivante. Et pour le dernier il faudra attendre 1991 -- 20 ans -- autant dire une éternité. Plus de temps qu'il ne faut pour mourir.

Et c'est bien là que PHP me semble particulièrement intéressant.

Il s'agit du langage de programmation qui a sorti le plus grand nombre de versions ces dernières années : autrement dit, c'est celui qui a la plus grande facilité d'adaptation. Aussi bien au niveau de sa syntaxe qu'au niveau de ses utilisateurs.

Niveau développement, il y a “Release early, release often” mantra d'Ilia Alshanetsky - Release Master de PHP5, mot d'ordre partagé par l'ensemble de la Core Team. Il y a aussi le choix délibéré de ne pas se laisser enfermer dans le tunnel annoncé du passage à PHP6 en back-portant les autres fonctionnalités attendues (late static binding, namespaces...) vers PHP5.3.

Côté utilisateur, un autre exemple : OVH -- gros hébergeur français -- vient d'annoncer la disponibilité très prochaine de PHP6 sur l'ensemble de ses hébergements mutualisés : si vous voulez que .php fonctionne en PHP6 il faut mettre Set PHP_VER 6 dans .htaccess. Alors même qu'une preview release n'est même pas encore annoncée, ils ont donc trois versions de PHP qui tournent !

Du futur imprévisible, même pas peur.

Pourquoi Google n'a pas utilisé PHP ?

jeudi 6 décembre 2007 :: perrick :: PHP :: aucun commentaire :: aucun trackback

La réponse tient en deux lignes :
array array_map ( callback $callback , array $arr1 [, array $... ] )
mixed array_reduce ( array $input , callback $function [, int $initial ] )

Et oui, il fallait lire la doc en détail avant de comprendre pourquoi on obtient Warning: array_reduce() [function.array-reduce]: The first argument should be an array lors de son premier exemple de Map_Reduce !

Sans oublier que ces deux fonctions, array_map et array_reduce, non contentes d'inverser leurs paramètres, n'acceptent pas de classe comme callback ;-) Vivement PHP7 !