Posts

Les 6 chapeaux de la pensée

Une bonne partie de cet article est issu du site caplbm.typepad.com/personnelgestion.pdf Master en médecine, psychologie et philosophie, Edward de Bono est parti du constat que la pensée occidentale traditionnelle est entièrement basée sur l’analyse et l’argumentation. Or, l’analyse, si fine soit-elle, ne suscite pas l’apparition de nouveaux concepts au contraire des pensées créative et constructive. Edward de Bono distingue trois formes de pensée la pensée constructive la pensée créative la pensée critique.

Binômer ? on est pas là pour s'amuser !

De plus en plus d’entreprises éditrices de logiciels organisent leurs équipes de travail en binôme, c’est à dire que les développeurs écrivent des programmes informatiques en se mettant à deux par clavier. Qu’est-ce qui a pu motiver ces entreprises à changer ? Cette pratique est-elle le fait d’illuminés rêvant d’un monde meilleur où la moitié des employés se tournerait les pouces ? Ce qui est étonnant, c’est que le binômage existe depuis plus de 20 ans, mais l’engouement pour ce mode de fonctionnement semble récent.

Laissez la modélisation venir à vous...

Lors de mes cours d’informatique, j’ai très tôt appris qu’il était indispensable de réfléchir avant de se lancer dans l’écriture d’un programme. Certains ont poussé ce principe à l’extrême et on inventé le MDA (Model Driven Architecture). Cette approche propose d’écrire en UML l’intégralité du modèle de l’application avant de commencer à travailler. Je n’ai personnellement jamais rencontré de projet informatique ayant réussi en appliquant cette méthode. Le problème de cette approche est qu’elle essaie de manger un mammouth en une seule bouchée.

XP Days 2006 France

XP Days 2006 France ont été deux jours de discussions intenses, de rencontre avec d’autres professionnels passionnés. Des présentations riches en contenu. Ces deux jours ont été épuisants, mais il n’y a pas mieux pour améliorer ses compétences personnelles. “Apprendre avec plaisir” serait un bon slogan. C’était la première fois que j’assistais à ce type d’évènement. Une révélation. Le rendez-vous est pris pour l’année prochaine.

Cuisine et Programmation

Musique et Programmation Les spécifications sont à la programmation ce qu’une partition est à la musique. La véritable performance ne se réalise qu’à partir du moment où l’on arrive à s’en détacher. Avez-vous déjà demandé à un ordinateur de jouer une partition de musique ? J’ai essayé, ça ne fonctionne pas. Avec du bon matériel, on obtient un air juste, mais sans âme, sans émotion. Un logiciel informatique n’est pas seulement le produit d’une activité rationnelle, c’est pour cette raison que la génération automatique d’un logiciel à partir d’un modèle UML ne fonctionne pas.

The psychology of computer programming

Par Gerald M. Weinberg, éditions Dorset house publishing Il s’agit ici de la version “Silver anniversary”. Apprenez comment il y a 25 ans, Gerald Weimberg formalisait l’“egoless programming”. Dans un monde où les technologies naissent et meurent en quelques années, on s’aperçoit que les règles psychologiques qui régissent l’activité de programmation sont bien toujours les mêmes. Gerald Weinberg est une référence dans le monde de l’édition d’ouvrage sur le génie logiciel.

Better, Faster, Lighter Java

Par Bruce A. Tate et Justin Gehtland, édition O'Reilly Un ouvrage pour aprendre à lutter contre les “big bloats”. La sur-ingénierie nous guette à tout les instants dans la création d’une application informatique. La simplicité est une valeur essentiel et indispensable.

Programmation délibérée

Avez-vous déjà vu un code où toutes les fonctions commenceraient par tester tous les paramètres reçus et qui retourneraient null si l’un des paramètres est null ? Ce type de code existe sûrement (Il est étonnant de constater que tout ce que l’on peut imaginer de plus horrible existe déjà), mais je ne l’ai jamais rencontré. J’ai par contre souvent lu du code où cette intention était présente. Cette pratique s’appelle de la programmation défensive.

Boucle "for" ou Boucle "while", laquelle est la plus rapide ?

Aujourd’hui, on m’a affirmé que les boucles While étaient plus rapides que les boucles For ! Cette affirmation m’a paru pour le moins étrange, et j’ai décidé de vérifier rapidement ce qu’il en était. J’ai fait ma petite expérience en Java. Expérience Voici le code source de l’expérience: public class LoopSpeedTest extends TestCase { private static final int VERY_BIG_NUMBER = 10000000; private static final int NOMBRE_ITERATION_EXPERIENCE = 1000; public void testForLoopSpeed() throws Exception { mesureTempsExperience("for", new Experience() { public void run() { for (int i = 0; i < VERY_BIG_NUMBER; i++) { } } }); } public void testWhileLoopSpeed() throws Exception { mesureTempsExperience("while", new Experience() { public void run() { int i = 0; while (i < VERY_BIG_NUMBER) { i++; } } }); } private void mesureTempsExperience(String nom, Experience experience) { List<Integer> resultats = new ArrayList<Integer>(NOMBRE_ITERATION_EXPERIENCE); int somme = 0; for (int indexExperience = 0; indexExperience < NOMBRE_ITERATION_EXPERIENCE; indexExperience++) { Chronometer.

The Pragmatic Programmer

par Andrew Hunt et David Thomas, edition Addison Wesley Que pourrait-on vouloir devenir quand on cherche à faire carrière dans le développement logiciel ? “Pragramtic programmer” nous trace un chemin et les conseils pour y arriver.