pt
Moulé à la louche depuis 1999
Les trucs qui m'énervent... et je vais pas prendre de pincettes
Internet, informatique, logiciel libre, économie, politique, vie courante et tout le reste...

Le livre à 23 millions de dollars

Lundi 23 mai 2011

Par le passé certains marchés boursiers se sont effondrés à cause de l'interaction de programmes qui vendent et achètent automatiquement en fonction de la demande. Ils ont perdu tout bon sens et ont tout précipité par effet cascade. Des vendeurs sur Amazon jouent également à ce jeu là, en ajustant automatiquement leur prix par rapport à la concurrence.

Sauf que les logiciels de deux boutiques concurrentes sont partis en vrille, montant le prix d'un livre sur les mouches à 23 millions de dollars. Et 3,99 dollars de frais de port. Mouahaha. Comme quoi quand on développe il convient parfois d'ajouter quelques règles qu'on appelle "sanity checks" qui n'ont jamais aussi bien porté leur nom (sanity = "bon sens", mais aussi "santé mentale").

Cela montre aussi comment des logiciels conçus par des équipes totalement séparées peuvent interagir avec des conséquences difficiles à prévoir. La fiabilité logicielle est quelque chose de difficile, surtout à une époque où des centaines de milliers de logiciels interagissent sur internet. (Merci à Guillaume L. pour le lien.)

Donc, mémo pour les développeurs: Ajoutez des "sanity checks" dans vos logiciels. Par exemple si vous travaillez sur un site qui vend des musiques et que la commande moyenne est de 30€, toute commande dépassant 500€ devrait être bloquée pour examen. Si vous envoyez un rapport à l'impression, un nombre de pages supérieur à 300 devrait vous alerter. Si votre logiciel s'apprête à télécharger un JPG de 2 Go, c'est qu'il y a sans doute un problème. Bien sûr cela dépend de votre environnement, c'est à adapter à chaque cas. Mais n'hésitez pas à en mettre en place, surtout que cela n'est pas très couteux en temps de développement. Même un simple if qui écrit l'anomalie dans un fichier de log est un bon début et ne perturbera pas le déroulement normal du programme.

Il est plus que temps que les développeurs insufflent un peu de "bon sens" dans leurs logiciels.

Voir tous les billets