Je pense qu'il ne faut pas systématiquement tout réécrire ni refuser le code not made in home surtout quand les raisons sont purement esthétiques. Dans tous les cas, j'encourage la critique avisée que l'on peut formuler quand on connaît bien les tenants et les aboutissants. En fonction des contraintes de temps entre autres, j'essaie de me contenter de modifications mineures. Si je devais tout réécrire tout le temps, j'y passerais un temps fou, ce n'est tout bonnement pas raisonnable.
Récemment, j'avais besoin d'un importeur de modèles au format MD2 pour le moteur Ardor3D, un des principaux développeurs du moteur m'avait dit qu'il n'accepterait d'intégrer qu'un importeur réécrit de zéro et non un importeur porté à partir du code source de JMonkeyEngine 2. J'ai été humble, je me suis dit que je ne ferais sûrement pas mieux que ceux qui avaient écrit cet importeur pour JMonkeyEngine 2, je l'ai porté pour Ardor3D, j'ai changé l'agencement du code, la répartition des rôles mais je n'ai pas tout réécrit.
Au final, l'importeur de modèles MD2 pour Ardor3D marche très bien, j'ai gagné un temps fou en refusant de le réécrire complètement et j'ai convaincu ce développeur récalcitrant de l'intégrer dans son moteur pour de bon.
A quoi sert-il de mettre son code source sous licence libre à disposition de tout le monde si les développeurs qui pourraient s'en servir ne pensent qu'à tout jeter à la poubelle et tout reprendre de zéro? Personnellement, je ne fais pas du développement de logiciels libres pour la frime, j'apporte un certain soin à mon code pour le rendre intelligible.
Partager