Qui a dit refactoring avec PHP ?

mardi 2 mars 2004 :: perrick :: PHP :: un commentaire :: aucun trackback

A croire qu'il y a bien une blogosphère qui se répond par post interposé : je tombe aujourd'hui sur un post paru chez Nexen : Cartographie d'une application. On y parle d'un produit en Perl, PHPXref -- un PHP Cross Referencing Documentation Generator.

Je ne l'ai pas encore testé mais mon petit doigt me dit que c'est un projet à suivre pour tous ceux qui veulent faire du refactoring sur leur produit en PHP. En tout cas je connais plusieurs personnes qui attendent les fonctionnalités évoqués par Damien Séguy.

Pour un gourou MySQL...

samedi 28 février 2004 :: perrick :: MySQL :: 4 commentaires :: aucun trackback

En avançant dans ma couverture de tests pour openTIME -- toujours grâce à eXtreme Programming, je découvre quelques subtilités de PHP et de MySQL.

Pour mon premier l'analyseur de code PHP qui devrait m'aider à localiser les functions qui ne sont plus utilisés. J'en reparlerai un jour si ça dépasse le stade du carton. A moins qu'un bon outil de refactoring pour PHP sorte ou que quelqu'un me donne une URL intéressante pour découvrir qu'il existe déjà.

Et pour mon second, dans la famille "bug ou feature", un test à réaliser soit même : faire la recherche SELECT * FROM ma_table WHERE id = '1a'; sur une table MySQL 'ma_table' qui contient une colonne id de type int et un seul enregistrement où id = 1. Je suis curieux de savoir pourquoi avec MySQL 4.0.15 et MySQL 3.23.58 je trouve mon enregistrement. Au lieu de rien ?

Remplacer les IFRAME avec les feuilles de style

jeudi 26 février 2004 :: perrick :: CSS :: 17 commentaires :: aucun trackback

Lors d'un projet récent, j'ai du me plier à l'utilisation - exigée par le client - d'une IFRAME : un attribut pourtant déprécié selon le W3C. Et voilà-t-il pas qu'aujourd'hui je découvre qu'on peut remplacer ces IFRAME par quelques lignes bien pensées en CSS :

div#content {
  width: 500px;
  height: 300px;
  overflow: auto;
}


J'ai découvert ce truc sur le site du designer Jon Hicks. Un grand merci à Laurent Jouanneau pour cette chouette découverte indirecte.

Expressions régulières sans souci : Regex-Coach

mercredi 18 février 2004 :: perrick :: PHP :: un commentaire :: un trackback

Parce que les expressions régulières Perl sont très puissantes et pas toujours aisées à manipuler, Regex-Coach de Edi Weitz permet de gagner un temps fou : vous tapez votre expression régulière puis le texte à tester et automatiquement apparaît en surbrillance le(s) motif(s) recherché(s).

Une bibliothèque PHP pour fichiers multimédias : getID3

vendredi 13 février 2004 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Cela faisait quelques temps que je n'étais pas tombé sur une librairie Open Source en PHP vraiment intéressante. Depuis PHP_WriteExcel de Johann Hanne, découverte en 2002 et qui est passé en version 0.2.2 entre temps. [Note : la version 0.2.1 que j'utilise ne m'a jamais posé de problème mais je m'égare.]

getID3 permet d'extraire des informations intéressantes à propos de fichiers multimédias -- type MP3, AVI, etc : entre autres la taille, la durée, le bitrate, l'artiste, le genre, j'en passe et des meilleurs. Un grand coup de chapeau à James Heinrich donc et à un client de No Parking qui me pose de nouvelles questions.

Et le fait qu'on trouve un fichier de test ne déplait à l'apprenti praticien eXtreme Programming que je suis. Plus là-dessus -- le projet en mode XP -- dans les jours à venir ici ou -- puisque la programmation en binôme se fait à deux ;-) Non ce n'est pas du teasing...

Un petit trucs pour les LABEL

jeudi 29 janvier 2004 :: perrick :: CSS :: aucun commentaire :: aucun trackback

Parce qu'on a jamais fini d'apprendre ces petites choses qui améliorent l'ergonomie d'une application (ou d'un site) web, cet article de Simon Willison Simple Tricks for More Usable Forms est intéressant. J'y ai trouvé cette petite pépite de CSS qui permet de remplacer la simple flèche du label par une main -- la même qui indique qu'une action est possible :

<style type="text/css">
label {
  cursor: pointer;
  cursor: hand;
}
</style>


A utiliser avec les LABEL dans un formulaire donc ;-)

[Via : le StandBlog]

Un agrégateur de blogs PHP

vendredi 23 janvier 2004 :: perrick :: PHP :: 2 commentaires :: aucun trackback

Une initiative de Christian : un agrégateur de blogs autour du PHP, PHP Planet. La plupart de mes lectures quotidiennes dans cet univers des développeurs PHP y sont déjà :
- sebastian's weblog
- Coggeshall.org -=- Musings, Insight, and of course PHP
- PHPDeveloper.org
- 'zlog
- PHP Everywhere
- phpPatterns

Cette initiative me fait penser à celle de Moosh sur phpindex.com avec son tour des blogs 23-01-2007 ou 17-01-2003.

[via : sebastian's weblog]

Exemples de haut-débit sans fil à San Diego

:: perrick :: Connexe(s) :: aucun commentaire :: aucun trackback

De temps en temps, j'aime bien aller sur des magazines américains -- Fast Company et Inc en particulier : ils ont l'un et l'autre un markup HTML valide, ce qui ne gâche rien sous mon Opera préféré. Ils ont parfois des points de vue différents sur les TIC et leur usage. Le dernier article en date présente des exemples d'utilisation du Wireless à San Diego : agents immobiliers, femmes de ménage à l'hôtel, pharmaciens... Il y en a pour tous les goûts.

Quand je vois le nombre de câbles qui trônent derrière mon portable (souris / enceinte / imprimante / réseau / graveur cd-rom / modem / alimentation), j'en viens à rêver...

Une astuce pour se protéger des attaques CSRF

mardi 20 janvier 2004 :: perrick :: PHP :: 2 commentaires :: aucun trackback

C'est dans l'article en ligne du dernier Direction | PHP que je viens de trouver une astuce intéressante pour se protéger des attaques CSRF. Tout d'abord une définition : CSRF = Cross-Site Request Forgeries, il s'agit d'une attaque par simulation de requête HTTP.

Ensuite extrait de l'article : Obligez l’utilisateur à utiliser vos formulaires HTML.

Mes techniques préférées sont celles qui impliquent un secret partagé entre le serveur et l’utilisateur légitime. [...] A chaque fois qu’un utilisateur demande un formulaire, une nouvelle marque est générée et cette marque est sauvegardée sur le serveur (dans la session de l’utilisateur, remplaçant les précédentes) et incluse dans le formulaire comme une variable cachée du formulaire. Ainsi, quand un message est posté, non seulement la marque est comparée à celle de la session de l’utilisateur, mais un temps mort peut également être appliqué pour minimiser davantage le risque.
Le reste de l'article est aussi très intéressant pour ceux qui ne sont pas encore familiers de "sécurité en applications webs". Et l'auteur -- Chris Shiflett -- écrit d'autres choses : un livre, HTTP Developer's Handbook, et un blog que j'ai ajouté à ma liste personnel.

Les start-ups, la nouvelle génération

jeudi 15 janvier 2004 :: perrick :: Management :: aucun commentaire :: aucun trackback

Dans un billet "The Soul of the New Startup Machine" du 280 Group Blog -- pas de permalien, Brian Lawley remarque que les start-ups de la Silicon Valley retrouvent leurs habitudes d'antan : deux mecs et un garage. On sert les coûts un maximum avec une particularité tout de même : le site web qui devient plus important que les locaux physiques. Si ça vous rappelle quelqu'un vous avez peut-être raison...

Instabilité avec svchost.exe

mardi 13 janvier 2004 :: perrick :: Connexe(s) :: 41 commentaires :: aucun trackback

Symptôme (sous Windows 2000) : quelques minutes après une connection avec un modem simple ou ADSL, j'ai un message d'erreur à propos du fichier svchost.exe. Et au passage des ralentissements, des liens qui ne marchent plus sur le bureau ou avec mon gestionnaire de version.

Vu le nombre d'appels au secours que j'ai lus avant de découvrir un lien correspondant à mon problème, je mets ici un lien vers Mircrosoft (une fois n'est pas coutume ;-) : http://www.microsoft.com/downloads/[...]. Une fois le patch téléchargé et installé, je n'ai plus eu de problème.

Apéro PHP de janvier 2004

mercredi 7 janvier 2004 :: perrick :: PHP :: 2 commentaires :: aucun trackback

Je profite de ce nouvel apéro PHP -- organisé cette fois par 6 ANUR (alias JMF de Dying Culture) -- pour vous souhaiter à tous une bonne année 2004.

Petit rappel à mettre dans les agendas et les coins de tête : l'apéro aura lieu le mercredi 21/01/2004 à 20:00, toujours au Clair-Obscur. Comme c'est à chaque fois un bon moment autour d'une bière et que la discussion n'est pas toujours "technique", je recommande.

Note du 14/01/2004 : l'apéro est reporté au mercredi 28/01/2004 à 20:00.

Parce qu'il faut mieux en rire

lundi 22 décembre 2003 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Voici un cadeau de fin d'année : une compilation de questions à propos de PHP & Co mise en ligne par Derick Rethans : Assorted Funny User Questions / Comments. Et une parmi mes préférées : Subject: Stupid !!! avec la réponse de Rasmus.

Et au passage un joyeux noël à tous ;-)

Premier pas vers l'Extreme Programming

jeudi 18 décembre 2003 :: perrick :: Extreme Programming :: 4 commentaires :: un trackback

Pendant le forum PHP, j'ai récupéré un bouquin sur l'Extreme Programming que j'ai dévoré. Par contre je suis seul à développer sur openTIME -- donc pas possible de faire de la programmation à 2. Même chose pour toutes les recommandations où il faut être en équipe avec des rôles bien assignés.

Et pourtant je m'astreins à créer un test unitaire à chaque découverte de bug et à chaque étape de refactoring. Et aujourd'hui ça a payé : j'ai pu découvrir deux bizarreries à partir de mon test d'origine. Le genre de bricoles qui marchent quand même parce que je suis en local mais qui une fois sur un serveur de production peuvent rendre perplexe.

Et un lien que je n'ai pas encore exploré sur le sujet : http://xp-france.net/cgi-bin/wiki.pl.

Comment le travail collaboratif modifie les rapports directs

:: perrick :: Développement :: 2 commentaires :: aucun trackback

Via le blog de Scott Jonhson, j'arrive sur un article de Ross Mayfield Augmenting Social Interaction. Il y évoque les modifications dans les rapports humains suite à l'utilisation grandissante des outils de travail collaboratif (en particulier le wiki -- qui est son outil phare).

Et j'ai eu droit hier -- à l'apéro PHP -- à une vérification flagrante : avec Jean-Marc Fontaine de Dying Culture, on a eu une discussion très pointue sur nos sujets de prédilection (PHP, CSS, XHTML, développement web & co.) avec des références communes alors que :
1/ on ne se croise que tous les 3/4 mois de visu autour d'une bière
2/ on s'envoie un mail tous les 2/3 mois
3/ on lit le blog de l'autre et pas mal de blogs en commun

L'effet est le même que la télé : à une époque c'était le seul sujet de discussion commun dans la cour de récréation. Sauf que désormais je n'ai plus la télé...