Des « CV GitHub » à base d’open data ?

La captation de données relatives aux contributions publiques des développeurs sur GitHub engendre des services tels que la création automatisée de « CV ».

Les développeurs sont-ils moins productifs en fin de semaine ? En 2019, un ingénieur de la mission Etalab avait établi des statistiques qui pouvaient le laisser entendre.

En tout cas sur le périmètre de la fonction publique d’État. L’intéressé avait plus précisément analysé, sur un intervalle d’environ quatre ans, des contributions GitHub de comptes auxquels était associée une adresse mail en .gouv.fr.

Principale source de ces travaux : GH Archive. Lancé il y a une dizaine d’années, ce projet est toujours actif (dernier commit : février 2022).

Son objectif, dans les grandes lignes : garder une trace de l’activité publique sur GitHub. Il exploite pour cela l’API de la plate-forme, afin de journaliser « plus d’une vingtaine » de types d’actions : ouverture de tickets, commentaires, ajout de membres à des projets, etc. En résultent, d’une part, des fichiers de logs compressés (JSON, gzip) sur base horaire. Et de l’autre, un dataset BigQuery. Au dernier pointage, le système capte autour de quatre millions d’événements par jour.

Les opportunités de captation et de mise en forme de ces données publiques ont engendré d’autres usages, plus ciblés. Par exemple, la création automatisée de « CV GitHub ». L’OSRC (Open Source Report Card) fut une référence en la matière… jusqu’à début 2015. Elle ne s’est jamais rétablie d’une modification technique côté GitHub (passage de l’API Timeline à l’API Events).

OSRC down

L’OSRC affichait un avertissement à l’attention des recruteurs. Entre les lignes, un appel à diversifier les sources.

OSRC avertissement

L’ingénieur Etalab avait lui aussi pris des pincettes au moment de publier ses conclusions. Tout ce que fait un développeur n’est pas nécessairement sur GitHub, faisait-il comprendre en substance. Tout en soulignant que l’activité sur les dépôts privés passait sous les radars.

GitHub Resume : un CV sur opt-in

GitHub Resume n’est pas mieux loti sur ce point. Il existait déjà du temps de l’OSRC, mais fait encore régulièrement parler de lui. À son origine, le dénommé David Coallier, passé notamment par Sophos et aujourd’hui principal dirigeant d’un éditeur (SaaS pour la gestion de réunions).

Au nombre de commits, les têtes de pont du projet sont françaises. D'un côté, Éric de Sousa, basé à Nantes. De l'autre, Nicolas Perriault (Montpellier).

Dans la pratique, les dernières modifications sur le code remontent à 2016. Officiellement, il s'agit toujours d'une v1. L'algorithme qui porte le service ne fait pas l'unanimité : créations de projets favorisées aux dépens des contributions, limite de l'historique de commits pris en compte, non-prise en compte des actions sur des projets dérivés, etc.

Alors que l'OSRC permettait de se renseigner sur tout profil, GitHub Resume ne peut créer de « CV » que pour les utilisateurs qui l'ont choisi. Le mécanisme d'opt-in exploite une fonctionnalité native de la plate-forme : il faut « étoiler » le projet pour manifester son consentement. Une technique que certains assimilent à du growth hacking...

Fondé sur un template de 2009, le CV fait figurer :

- Année d'ouverture du compte, nombre de dépôts publics et nombre de followers
- Langages utilisés et leur proportion (en %)
- Dépôts populaires (méthode de classement : somme des forks et des followers)
- Contributions (liste de projets)

Il existe une web app du même nom qui ne semble pas inclure de mécanisme d'opt-in. Elle ne présente pas tout à fait les mêmes informations, ajoutant par exemple la localisation du développeur et des précisions sur son statut vis-à-vis des projets (propriétaire, créateur...).

Illustration principale © GitHub