Dans les deux premiers articles de cette série, nous avons successivement examiné les qualités de Python comparées à celles de deux langages majeurs, Java et PHP chacun pris dans leur cas d’emploi emblématique : respectivement, la réalisation de tiers orientés métier et la conception d’applications web.
Les qualités intrinsèques de Python expliquent l’engouement pour ce langage. Engouement dont les développeurs sont à l’origine au moins dans les communautés des logiciels libres soutenues ou non par des acteurs privés. Il est apparu également que Python était un langage d’initiation et d’enseignement bien meilleur que Java. Il tend, aux Etats-Unis du moins, à supplanter Java pour cet usage, récupérant la niche du regretté Pascal. Est-ce que l’enseignement français et surtout roumain franchira ce pas ? C’est tout le mal qu’on leur souhaite puisque cela améliora très certainement les qualités de conceptualisation et d’abstraction de nos futurs collaborateurs, qualités que l’usage de Java ne développe pas ou peu.
S’il apparaît que Python est largement équivalent sinon meilleur que ses concurrents en termes de productivité, de performance et de pédagogie, nous voudrions assortir ce tableau de quelques recommandations et de certaines précautions qui vont de soi dès qu’il s’agit de franchir un saut technologique par l’adoption d’un nouveau langage.
Ne recrutez pas un expert de Python, recrutez un expert en ingéniérie logicielle qui a l’habitude de travailler sur des sources en Python. En effet, la pierre d’achoppement d’un projet logiciel c’est le processus de développement, d’intégration et de déploiement, pas systématiquement le langage d’implémentation.
Identifiez un évangéliste au sein de votre équipe. Là encore, si vous voulez que vos développeurs se mettent au Python, il faudra qu’un de leurs pairs les convainque. N’allez pas chercher cet évangéliste dans une équipe de conception, regardez du côté de l’exploitation, des DBAs ou des gens qui font de la BI, il y a plus de chances que l’un d’entre-eux soit un prophète caché du Python.
Ne faites pas tout en Python tout de suite. Laissez la technologie gagner en maturité dans l’entreprise sur un ou deux projets pilotes. Vous êtes éditeurs de solutions logicielles ? Pourquoi ne pas commencer par inclure un sous-ensemble de Python comme langage de script de votre logiciel ?
Enfin, soyez prêts à affronter le front des critiques. Il y aura beaucoup d’arguments auxquels il vous sera possible d’opposer les quelques éléments d’information fournis ici mais il y en a d’autres, plus solides que valent la peine d’y réfléchir.
Par exemple, le choix de la version de Python, 2.7 ou 3.xx ? Une fois ce choix fait, il est impossible de revenir en arrière puisque la version 3.xx de Python n’est pas rétro-compatible avec la version 2.7. Chaque version a ses avantages et ses inconvénients mais dans la mesure du possible, essayez d’adopter la version 3 même si la plupart de la base de code installée en version 2.xx.
Les effets de mode liés à l’adoption d’une nouvelle technologie appartiennent, dans le cas de Python, au passé. Ne subsistent dès lors que les utilisateurs les mieux informés. Autant que vous soyez parmi eux !