Un truc à suivre : TakeOff - en janvier 2013 à Lille

mercredi 17 octobre 2012 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Une conférence tout en anglais avec des intervenants de qualité dans le monde du web ET à Lille, c'est désormais sur les rails. Ou devrais-je dire sur la rampe de lancement : TakeOff a choisi la métaphore spatiale pour se positionner... From server side to pure front end and design, from new languages, web frameworks to development techniques or typographic tricks, Take Off is your chance to discover how the Web will evolve in the coming year.

Ce sera donc les 17 et 18 janvier 2013 à Euratechnologies... Et le teasing pour les speakers - proche d'un calendrier de l'avent - mérite déjà le détour. Il ne manque que des balises <a name="XXX"> pour vous pointer vers la bonne section mais les commentaires HTML (à voir dans le source) sont jolis alors on pardonne...

Code as Craft : le blog technique d'Etsy

vendredi 30 mars 2012 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Ce n'est pas si souvent que je découvre un nouveau blog intéressant : celui de l'équipe technique d'Etsy vaut le détour. Et pas seulement parce qu'il considère le développoment logiciel comme un artisanat : Code as Craft. Au delà du clin d'oeil à Marcus Baker et à un bouquin que j'avais bien aimé, j'y ai trouvé du contenu intéressant pour le développement d'une équipe de dev. Avec une mention spéciale pour Optimizing for developer happiness...

Alors que l'UTF8 a pris son envol, Twitter rame un peu

jeudi 11 février 2010 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Il y a deux ans (oui oui, c'était en 2008), l'UTF-8 devenait l'encodage le plus utilisé sur le web. Il y a quelques semaines Google annonçait que bientôt 50% des pages de son index seraient en UTF-8...

Pendant ce temps, Twitter fait des siennes avec des problèmes d'encodage (sur Opera au moins)...

Bien sûr il y a aussi des défauts dans la CSS...

Et moi qui pensait qu'ils n'avaient que des problèmes de charge ! Heureusement qu'ils sont de plus en plus à bosser sur le projet ;-)

Twitter Code Swarm from Ben Sandofsky on Vimeo.

Conférence sur la Qualité Logiciel au LORIA

mercredi 3 juin 2009 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Petite tranche d'auto-promotion puisque je viens de terminer mon support numérique pour demain... J'ai été invité à participer à un séminaire au sein du LORIA sur la qualité et développement logiciel. Au programme pour moi, un retour d'expérience sur les pratiques collaboratives que nous utilisons dans OpenTIME ! C'est la première fois que je fais une conférence dans le monde universitaire : reste à voir si c'est si différent des conférences PHP - de Paris, Londres ou San José.

Des tests unitaires pour couvrir des process

jeudi 12 juin 2008 :: perrick :: Développement :: 2 commentaires :: aucun trackback

L'équipe de No Parking s'est largement étoffée depuis 10 mois : trois nouveaux développeurs m'ont rejoint. Histoire de partager 65 000 lignes de code d'opentime : elles ne sont pas toujours faciles à apprivoiser... En plus il faut surtout continuer à avoir une haute qualité de code pour chaque release. Et comme on peut en faire presque tous les jours, la tâche peut être rude.

Parmi les petits trucs qui aident, nous avons mis en place une gamme un peu spéciale de tests unitaires : ils vérifient non pas une fonctionnalité mais des propritétés sur les fichiers dans le dépôt. Ainsi on va vérifier que toutes les chaines de traduction existent bel et bien dans les trois langues : français, anglais et italien. On va aussi vérifier la concordance entre le numéro de la version courante et le dernier numéro dans le fichier de mise à jour. Bref tout un tas de vérifications (automatisées via le hook en post-commit dans Subversion) qui permettent de ne pas oublier ces petites choses qui font la qualité d'un logiciel au quotidien.

PS : merci à Gérald de m'avoir fait comprendre lors du PhpCamp de juin 2008 que ce "petit truc" pouvait en intéresser d'autres ;-)

Aller voir une pièce de code

mardi 8 mai 2007 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Lors de mes deux passages aux XP days (à Malignes l'année dernière et à Paris il y a quelques semaines), j'ai assisté à deux Kata. D'abord celui de Emmanuel Gaillot & Christophe Thibaut -- A Fugue about Paradigms and Functional Programming -- puis celui de Régis Medina -- Refactoring: la voie vers l'abstraction.

A chaque fois, c'est avec un large sourire que j'ai quitté la salle : c'est très impressionant de voir du code naitre, pousser et grandir... Bien sûr ils avaient préparé leur démonstration. Exactement comme un jongleur s'est entrainer avant de monter sur scène. Il s'agit bien là d'une performance (au sens artistique du terme).

Pour un néophyte, les raccourcis clavier, ceux de l'IDE et aussi ceux de l'expérience auront parfois tendance à brouiller le chemin emprunté. Alors que le résultat final est juste beau : du code limpide, dense, expressif (même en Java).

Ceux qui voudront creuser la question pourront aller jeter un coup d'oeil du côté de CodeKata ou du DojoDeveloppement.

Un commit qui fait plaisir

vendredi 13 octobre 2006 :: perrick :: Développement :: 4 commentaires :: aucun trackback

Il y a un mois, Vincent - stagiaire chez No Parking - a mis en place un outil d'intégration continue pour suivre le développement d'openTIME. Il s'appuie sur un hook post-commit de Subversion. Le process suivant s'enchaine :

  1. destruction de l'installation précédente
  2. export du dépôt SVN
  3. attribrution des bons droits sur les fichiers
  4. création de la base de données
  5. configuration d'openTIME
  6. instanciation des variables globales
  7. lancement des 2893 tests unitaires
  8. envoi d'un email

Et aujourd'hui j'ai enfin obtenu le résulat que je souhaitais :

[nopkg opentime 1135] SUCESS !!!
Commit de perrick le 13/10/2006 à 16:30
opération effectuées :
Nouvelle image pour les rendez-vous [rdv]
fichiers concernés :
A : /grafx/class_rdv.gif

Unit testing
OK
Test cases run: 30/30, Passes: 2893, Failures: 0, Exceptions: 0

Dans Thunderbird, ça donne :
succès au post-commit

Dire que cela faisait 113 commits que je l'attendais : pas mal pour un vendredi treize.

Des tests de recette directement dans l'application en développement

vendredi 25 août 2006 :: perrick :: Développement :: 3 commentaires :: aucun trackback

Il y a deux ans déjà, j'avais écrit mes premiers test de recette avec SimpleTest. Pour des raisons de performances et surtout parce que le support JavaScript y est inexistant, nous n'avions pas été très loin. Depuis Selenium est arrivé avec un concept différent : au lieu d'émuler le navigateur, il s'en sert pour effectuer des tests. Principal avantage, on voit ce qui se passe concrètement !

Après un premier test concluant hier, j'ai passé mon après-midi à hacker Selenium pour l'intégrer dans mon univers de développement. Une fois compris son fonctionnement interne, je suis arrivé à :

Selenium dans openTIME

C'est assez original d'avoir l'application openTIME dans l'application openTIME via une iframe mais on s'y fait vite. Le gros avantage, c'est que tous mes paramètres de configuration sont pris en compte directement au lancement des tests. Il me reste juste un souci avec Opera (que j'espère mineur) et ce sera le bonheur...

Trouver les points de levier dans le code

jeudi 25 mai 2006 :: perrick :: Développement :: aucun commentaire :: aucun trackback

L'objectif du remaniement n'est pas uniquement d'avoir du code joli. Il est aussi d'avoir du code malléable : de trouver les points de levier. Ceux qui feront qu'il devient facile de faire évoluer son application.

Reste à trouver ces points : ils ne sont que très rarement évidents au début du développement. J'ai même l'impression qu'ils sont impossibles à anticiper. Le client, la mode, la couleur du ciel : tout participe à l'évolution des fonctionnalités. Pas la peine alors d'essayer de les anticiper.

Plutôt que de les chercher, j'ai parfois l'impression qu'ils émergent naturellement grâce à un remaniement continue. J'en ai encore eu l'exemple cette semaine : j'ai installé la dernière version d'Opera -- version 9 béta. Premier défaut, ils ont changé le raccourci pour ouvrir un nouvel onglet (le très mozillien Ctrl + t, au lieu de Ctrl + n). Deuxième défaut plus génant : une anomalie sur la priorité des champs <input>. Forcément la grille de saisie des temps dans mon logiciel maison contient 6 des ces boutons. Autant dire que je suis assez sensible à ce qu'il se passe quand on appuie sur Entrée au lieu de cliquer sur tel ou tel bouton.

Read next

Une bible pour le remaniement

lundi 15 mai 2006 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Ce n'est pas souvent qu'après quelques heures un bouquin devienne une référence : c'est exactement ce qui m'est arrivé avec Refactoring: Improving the Design of Existing Code. Martin Fowler a écrit avec Kent Beck et quelques autres une bible. De celles qu'on relit jour après jour.

En deux jours sur la table au bureau, ce livre est déjà passé par toutes les mains. Il permet tout simplement de créer un vocabulaire commun au sein de l'équipe de développement. Dans les phases d'apprentissage -- une fois que le code marche -- il devient une aide très précieuse par son côté systématique. Juste dommage que ce vocabulaire soit anglophone encore une fois.

Et puis il faut avouer que cette exploration est largement aidée par la batterie de tests que nous avons sur openTIME. En attendant d'acheter le livre, un détour par le site refactoring.com pourra peut-être s'avérer utile à quelqu'un. D'ailleurs ce quelqu'un pourrait très bien être moi-même : je viens d'y découvrir le Split Loop. Et j'adore découvir des remises en cause de mes pratiques.

En attendant Web 3.0

lundi 13 février 2006 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Lors de la conférence PHP de Londres, Harry Fuecks a présenté une session sur AJAX. Il montre le pourquoi du comment on arrive à AJAX != toujours "cool".

Et pour ceux qui ne pensent que ça n'arrive qu'aux autres je me revois en pleine discussion avec Rasmus Lerdord : chez Yahoo, ils ont du patché leurs serveurs BSD pour faire face aux requêtes trop lentes venant des dizaines de milliers de modems chinois. Il ne faudrait pas non plus oublier que le succès du trio HTTP / HTML / PHP s'est bâtie sur ce manque de synchronisation.

Rendez-vous AFUP : clients riches avec XUL

jeudi 9 février 2006 :: perrick :: Développement :: aucun commentaire :: aucun trackback

Après la conférence d'Olivier Grange-Labat (LeMonde.fr) lors du dernier Forum PHP à Paris, plusieurs visiteurs étaient venus me voir : un goût de trop leur était resté dans la bouche. L'AFUP organisera donc une session spéciale sur les technologies XUL (l'interface riche de Mozilla). L'occasion de rencontrer / d'écouter / d'échanger avec Laurent Jouanneau, Edouard Andrieu et Olivier Grange-Labat (LeMonde.fr). Le rendez-vous est fixé au 2 mars 2006 - 20h à Paris : les détails et les inscriptions sur le site de l'AFUP.

L'élégance de la conception

samedi 1 octobre 2005 :: perrick :: Développement :: 6 commentaires :: aucun trackback

Hier HTML, aujourd'hui Ajax. Hier la bulle internet, aujourd'hui Web2.0. Un des attraits de l'informatique tient dans sa capacité à créer des modes : plus blanc que blanc, toujours plus blanc... Chaque vague charie son lot de plats cuisinés à réchauffer et d'astuces innovantes à découvrir. En face de cette marée constance, il y a d'abord toute l'humilité devant son travail propre : le code. Surtout devant celui qu'on a produit il-y-a-une-éternité (notion floue qui s'étale entre une journée et des années). Celui-là même qui vieillit. Il y a aussi l'excitation devant des nouveaux outils, des nouvelles pratiques : l'apprentissage permanent.

Maintenant j'ajoute une notion complètement subjective et personnelle : l'élégance de la conception. Cette valeur va croissant avec l'étendue de mon bagage technique. En croisant ces deux valeurs -- qualité réelle de mon code produit et la qualité potentielle de ce même code -- j'arrive à un schéma.

élégance de la conception

Je m'arrête ici pour aujourd'hui : j'aimerais savoir si l'un ou l'autre d'entre vous se retrouve -- plus ou moins partiellement -- dans ce schéma...

Envie de devenir développeur : des pairs

mardi 28 juin 2005 :: perrick :: Développement :: 3 commentaires :: aucun trackback

Depuis que j'ai lancé cette série Envie de devenir développeur, j'ai pu suivre pas mal de discussions sur le sujet parfois en ligne (via des blogs ou des commentaires) d'autres de vive voix. Ces échanges sont le plus souvent réalisés avec des pairs, plus ou moins avancé sur le long chemin du développeur.

Read next

Envie de devenir développeur : de l'enthousiasme

samedi 11 juin 2005 :: perrick :: Développement :: 2 commentaires :: aucun trackback

Je reprends la série Envie de devenir développeur avec un concept à multiples facettes : celui de l'envie et de l'enthousiasme. Je dis multiple parce que pour l'instant j'en connais au moins deux formes : la première très communicative et l'autre plus intime.

Read next