Qu'est-ce qu'un artisan logiciel ?

Qu'est-ce que le "Software craftsmanship" ?

Récemment chez FlexJob, nous nous sommes penchés sur le mouvement des “software craftsman” ou « artisans logiciels » et nous avons eu envie de vous partager ce que nous avons compris de ce mouvement et des motivations des craftsman.

 

La philosophie craftsman

Un artisan logiciel n’est ni plus ni moins qu’un développeur passionné et qui a le souci de bien faire.

En effet, étymologiquement, l’artisan est « celui qui exerce un art manuel ». En quelque sorte, le software craftsman est donc un artiste du code qui met tout en œuvre pour atteindre un idéal de code qui concentre le plus de valeur possible.

Ce mouvement des artisans logiciels a émergé en 1999 avec la publication du livre The Pragmatic Programmer: From Journeyman to Master, d’Andrew Hunt. Par la suite,  le mouvement des « software craftsmanship » s’est un peu plus structuré et s’est défini de la manière suivante dans un manifeste diffusé depuis 2009 :

craftsman

« Souhaitant devenir des artisans du logiciel, nous élevons la barre du développement professionnel de logiciel, en le pratiquant et en aidant les autres dans l’apprentissage du savoir-faire.

Ce faisant, nous en sommes arrivés à donner de la valeur :

Non seulement au logiciel opérationnel,

mais aussi au logiciel conçu dans les règles de l’art

Non seulement à la réactivité face aux changements,

mais aussi à la création permanente de valeur

Non seulement aux individus et à leurs interactions,

mais aussi à une communauté de professionnels

Non seulement à la collaboration avec les clients,

mais aussi aux partenariats productifs

Dans notre recherche des premiers éléments, nous avons découverts que les seconds étaient indispensables. »

Là où l’agilité, une méthodologie créée par des développeurs pour des développeurs permet de produire un code fonctionnel assez rapidement en se focalisant sur l’ensemble de l’écosystème autour du code, des méthodes de production, le mouvement des “software craftsman” se concentre sur la valeur intrinsèque du code.

La transformation agile a permis d’énormes progrès dans le métier mais ce n’est pas une solution miracle. Les processus autour du développement d’un produit sont bien évidemment importants, le focus sur la valeur aussi mais il ne faut pas oublier que le produit en lui-même est finalement central !

Bien sûr, l’artisanat logiciel n’est pas suffisant pour assurer le succès d’un produit, mais le manquement du craft, de l’artisanat pourrait bien être la principale cause de son échec.

 

Plus concrètement

Un artisan logiciel est le seul responsable pour conserver garder son système propre et testable. Et pour cela il peut recourir par exemple aux pratiques de l’extreme programming ou du test-driven development. Ces dernières sont indépendantes du contexte et donc implémentables dans la très grande majorité des situations. Il est possible alors de produire du code propre, testable et découplé. Au delà de ça, un artisan logiciel ne se contente pas de tests itératifs mais fait tout pour que le métier de son client se retrouve dans le code produit. Si son travail est propre, un non initié peut être capable de comprendre le code rien que le lisant ! Un software craftsman met du sens dans son code et c’est aussi ça qui nous a séduit chez FlexJob.

 

En résumé, qu’est-ce qu’un craftsman ?

Un artisan logiciel reste donc un développeur, mais un développeur passionné pour qui coder n’est pas qu’un moyen de gagner sa vie mais un moyen de transmettre sa vision, de donner du sens à son métier. Les artisans logiciels permettent une relation productive et gagnante-gagnante pour leurs clients et leurs entreprises. Aussi, ils assument une responsabilité dans la transmission des savoirs et permettent un ajout continuel de valeur au produit.

 

Pour aller plus loin :

Merci à ceux qui ont donné de leur temps pour nous accompagner dans l’exploration de ce mouvement ! Cet article n’a pas la prétention d’être exhaustif sur le mouvement software craftsmanship, n’hésitez pas à réagir !

Les dernières actus