Github en Bretagne, partie 1

Première partie d'une exploration du réseau social de développeur, avec un focus sur la Bretagne (vous vous en doutiez).

Réseau social fétiche des développeurs de tous poils, Github est une plateforme collaborative qui permet de partager d'abord du code, mais aussi des documents, ou encore des pages web. Vous pouvez retrouver le compte github de Data Bzh ici, ainsi que celui de Colin et celui de Michel.

Sur le Github de Data Bzh, vous trouverez notamment les codes qui ont été utilisés pour créer les articles du blog.

À propos des données

Nous avons collecté ces données en effectuant des requêtes sur l'API Github avec R. Au total, nous avons collecté 1838 profils différents sur 10 villes les plus peuplées de la région plus une requête sur la région — parmi ces résultats, 116 sont des organisations, et 1722 sont des utilisateurs.

Les compagnies les plus représentées

Chaque profil peut indiquer appartenir à une société. Quelles sont les compagnies les plus représentées ?

En tête de gondole, Orange, avec plus de 20 utilisateurs enregistrés sur Github. Viennent ensuite EPAM Systems, une société de développement de logiciels (ce qui fait sens, donc), et Telecom Bretagne, une école d'ingénieurs.

Du monde à embaucher ?

Sur Github, il est possible d'afficher son "embauchabilité". Eh bien ce ne sont pas moins de 248 profils qui ont indiqués TRUE dans cet espace. Le reste ? Des données manquantes, ce qui reste indéterminé sur l'employabilité ou non des autres profils.

Qui sont les plus prolifiques ?

Sur la plateforme, les repositories (repo pour faire court) correspondent à des "sous dossier", que l'on peut envisager comme des projets à part entière, une unité de développement, une analyse, un module... Bref, un élément autonome de code.

Quelle répartition du nombre de repos par utilisateur ?

Globalement, les utilisateurs ne s'envolent que très rarement au delà de 10 repos... Avec un pic à 300 repos. Alors, qui sont ceux qui publient le plus ?

login public_repos
ndeloof 300
FGRibreau 203
Natim 183
thomasleveil 163
almet 157
ybonnel 121
LostInBrittany 121
pierrecarre 119
barais 116
nledez 115

Utilisateurs les plus suivis ?

En moyenne, les utilisateurs affichent 5,3 followers, avec un écart-type de 31,8... Un écart-type important qui reflète une large inégalité de la répartition de la popularité : en effet, l'utilisateur le plus suivi est AliSoftware, avec pas moins de 950 followers.

Voici les développeurs les plus suivis :

Et côté bio ?

Non, rien à voir avec l'appellation agricole, nous faisons ici référence aux biographies des utilisateurs, qui sont fournis par 434 profils.

Quels sont les termes les plus fréquents ?

word n
developer 77
student 73
web 48
rennes 37
engineer 36
software 35
computer 26
france 24
engineering 21
front 21

Sans surprise, une forte présence des termes clés du développement, en particulier web, et spécifiquement le front (en référence au développement front-end) et le software.

Un tour du côté des repos

Comme nous le disions plus haut, un repos est un dossier spécifique créé sur GitHub. Dans notre échantillon, 318 inscrits n'ont ouvert aucun repo sur le réseau social. Nous nous intéresserons donc aux 1520 autres.

Combien de repos ?

Au total, notre recherche sur l'API a permis de recueillir 13154 repositories pour Github en Bretagne. Sur cette base, 5300 sont des forks — les forks sont des copies sur son compte de repositories créés par d'autres, afin d'utiliser, d'améliorer ou de modifier un code écrit par un autre développeur.

Les langages les plus utilisés

Chaque repos est étiqueté d'un langage, c'est-à-dire du langage de programmation du code contenu dans ce repo. Quels sont ceux que le retrouve le plus en Bretagne ?

Langage ultra populaire, JavaScript se trouve en tête de gondole avec pas moins de 2500 repos. On retrouve ensuite Java, Python, PHP, HTML et CSS, cinq langages eux aussi très populaires.

Les repos les plus populaires

Deux indicateurs permettent de mesurer la popularité d'un repo : les stars, qui sont l'équivalent de mise en favoris, et le watch, qui est un bouton permettant de surveiller l'activité sur un repo. L'API Github ne nous a pas retourné les volumes de stars, nous avons cependant le nombre de "watchers" de chaque repos.

Voici donc les plus surveillés :

full_name language watchers_count
aterrien/jQuery-Knob JavaScript 5071
Okazari/Rythm.js JavaScript 2815
aurelhubert/ahbottomnavigation Java 2464
gildas-lormeau/zip.js JavaScript 1742
matcornic/hermes Go 1024
Lawouach/WebSocket-for-Python Python 860
neveldo/jQuery-Mapael JavaScript 827
ganfra/MaterialSpinner Java 746
FGRibreau/check-build JavaScript 700
citronneur/rdpy Python 614

Date de création des repos

Dans l'ensemble, sont-ce des repos récents ou plutôt anciens ?

Les plus vieux repos étant :

full_name language created_at
iMax-pp/pintme Python 2009-01-31 08:23:54
deruelle/mobicents Java 2009-02-13 16:59:02
rayene/littlepiggies Python 2009-02-25 10:39:43
Indiana-/upload_progress Ruby 2009-05-13 09:09:32
iMax-pp/Haiku-Browser C++ 2009-05-19 09:18:33
stanguy/scripts Python 2009-05-23 12:43:57
organicweb/limonade-wiki-example PHP 2009-06-03 10:14:18
iMax-pp/Reactive-Systems-Simulator C++ 2009-07-14 16:04:15
stanguy/emacs.d Emacs Lisp 2009-08-03 19:37:18
dchapillon/rennes-on-rails Ruby 2009-08-04 09:08:21

Et quand on compare update et date de création ?

On remarque que dans l'ensemble, les repos sont relativement mis à jour. Alors que certains ont été créés avant 2013, aucun n'affiche une date de mise à jour antérieur à cette date. Cependant, au vu du pic le premier mois de janvier, on peut s'interroger sur la justesse des résultats de l'API — ce fameux pic pourrait signifier un bug affectant toutes les mises à jour antérieures à cette date.

Les descriptions

Alors, de quoi est-il question dans ces repos ? Rapide text-mining des descriptions :

word n
project 447
web 440
simple 403
library 390
application 351
plugin 345
based 314
javascript 313
api 288
python 276

Et enfin : petit ou gros projet ?

L'API de Github renvoie la taille de chaque projet.

Alors, quels sont les plus gros projets sur Github Bretagne ?

full_name language size
needpower/0ad C++ 3118158
saoudimassi/Arduino-1 HTML 2855094
mboussaa/HXvariability NA 2816538
YoannGUILLO/azure-docs GCC Machine Description 2458877
eldruz/wesnoth C++ 1974034
Yannleonard/azure-docs.fr-fr HTML 1503584
jjehannet/xbmc C++ 1432943
BrittiaGuiriec/linux C 1361168
Watilin/YouTubeCenter HTML 1352637
strnk/linux-xlnx C 1352385

Retrouvez nous sur Github

Et comme d'habitude, retrouvez le code R qui a servi à réaliser ce post sur notre Github !

Colin FAY

Rédigé par: Colin FAY

Créateur et rédacteur en chef de Data Bzh.