-
Perl et sa communauté
-
Pourquoi l'étude de la communauté Perl et du CPAN ?
- RTGI crée et vend des outils d'analyse du web social
- 3 ans de développement en Perl
- Expérience en captation et en cartographie de communautés
-
La communauté Perl vue depuis le CPAN
Rapide rappel sur le CPAN
- 11 ans d'existence
- > 15 000 modules
- > 7000 auteurs
- des outils pour les développeurs et les utilisateurs (RT, CPANTS, etc.)
Mais peu d'informations sur les acteurs de cette communauté :
- pas de métrique sur les acteurs (à part Kwalitee)
- pas de visualisations sur les dépendances de modules
- pas de fonctions communautaires (cf. GitHub)
-
Provenance des données utilisées
- CPANTS contient une image complète du CPAN à un temps t
- Les données utilisées datent du mois de mars 2009
Nous avons réalisé 3 cartes :
- Carte des modules du CPAN
- Carte des auteurs du CPAN
- Carte de la communauté CPAN et Perl sur le web
-
Méthodologie de la carte des modules
Extraction des modules ayant un minimum de 10 dépendances et les modules qui en dépendent afin d'obtenir un graphe connexe
- Un noeud représente un module, son diamètre est fonction de son nombre de liens entrants
- Un arc représente une dépendance d'un module vers un autre module
- Les arcs ne sont pas pondérés
- Spatialisation avec Gephi (force-directed : les noeuds se repoussent mais les arcs les retiennent)
-
Comment lire la carte des modules
- Deux distributions écrasent l'ensemble (LWP et URI)
- Modules web (HTML::Parser, Template Toolkit, etc.)
- Autres éléments remarquables (Class::Accessor, Moose, XML::Simple, POE)
-
Comment lire la carte des modules
Zoom sur le modern Perl
- Moose et les extensions MooseX::*
- Proximité de Catalyst, framework web
- Très proche de DBIx::Class
Même communauté de développeurs pour ces 3 projets
Focus futur sur le portage de Catalyst en Moose
-
Comment lire la carte des modules
Zoom sur TK
- Isolé avec sa communauté
- Peu de connexions avec le reste du CPAN
Sûrement dû au côté graphique, applicatif et ancien
-
Méthodologie de la carte des auteurs
Extraction des auteurs correspondant aux modules
- Un noeud représente un auteur, son diamètre est fonction de son nombre de liens entrants
- Un arc représente l'utilisation par un auteur d'un module d'un autre auteur
- Les arcs sont pondérés
- Spatialisation avec Gephi (force-directed)
-
Comment lire la carte des auteurs
- Gisle Aas (développeur principal de LWP et URI) est au centre du CPAN
- Dave Rolsky (DateTime, Moose, ...)
- Adam Kennedy (un des plus gros développeurs sur le CPAN, > 200 distributions !)
- Michael Schwern (MakeMaker, Test::*)
- Ingy (YAML, Kwiki, IO::All, près de 100 modules)
- Steven Little (Moose, Class::MOP, ...)
- Matt Sergeant (XML::*, SQLite, ...)
-
Comment lire la carte des auteurs
Zoom sur le modern Perl
- Groupe composé des développeurs de Moose, Catalyst, DBIx::Class
- Situé en haut à gauche, on voit bien les noeuds de Steven, Sartak, perigin, jrockway, mstrout, nothingmuch, marcus ramberg
- Proximité bien visible de jrockway / steven / nothingmuch, qui travaillent ensemble
-
Comment lire la carte des auteurs
Zoom sur la communauté TK
- Situé en bas à droite avec Slaven Rezic en son centre
- Même constat que pour les modules TK, les auteurs se retrouvent également isolés du reste de la communauté
-
Méthodologie de la carte de la communauté sur le web
Crawl à partir des pages d'auteurs du CPAN issus du CPANTS (~700 auteurs)
- Un noeud représente un site, son diamètre est fonction de son nombre de liens entrants
- Un arc représente un lien hypertexte d'un site vers un autre
- Les arcs ne sont pas pondérés
- Spatialisation à l'aide de Gephi (force-directed)
-
Comment lire la carte de la communauté
Géographie de la carte, cinq communautés :
- Auteurs du CPAN
- Communauté et officiel
- Blogueurs Perl
- Monde de l'Open-source
- Sociétés
-
Comment lire la carte de la communauté
Éléments remarquables
- Deux interfaces :
- perl.org : ouverture sur la communauté et les blogueurs Perl
- cpan.org : ouverture sur la communauté open-source
- Pénétration des pages auteurs du CPAN : GitHub est plus central
- Place des sociétés, différences entre promotion et utilisation
- Sociétés de l'opensource
- Sociétés composées de perleurs, SixApart, NYT, BBC, etc.
- Booking et conférences européennes
- Grands projets opensource Perl
-
Comment lire la carte de la communauté
Zoom sur le modern Perl
- Existence en terme de présence sur le web remarquable comme sur les deux cartes issues du CPAN
- Proximité des blogs, des sociétés et des outils
-
Conclusion
- La communauté CPAN est déjà très structurée et vivante malgré les idées reçues (contests type Ironman, même si ça la renforce et la structure)
- On sent clairement la dynamique du modern Perl que ce soit au sein de la communauté ou avec l'extérieur
- Un premier état des lieux, voir la dynamique
-
http://cpan-explorer.org/
http://labs.rtgi.eu/fpw09/
http://gephi.org/