TDD : des chiffres qui font réfléchir

mardi 19 octobre 2004 :: perrick :: Extreme Programming :: 2 commentaires :: aucun trackback

L'avantage de commencer en TDD, c'est que le nombre de tests suit très régulièrement le nombre de ligne du code source à proprement dit. Toujours suite au petit exercice lors du dernier groupe de praticiens XP à Paris, j'ai lancé ma calculette pour les 2 heures de développement :

De côté d'openTIME, le ratio est un peu différent : 79.148. Autrement dit je suis encore très loin du compte. Mais quel progrès par rapport à mes premiers balbutiemment (261.782 au mois de mai)... C'est ce qui s'appelle être Test Infected.

Le TDD par l'exemple

:: perrick :: Extreme Programming :: aucun commentaire :: aucun trackback

Pour une piqûre de rappel, la dernière scéance de TDD (Développement Piloté par les Tests) avec le groupe des praticiens XP parisiens fut très intéressante. Outre une démonstration de ce qui se passe dans openTIME à ce niveau-là, ce fut surtout l'occasion de se frotter à SimpleTest un peu plus en profondeur. Notre proposition -- avec David Bonnet -- pour le jeu du frigo est en ligne. Et elle peut (pourra) être comparer à d'autres tentatives, en Ruby ou en PHP.

Dans les leçons retenues -- en passant sur le fait que je n'ai toujours pas goûté à Ruby -- je retiendrai quand même une chose d'inattendu : les 4 autres binômes auront réussi une fois en deux heures à me "sortir de la bulle" -- avec cette folle envie de crier je n'arrive pas à me concentrer : merci de faire moins de bruit s'il vous plaît. Par contre je ne sais pas si c'est un succès (une fois ce n'est pas beaucoup) ou un échec (10 personnes + 1 client étant la taille "idéale" d'une équipe XP, une fois c'est une de trop).

Quelques questions de la certification Zend PHP

mardi 12 octobre 2004 :: perrick :: PHP :: aucun commentaire :: un trackback

Zend a mis en ligne quelques questions extraites de sa certification. Si certaines sont assez pointues d'autres sont avant tout là pour "piéger". Je vous laisse aussi le soin de lire les commentaires de Chris Shiflett.

Ecouter un blog, ça n'a rien à voir

lundi 11 octobre 2004 :: perrick :: Connexe(s) :: aucun commentaire :: un trackback

Les lecteurs attentifs de ce blog auront peut-être découvert -- via ma liste de blogs ou autrement -- IT Conversations. L'idée est très simple : enregistrer des pointures du monde de l'IT, puis les diffuser. Avec un un fil RSS au passage.

C'est comme ça que j'ai pu entendre Joel Spolsky, Tim O'Reilly ou encore Paul Graham. Mais aujourd'hui, j'ai reçu la première nouveauté via mon abonnement RSS : IT Conversations: Maximizing Your Blogging Strategies - Gnomedex 4.0. Pas si bizarrement que ça toute l'attention donnée à cette conversation était soustraite à mon travail en cours : devant mon écran d'ordinateur je fais rarement autre chose !

Autant j'ai appris à lire en vitesse et en travers -- parfois de travers aussi, autant je suis incapable de faire ça en écoutant quelqu'un parler. J'en viens donc à me demander quand est-ce que ma radio -- celle qui est à côté de mon lit, l'autre sur le frigo ou la troisième dans la salle de bain -- pourra elle aussi s'abonner à un fil RSS et télécharger ce contenu si intéressant. Entre temps il ne me reste plus qu'à me décider à acheter un balladeur MP3 ou un iPod. Même si l'idée d'avoir un casque entre les oreilles ne me réjouit pas plus que ça...

[màj du 12/10/2004 : apparemment je suis à la rue, cette technique s'appelle -- pour l'instant -- Podcasting.]

Décidemment, l'année des wikis commence

:: perrick :: PHP :: aucun commentaire :: un trackback

Je sais que le concept de Wiki commence à dater mais Harry Fuecks vient de poster sa propre review des wikis existants. Et parmi sa liste, il y en a un -- en PHP -- que je ne connaissais pas du tout : DokuWiki. De mon côté les nouveaux venus s'appellent : Instiki -- est écrit en Ruby -- et Jot -- peut faire plein de choses. Comme quoi, même après avoir trouvé la recherche continue !

Bientôt au Forum PHP Paris 2004

vendredi 8 octobre 2004 :: perrick :: PHP :: un commentaire :: un trackback

Voilà c'est fait : après avoir envoyé mon chèque il y a quelques temps, j'ai eu la confirmation de mon inscription au Forum PHP Paris 2004. Organisé par l'Afup -- Association Française des utilisateurs de PHP -- dont je suis aussi membre, la quatrième édition du forum PHP en France présente deux jours de conférences axées sur les thèmes "PHP 5" et "interopérabilité".

Rien que de citer certains des intervenants, je me fais plaisir : Rasmus LERDORF, Zeev SURASKI et Derick RETHANS. Au niveau contenu aussi, il y aura des choses intéressantes : Xdebug, refactorisation, PHPGTK & XUL entre autres. Si vous en voulez encore plus, voici le détail des sessions.

Restent les discussions informelles : c'est peut-être ce qui m'aura le plus marqué lors de l'édition 2003. Autant d'occasions de revoir Cyril, Moosh, Damien, Sébastien, Eric -- désolé pour ceux que j'oublie sur le moment -- et sûrement quelques nouveaux en plus.

Les motifs d'une interface web

mercredi 6 octobre 2004 :: perrick :: Ergonomie :: 2 commentaires :: aucun trackback

37signals propose aujourd'hui un article intéressant sur comment utiliser les motifs (patterns ?) dans un design web. Je dis intéressant parce qu'ils ne présentent que peu d'image graphique : il s'agit surtout de montrer leur processus pour arriver à créer une page à la fois fonctionnelle, belle et ergonomique.

PHP::Duploc ou lire graphiquement un fichier PHP

samedi 2 octobre 2004 :: perrick :: PHP :: 2 commentaires :: un trackback

Via le blog (et surtout la home page) de Marcus Baker - alias LastCraft je suis tombé sur un projet SourceForge assez intéressant : il s'agit de PHP::Duploc. Lancé par Jochen Buennagel via une thread dans un forum, il permet de visualiser "graphiquement" des lignes de code PHP. Cela donne quelque chose comme :

fichier PHP traduit par PHP::Duploc

Je n'ai pas encore toutes les clefs pour lire le fichier en question -- oui, c'est un fichier d'openTIME -- mais c'est au moins beau... Apparement il y a un fichier PDF qui traine et qui peut aider (mais on y parlerait de Smalltalk : http://imagebeat.com/dotplot/tapos.pdf).

Deux premiers blogmarks sur onpk.net

vendredi 1 octobre 2004 :: perrick :: Connexe(s) :: un commentaire :: aucun trackback

En juillet 2004, Simon fêtait son 1000ème blogmark. Ajourd'hui j'inaugure mes 2 premiers grâce au plugin de dcBLogmark JMF. Il ne me reste plus qu'à ajouter un petit bout de code pour tester la présence ou non de la table : je me suis fait avoir aussi ;-) Bref j'avance sur l'horizon que je voulais donner à onpk.net.

[Màj : j'en ai profité pour me défouler un peu -- on est vendredi soir -- et pondre une nouvelle icône : icône dcBlogmark]

PHP: Fonctions variables - Manual

jeudi 30 septembre 2004 :: perrick :: PHP :: un commentaire :: un trackback

Les fonctions variables dans PHP : après avoir retrouvé le billet de Harry Fueck où j'en avais entendu parler pour la première fois, je vous ajoute aussi la référence dans le manuel PHP : Fonctions variables.

Qu'est-ce que ça fait ? Cela permet d'éxécuter une fonction dont on composerait le nom à la volée.

Un exemple ?
function faire_tri_suivant($id) {
   $id_next = $id + 1;
   if (function_exists("faire_tri_".$id_next)) {
       $function = "faire_tri_".$id_next;
       return $function();
   } else {
       return "la fonction ".$id_next." n'existe pas encore";
   }
}

Et si ça ne sert à personne, je l'aurais au moins mis dans un coin de ma "soft-tête"...

France Telecom recycle ses annuaires

mercredi 29 septembre 2004 :: perrick :: Connexe(s) :: 2 commentaires :: aucun trackback

L'année dernière les annuaires téléphoniques annuelles étaient balancées en direction les portes -- au moins à Lille dans la rue de Béthune.

Cette année, quelqu'un sonne à la porte, propose la nouvelle version et surtout demande de récupérer les anciens : "ils sont recyclés ensuite". En voilà une chose qu'elle est intéressante : une fois n'est pas coutume, je tire un coup de chapeau à France Telecom / Pages Jaunes (pour le recyclage du papier ... et celui de l'espace dans mes placards). J'en ai quand même garder un pour y faire mes gribouillis de temps en temps !

Tiddlywiki : une appli web pour demain

lundi 27 septembre 2004 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Quand je vois des trucs comme le TiddlyWiki, je me dis qu'effectivement on a pas encore vu le quart de la moitié du tiers de ce qu'on peut faire dans une application web. Du javascript, de l'HTML et une pointe de PHP + MySQL : c'est tout ce qu'il me faut. A part peut-être Ruby on Rails...

[ via Pointblog ]

La couverture de tests unitaires avance

jeudi 23 septembre 2004 :: perrick :: Extreme Programming :: aucun commentaire :: aucun trackback

En avril 2004, je commençais à mettre en place mes premiers tests unitaires sur openTIME : il s'agissait à l'époque de quelque chose de tout nouveau pour moi. Je n'en avais jamais entendu parlé à la fac (où j'ai fait principalement des maths, plus une touche d'informatique -- Mathematica et C). Et puis il y a eu le site http://www.extremeprogramming.org/ où je les ai vu -- à défaut de les comprendre -- pour la première fois, vers 2000 / 2001. Et au final un livre, mais ça c'est une autre histoire.

Et aujourd'hui j'ai enfin mes premiers tests unitaires en lien direct avec la base de données. Pour y arriver je me suis largement inspiré des efforts de Cédric -- alias plcoder : MyUnit.

Parmi les effets bénéfiques de cette couverture de tests unitaires, je note en particulier :

Pour ceux qui parlent anglais un post récent -- il date de ce jour ;-) -- de C. Keith Ray propose ses 8 Reasons to do Unit Testing / TDD / Automated acceptance tests. Pour les autres je vous conseille un petit tour sur le Wiki d'XP-France.

Outil de groupware en PHP (II) : Wikini

mercredi 22 septembre 2004 :: perrick :: PHP :: 3 commentaires :: 2 trackbacks

Après une phase d'exploration et un accord de principe sur l'idée d'un wiki, j'ai donc installé Wikini. Comme souvent j'en ai d'abord installé un autre -- en l'occurence MediaWiki. Mais après une tentative infructueuse d'installation, je suis vite revenu sur mes premières (bonnes) impressions.

Au passage un grand coup de chapeau à Charles Népote, David Delon et Patrick Paul. Et surtout à Eric Feldstein -- alias GarfieldFr -- pour son travail sur les actions d'attachement de fichier à une page et de téléversement de fichier.

Trouver le lundi de la semaine en cours

:: perrick :: MySQL :: 2 commentaires :: aucun trackback

Cela fait pas mal de temps que je n'ai rien mis dans cette catégorie MySQL alors qu'elle figure en bonne place dans le titre de ce blog : faudra peut-être que j'y fasse quelque chose...

En attendant voici un petit truc pour trouver la date du lundi de la semaine en cours :
SELECT DATE_ADD(CURRENT_DATE, INTERVAL(- DAYOFWEEK(CURRENT_DATE) + 1) DAY).

Et pour la même chose au format timestamp :
SELECT UNIX_TIMESTAMP(DATE_ADD(CURRENT_DATE, INTERVAL(- DAYOFWEEK(CURRENT_DATE) + 1) DAY)).

Comment j'en suis arrivé là ? Tout simplement pour que le script d'installation d'openTIME soit le plus indépendant possible de PHP.

Mise-à-jour du 23/09/2004 : trouver un exemple plus probant de test unitaire en lien avec une base de données ne pouvais pas être plus évident, j'ai donc corrigé la fonction ci-dessus.