• [^] # Re: Who's that guy ?

    Posté par (site web personnel) . En réponse au lien Software is Way Less Performant Today. Évalué à 10.

    Casey Muratori est un programmeur que je qualifierai, entre autres choses et sans vouloir le limiter à cela, de militant en faveur de programmes plus efficaces. C'est loin d'être un clown et je lui attribue des qualités de pédagogue.

    Il a notamment échangé publiquement avec Robert C. Martin au sujet du livre Clean Code de ce dernier, de l'impact négatif en termes de performance que les conseils du livre ont généré. Là où beaucoup de programmeurs dégagent un air prétentieux et supérieur en méprisant Clean Code, Casey a opté pour une approche critique en échangeant ouvertement et poliment avec le premier concerné : https://github.com/unclebob/cmuratori-discussion/blob/main/cleancodeqa.md

    Il a aussi fait une vidéo sur le sujet des propositions de Clean Code : "Clean" Code, Horrible Performance, à nouveau très pédagogique.

    Il est aussi plus ou moins à l'origine du concept de GUI en mode immédiat : Immediate-Mode Graphical User Interfaces.

    C'est un peu dommage que le lien soit moinsé parce que le gars vaut le coup d'être écouté. Ce n'est pas son intervention la plus instructive mais un bon point d'entrée. Une citation de cette vidéo :

    The idea that programmers are too lazy, or something, to learn and employ the stuff is simply false. It is that culturaly they have been taught, and are working with peers, who think that somehow it's virtuous to not know how a computer works. And that is a problem.

    De mon expérience c'est tout à fait juste. Entre l'éducation universitaire qui pense en complexité algorithmique et en machine abstraite, l'industrie qui pousse pour des solutions vite implémentées pour pas cher en jetant des « Engineering time is expensive, memory is cheap », le délire de la montée en puissance considérée comme acquise, la culture du one-liner et le fantasme du compilateur qui optimise tout ; aucun doute que l'éducation des programmeurs va à l'opposé de l'écriture de programmes efficaces.