SimpleTest au sein du GSOC 2008

mercredi 26 mars 2008 :: perrick :: Projets Open Source :: aucun commentaire :: aucun trackback

Les idées de SimpleTest pour faire avancer le monde des tests web avec PHP sont visibles depuis la page Ideas for PHP pour le Google Summer of Code 2008. Si vous êtes un étudiant avec l'envie de faire quelques chose d'intéressant cet été, c'est une sacrée opportunité !

Des exemples ? Ajouter l'interfaction JavaScript à SimpleBrowser (le navigateur web en PHP de SimpleTest) - un projet ambitieux (très) - ou bien Changer le parser HTML et profiter des évolutions PHP5+ ou encore mon préféré Web Form Fuzzer ou comment essayer de troubler un site web en place. Mais il y en a d'autres...

Pour la procédure, ça se passe chez Google directement...

SimpleTest sort en version 1.0.1 RC1

mardi 25 mars 2008 :: perrick :: Projets Open Source :: aucun commentaire :: aucun trackback

Marcus vient de publier l'avant-dernière version de SimpleTest compatible PHP4. Il s'agit de SimpleTest 1.0.1 RC1.

Cette release contient principalement des corrections de bugs et des modifications mineures. Une exception, la gestion des exceptions est désormais plus robuste. En particulier le tearDown() sera quand même appelé si une méthode de test lance une exception. (Attention à celle dans le tearDown, SimpleTest ne peut plus rien pour vous : elle sera juste attrapée ;-)

Toujours sur les exceptions, les objets fantaisie peuvent les utiliser aussi :
$mock->throwOn('method', new Exception('Ouch!'));

Mais la principale nouvelle, c'est que 1.0.1 final sera publié la semaine prochaine. Pas de nouvelles fonctionnalités d'ici là ! Principalement la documentation à retoucher... Et ensuite ce sera PHP5+ uniquement, enfin.

Embryon "PHP to the Moon"

mardi 18 mars 2008 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Après quelques semaines de boulot et en vue de la conférence du 25 mars 2008, le site web PHP to the Moon pointe le bout de son nez. Voici grosso-modo les questions qu'on essaiera de répondre là-bas :

Il s'agit d'une initiative que No Parking mène avec Algorismi : leurs compétences en analyse de code (leur Meter4PHP que certains avaient vu lors d'un précédent Forum PHP à Paris sera inclu dans phptothemoon) et l'expérience acquise au sein du projet SimpleTest font un socle intéressant. Et j'espère que l'embryon d'outil qu'on présentera en live le 25/03/2008 sera prometteur...

Pour les impatients, voici un premier bout d'écran de ma démo :

Découvrir les outils de la qualité en PHP

lundi 3 mars 2008 :: perrick :: PHP :: aucun commentaire :: aucun trackback

L'AFUP organise le 25 mars 2008 un rendez-vous intitulé Outiller la qualité en PHP. C'est un évènement gratuit et ouvert à tous : il suffit de s'inscrire.

Date : 25/03/2008
Horaire : 20h00 - 22h30
Capacité : 50 places
Lieu : La Cantine
151 rue Montmartre, 12 passage Montmartre
Galerie des Panoramas, 75002 Paris

Comme d'habitude pour ce genre d'évènements, c'est vite plein ! Ce serait dommage de perdre une occasion de découvrir les tenants et les aboutissants d'un politique qualité en PHP. Avec la fin annoncée de PHP4, ça devient urgent...

Pourquoi pas VIM ?

mardi 26 février 2008 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Mon rôle au sein de No Parking a largement changé ces derniers temps avec l'arrivé de trois nouveaux développeurs dans l'équipe (deux salariés et un stagiaire). Je passe moins de temps à coder (seul ou en binôme) et beaucoup plus à suivre celui des autres que ce soit pour un bug tordu, pour une spécification incomplète ou pour un avis -- plus ou moins -- éclairé.

C'est en jonglant entre mon écran et celui des autres que je me rends compte à quel point je ne pourrais plus travailler avec VIM ou un autre éditeur de texte simple. Je dépends trop des vues que propose Eclipse pour rentrer dans du code, surtout en mode intervention chirurgicale.

Voici un bref aperçu des trois vues que j'utilise le plus souvent :

le code :
les classes & méthodes :
les fichiers :

A chaque plan correspond un enjeu particulier qui fait la qualité du code (PHP ou pas d'ailleurs) : les questions d'architecture avec les fichiers, celles de compréhension du domaine (business logic, dirait nos amis outre-manche ou outre-atlantique) avec les classes et les méthodes et celles de l'implémentation proprement dite avec le code brut. Et c'est la capacité d'appréhender les trois plans en même temps -- ou presque -- qui me fait défaut avec un éditeur de texte, aussi puissant soit-il.

Maintenant que le HTML5 en passé en draft

mardi 22 janvier 2008 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackback

J'ai envie d'utiliser des <video> pour afficher les vidéos de Symbiofi, des <kbd> pour la documentation d'openTIME et des <datagrid> parce que ça va me simplifier la vie sur toutes mes applis web de tous les jours. Bref j'ai hâte...

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 !

SimpleTest passe à Subversion

vendredi 30 novembre 2007 :: perrick :: Projets Open Source :: aucun commentaire :: aucun trackback

Depuis le temps qu'on l'attendait, SimpleTest est enfin passé à Subversion ! Cela veut dire deux choses :

  1. La fin du support de PHP4 approche à grand pas.
  2. Tous les projets extérieurs -- dont OpenTime -- vont pouvoir utiliser les svn: externals.

Les sessions du Forum PHP podcastés

mercredi 28 novembre 2007 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Grâce à l'efficactié d'Arnaud les fichiers audio des sessions arrivent au fur et à mesure en podcast : http://feeds.feedburner.com/forumphp2007. Idem pour les présentations au format HTML, PDF et co...

Et pour ceux qui se posent la question de mes supports, c'est délicat. Etant donné qu'il s'agissait d'une écriture de code en live, il n'y a pas de PDF ! Et comme il s'agissait d'un atelier, pas de prise de son non plus. Désolé : il fallait y être ;-)

En tout cas ces ateliers auront été un des jolis succès de cette édition 2007 du Forum PHP : ça crée du buzz et du mouvement lors de l'atelier. Du style :
- j'ai vu tel ou tel truc, c'était génial !
-ah bon, si bien que ça. Parce que moi j'ai préféré aller voir la démo de XXX m'a bluffé. C'est bien dommage de devoir rater des présentations.

Bref une piste à reprendre pour l'année prochaine. Et pourquoi pas des ateliers "développeurs" pour le premier jour et d'autres "décideurs" pour le deuxième jour : de la sorte tout le monde y trouve son compte chaque jour. Reste à trouver des idées d'ateliers pour ces fameux "décideurs" : j'ai bien pensé à créer sa boîte autour de PHP ou présentation fonctionnel d'un projet Open Source -- Mantis / SugarCRM / Claroline / autres, mais je suis vite court. Vous en avez d'autres ??

Du PHP beurré sur une tranche de Mac

dimanche 4 novembre 2007 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Wez Furlong a publié son dernier projet : un pont entre Objective-C et PHP. A terme on devrait pouvoir faire une application Mac en PHP directement. La première démo et des screenshots sur son blog : ironie du sort, la version de PHP livrée par Apple sur le nouveau Leopard, ne permet d'installer le script...

Bien sûr c'est un truc à prendre avec des pincettes, on parle d'un pré-pré-version. Mais quand même, je suis heureux de voir sortir de telles expériences. Cela nous change du nouveau framework ou de la lisibilité de l'opérateur ternaire.

Un Forum PHP qui arrive vite vite

lundi 29 octobre 2007 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Le Forum PHP 2007 arrive à grand pas, une dernière conférence s'est ajouté au programme : une présentation des technos Microsoft pour PHP : Fast CGI dans IIS 7 (Windows Server 2008), Microsoft Ajax Framework et PHP, Phalanger (Compiler du PHP pour le framework .NET) et Silverlight... C'est toujours intéressant de voir ce que fait la concurrence ;-) Surtout quand ils rament pour faire monter leur part de marché sur le secteur : plusieurs fois lors de conférences PHP, j'ai vu quelqu'un poser la question qui tue combien d'entre vous utilisent Windows sur leur serveur de production ? et personne ne lève la main.

En tout cas, j'y serais : il y a trop de bonnes choses à découvrir. Et de gens à revoir...