Les technologies évoluent rapidement. Mais derrière chaque outil, chaque langage ou chaque architecture, il existe quelque chose de plus durable : le savoir technique accumulé par les développeurs.
La transmission de ce savoir joue un rôle essentiel dans l'évolution des communautés techniques.
Le savoir technique ne se limite pas à la documentation d'un projet. Il inclut aussi :
Ce savoir constitue une forme de patrimoine collectif pour la communauté des développeurs.
De nombreux développeurs apprennent en observant le travail des autres. Lire du code existant peut permettre de :
Cette observation constitue souvent une première étape dans l'apprentissage.
Les développeurs expérimentés jouent souvent un rôle important dans la transmission du savoir. Ils peuvent :
Cette transmission permet aux projets de continuer à évoluer.
La documentation est un outil essentiel pour transmettre les connaissances. Mais une documentation utile doit rester vivante. Elle doit évoluer avec le système afin de refléter :
Une documentation vivante aide les nouvelles générations de développeurs à comprendre le système.
Les discussions techniques jouent également un rôle dans la transmission du savoir. Les développeurs peuvent partager leurs idées à travers :
Ces échanges permettent aux idées techniques de circuler.
Un projet logiciel peut vivre pendant de nombreuses années. Pour que cette continuité soit possible, il est important que les connaissances soient transmises. Sinon, le système peut devenir difficile à comprendre pour les nouveaux développeurs.
La transmission du savoir contribue donc à maintenir la durabilité des projets techniques.
Le savoir technique circule dans les communautés grâce à l'observation, la documentation et les échanges entre développeurs.
Un système sans mémoire est un système condamné à être réinventé — ou abandonné.