- L’analyse conclut que la cause du déclin de Perl tenait à une culture de développement conservatrice et fermée, et non à des limites techniques
- La fierté d’une approche exclusive et d’une posture "d’expert" issue de la culture des administrateurs de systèmes UNIX à l’origine aurait freiné l’évolution du langage
- La séparation de Perl 6 est considérée moins comme un échec technique que comme une manifestation de conflits internes et de conservatisme au sein de la communauté
- Au même moment, Ruby on Rails, PHP et Python ont prospéré avec des cultures plus ouvertes et accessibles, remplaçant la place de Perl
- Perl reste un langage de script essentiel dans les environnements POSIX, mais son influence comme langage de développement de référence a diminué
Les origines culturelles et les limites de Perl
- Perl est né dans la culture des administrateurs de systèmes UNIX, dominée par des blagues internes comme RTFM et luser, avec des normes plutôt fermées
- Cette culture valorisait la monopolisation des connaissances et le maintien de barrières à l’entrée, et considérait la difficulté elle-même comme un signe de compétence
- Il en est résulté une structure fortement collective, avec une forte résistance face aux nouveaux utilisateurs et au changement
- Cette attitude est comparée à une culture de forteresse assiégée
- Les membres internes faisaient leur propre difficulté technique un motif de fierté, et négligeaient les tentatives de simplification venues de l’extérieur
- Cela a conduit à une structure de type caste, selon laquelle seuls les « qualifiés » peuvent entrer
Structure de la communauté Perl et scission de Perl 6
- Perl affiche le principe TIMTOWTDI (There Is More Than One Way To Do It)
- Mais ce principe a renforcé le conservatisme de l’évolution du langage : le cœur du langage est resté figé et l’innovation a été repoussée vers la périphérie de CPAN
- La structure centrée sur CPAN a engendré une confusion de dépendances (dependency hell)
- Perl 6 est apparu comme le résultat d’un conflit interne et le symbole d’une division
- Perl 5 privilégiait l’utilité pratique et la stabilité, Perl 6 visait l’innovation et l’idéal : une bipolarisation culturelle s’en est suivie
- Le développement de Perl 6 a été retardé de plus de 15 ans, et il a été qualifié de « projet open source le plus waterfall »
- À cette époque, Perl était peu accueillant pour les nouveaux développeurs et la communauté est devenue plus fermée
L'essor des langages concurrents
- Ruby conserve une syntaxe proche de Perl, tout en faisant de la « joie du programmeur » et de la bienveillance des valeurs centrales
- Ruby on Rails a connu un succès fulgurant grâce à des outils conviviales pour les développeurs et une structure cohérente
- Perl a créé plusieurs frameworks similaires, mais leur diffusion a échoué faute de compatibilité mutuelle et de facilité d’intégration
- PHP s’est imposé comme un langage centré sur l’utilisateur, avec une installation et un déploiement simples, ce qui lui a permis une adoption de masse
- Devenu l’ossature de plateformes comme WordPress, il s’est imposé comme le langage d’entrée de génération des développeurs web
- Python a démarré dans un cadre académique, en maintenant une évolution progressive et des principes de conception clairs
- Après son adoption par Google, il a connu une croissance stable, et sa philosophie « batteries incluses » (batteries included) a garanti sa praticité
Le présent et l'héritage de Perl
- Perl demeure un langage de script POSIX installé par défaut sur la plupart des systèmes
- Il reste largement utilisé dans de nombreux systèmes hérités et scripts d’automatisation
- Mais il est presque inexistant comme choix par défaut dans de nouveaux projets
- Les principales innovations laissées par Perl
- Intégration des expressions régulières et extension syntaxique
- Distribution de paquets basée sur Internet via CPAN et vérification des signatures
- Diffusion des concepts de bâti de test automatisé (TAP) et de CI
- Réduction de la frontière entre shell et programmation système par l’intégration des fonctionnalités POSIX
- Innovation en documentation grâce au système POD
Conclusion : la culture qui a façonné le succès et le déclin
- Perl a connu une croissance explosive dans les débuts du web des années 1990 en reliant deux cultures (administrateurs UNIX et développeurs web)
- Pourtant, une culture conservatrice et fermée n’a pas su s’adapter au changement, ce qui l’a fait sortir du courant dominant
- Malgré cela, Perl est reconnu comme l’un des langages qui ont posé les bases du développement logiciel moderne
- L’auteur affirme que Perl ne disparaîtra pas et qu’il demeurera tant que POSIX existera
- Aujourd’hui, des langages émergents comme Rust ou TypeScript empruntent à nouveau le chemin de transition culturelle autrefois parcouru par Perl
Aucun commentaire pour le moment.