+ - 0:00:00
Notes for current slide
Notes for next slide

Notre système de revue en revue!
Présenter & analyser rOpenSci onboarding

Maëlle Salmon, éditrice pour rOpensci onboarding
ma_salmon maelle masalmon.eu

2018/06/23

1 / 51

Ma place dans la communauté R

  • Travail pour rOpenSci et Locke Data

  • R-Ladies Global social master

  • Membre de l'équipe de R Weekly

  • Éditrice bénévole pour rOpenSci

2 / 51

Qu'est-ce rOpenSci ?

3 / 51

Qu'est-ce rOpenSci ?

  • Communautés de chercheur·se·s et de développeur·se·s de logiciels

  • Paquets R pour la science ouverte et reproductible

  • Contributions par le personnel et la communauté

3 / 51

Les paquets de rOpenSci

https://ropensci.org/packages/

4 / 51

Les paquets de rOpenSci

https://ropensci.org/packages/

4 / 51

Les paquets de rOpenSci

https://ropensci.org/packages/

5 / 51

Les paquets de rOpenSci

https://ropensci.org/packages/

6 / 51

rOpenSci onboarding !

Comment assurer la qualité de tous les paquets ?

7 / 51

rOpenSci onboarding !

Comment assurer la qualité de tous les paquets ?

Revues de logiciels ouvertes. Onboarding = accueil et intégration.

7 / 51

rOpenSci onboarding !

Comment assurer la qualité de tous les paquets ?

Revues de logiciels ouvertes. Onboarding = accueil et intégration.

  • Stimule l'adoption des meilleurs pratiques et standards.
7 / 51

rOpenSci onboarding !

Comment assurer la qualité de tous les paquets ?

Revues de logiciels ouvertes. Onboarding = accueil et intégration.

  • Stimule l'adoption des meilleurs pratiques et standards.

  • Construit une communauté de pratique.

7 / 51

rOpenSci onboarding !

Comment assurer la qualité de tous les paquets ?

Revues de logiciels ouvertes. Onboarding = accueil et intégration.

  • Stimule l'adoption des meilleurs pratiques et standards.

  • Construit une communauté de pratique.

  • Partenariats avec le Journal of Open Source Software et Methods in Ecology and Evolution

7 / 51

Passer quoi en revue ?

8 / 51

Passer quoi en revue ?

Jeff Leek https://github.com/jtleek/rpackages

8 / 51

Critères de revue

  • Licence compatible avec l'open-source initiative (OSI)

  • Documentation complète

  • Haut taux de couverture de test

  • Code lisible

  • Utilisabilité

9 / 51

Critères de revue

  • Licence compatible avec l'open-source initiative (OSI)

  • Documentation complète

  • Haut taux de couverture de test

  • Code lisible

  • Utilisabilité

https://ropensci.github.io/dev_guide/building.html

9 / 51

Critères de revue

  • Licence compatible avec l'open-source initiative (OSI)

  • Documentation complète

  • Haut taux de couverture de test

  • Code lisible

  • Utilisabilité

https://ropensci.github.io/dev_guide/building.html

Tout un livre ! https://ropensci.github.io/dev_guide

9 / 51

Comment faire la revue ?

  • Ouverte & non-accusatoire
10 / 51

Comment faire la revue ?

  • Ouverte & non-accusatoire

  • Pas de rejet

10 / 51

Comment faire la revue ?

  • Ouverte & non-accusatoire

  • Pas de rejet

  • Un processus constructif pour tous les acteurs

10 / 51

Comment faire la revue ?

  • Ouverte & non-accusatoire

  • Pas de rejet

  • Un processus constructif pour tous les acteurs

  • En pratique, utilisation de l'infrastructure de GitHub

10 / 51

rOpenSci onboarding

11 / 51

Onglet de suivi des "problèmes"

12 / 51

Soumettre un paquet

13 / 51

Soumettre un paquet

14 / 51

Soumettre un paquet

15 / 51

Pas de rejets mais...

Paquets hors du domaine visé non accueillis.

https://ropensci.github.io/dev_guide/policies.html

16 / 51

Pas de rejets mais...

Paquets hors du domaine visé non accueillis.

https://ropensci.github.io/dev_guide/policies.html

  • nos catégories: accès à des données, extraction de données, accès à des formats de base de données, manipulation de données, dépôts de données,reproducibilité, données géospatialies, analyse de texte.
16 / 51

Pas de rejets mais...

Paquets hors du domaine visé non accueillis.

https://ropensci.github.io/dev_guide/policies.html

  • nos catégories: accès à des données, extraction de données, accès à des formats de base de données, manipulation de données, dépôts de données,reproducibilité, données géospatialies, analyse de texte.

  • application scientifique

16 / 51

Pas de rejets mais...

Paquets hors du domaine visé non accueillis.

https://ropensci.github.io/dev_guide/policies.html

  • nos catégories: accès à des données, extraction de données, accès à des formats de base de données, manipulation de données, dépôts de données,reproducibilité, données géospatialies, analyse de texte.

  • application scientifique

  • meilleur que les paquets similaires

16 / 51

Pas de rejets mais...

Paquets hors du domaine visé non accueillis.

https://ropensci.github.io/dev_guide/policies.html

  • nos catégories: accès à des données, extraction de données, accès à des formats de base de données, manipulation de données, dépôts de données,reproducibilité, données géospatialies, analyse de texte.

  • application scientifique

  • meilleur que les paquets similaires

En cas de doute, demande de pré-soumission !

16 / 51

Demande de pré-soumission ?

17 / 51

Demande de pré-soumission ?

18 / 51

Procédé de revue

19 / 51

Vérifications par l'éditeur·rice

20 / 51

Revues

21 / 51

Revues

22 / 51

Procédé de revue

Discussion jusqu'à acceptation et transfert du dépôt

23 / 51

Procédé de revue

Discussion jusqu'à acceptation et transfert du dépôt

Souvent un article de blogue https://ropensci.org/tags/review/

23 / 51

Un portrait par les données ?

Comment faire une analyse de données de rOpenSci onboarding?

24 / 51

Un portrait par les données ?

Comment faire une analyse de données de rOpenSci onboarding?

Rectanglons onboarding! Rectangler, mot inventé par Jenny Bryan

Image par Allie Brosh

24 / 51

Données dans le suivi des problèmes

25 / 51

Tisser les fils de "problèmes" GitHub

26 / 51

Tisser les fils de "problèmes" GitHub

GitHub GraphQL API v4. Mieux que v3? Obtenez seulement les données voulues.

26 / 51

Tisser les fils de "problèmes" GitHub

GitHub GraphQL API v4. Mieux que v3? Obtenez seulement les données voulues.

Mon expérience

26 / 51

Tisser les fils de "problèmes" GitHub

GitHub GraphQL API v4. Mieux que v3? Obtenez seulement les données voulues.

Mon expérience

26 / 51

Résultat : fils de GitHub tissés

Magie de GitHub V4 + un peu de domptage de données...

27 / 51

Résultat : fils de GitHub tissés

Magie de GitHub V4 + un peu de domptage de données...

## # A tibble: 2,521 x 10
## title created_at closed_at body user issue package
## <chr> <dttm> <dttm> <chr> <chr> <int> <chr>
## 1 rrli~ 2015-03-31 00:25:14 2015-04-13 23:26:38 "- 1~ rich~ 6 rrlite
## 2 rrli~ 2015-04-01 17:30:51 2015-04-13 23:26:38 "hey~ scko~ 6 rrlite
## 3 rrli~ 2015-04-01 17:36:03 2015-04-13 23:26:38 "@sc~ kart~ 6 rrlite
## 4 rrli~ 2015-04-02 03:36:09 2015-04-13 23:26:38 "Sur~ jero~ 6 rrlite
## 5 rrli~ 2015-04-02 03:50:43 2015-04-13 23:26:38 "IMO~ gabo~ 6 rrlite
## 6 rrli~ 2015-04-02 03:53:57 2015-04-13 23:26:38 "Ide~ rich~ 6 rrlite
## 7 rrli~ 2015-04-02 18:58:53 2015-04-13 23:26:38 "> H~ kart~ 6 rrlite
## 8 stpl~ 2015-04-08 23:56:17 2015-10-29 14:14:35 "- 1~ Robi~ 10 stplanr
## 9 rrli~ 2015-04-10 21:52:39 2015-04-13 23:26:38 "@ri~ stew~ 6 rrlite
## 10 rrli~ 2015-04-10 22:10:48 2015-04-13 23:26:38 "Tha~ rich~ 6 rrlite
## # ... with 2,511 more rows, and 3 more variables: is_review <lgl>,
## # commenter <chr>, role <chr>
27 / 51

Résultat : fils de GitHub tissés

## [1] 70

28 / 51

Données dans les dépôts accueillis

29 / 51

Données dans les dépôts accueillis

29 / 51

Données dans les dépôts accueillis

30 / 51

Données dans les dépôts accueillis

30 / 51

Données dans les dépôts accueillis

30 / 51

Données dans les dépôts accueillis

30 / 51

Données dans les dépôts accueillis

30 / 51

Regardons les données

31 / 51

Combien de travail pour ce système ?

32 / 51

Travail dans les dépôts

33 / 51

Âge à la soumission

34 / 51

Âge à la soumission

34 / 51

Temps de revue

35 / 51

Quelle taille font les paquets ?

Travail des auteurs

Travails pour les réviseur·se·s

36 / 51

Temps de revue vs. nombre d'exports

37 / 51

Notes sur la quantification du travail

38 / 51

Notes sur la quantification du travail

  • Difficile de définir des mesures.
38 / 51

Notes sur la quantification du travail

  • Difficile de définir des mesures.

  • Travail fait par des volontaires !

38 / 51

Notes sur la quantification du travail

  • Difficile de définir des mesures.

  • Travail fait par des volontaires !

  • Diminution du temps par automatisation.

38 / 51

Notes sur la quantification du travail

  • Difficile de définir des mesures.

  • Travail fait par des volontaires !

  • Diminution du temps par automatisation.

  • Et les éditeur·rice·s alors ? Selon Tim Trice (traduit), "anges gardiens du début à la fin du procédé d'accueil". Un paquet tous les un ou deux mois.

38 / 51

Procédé de qualité... et sympa ?

39 / 51

Procédé de qualité... et sympa ?

39 / 51

Météo sociale de rOpenSci onboarding

Essai d'Ann Gentle dans http://open-advice.org/

Impressions, exemples... approche plus générale ?

40 / 51

Météo sociale de rOpenSci onboarding

Essai d'Ann Gentle dans http://open-advice.org/

Impressions, exemples... approche plus générale ?

Analyse de texte !

40 / 51

Météo sociale de rOpenSci onboarding

Essai d'Ann Gentle dans http://open-advice.org/

Impressions, exemples... approche plus générale ?

Analyse de texte !

40 / 51

Mots les plus communs

41 / 51

Bigrammes les plus communs

42 / 51

Corrélations par paire

43 / 51

Sentiment

44 / 51

Sentiment

44 / 51

Mots des lignes négatives

45 / 51

Lignes les plus négatives

## # A tibble: 15 x 2
## line sentiment
## <chr> <dbl>
## 1 @ultinomics no more things, although do make sure to add mor~ -1.63
## 2 not sure what you mean, but i'll use different object names ~ -1.20
## 3 error in .local(.object, ...) : -1
## 4 error: -1
## 5 #### miscellaneous -1
## 6 error: command failed (1) -0.866
## 7 - get_plate_size_from_number_of_columns: maybe throwing an e~ -0.786
## 8 "this code returns an error, which is good, but it would be ~ -0.744
## 9 0 errors | 0 warnings | 0 notes -0.722
## 10 once i get to use this package more, i'm sure i'll have more~ -0.721
## 11 - i now realize i've pasted the spelling mistakes without th~ -0.707
## 12 minor issues: -0.707
## 13 ## minor issues -0.707
## 14 replicates issue -0.707
## 15 visualization issue -0.707
46 / 51

Lignes les plus positives !

## # A tibble: 15 x 2
## line sentiment
## <chr> <dbl>
## 1 absolutely - it's really important to ensure it really has b~ 1.84
## 2 overall, really easy to use and really nicely done. 1.73
## 3 this package is a great and lightweight addition to working ~ 1.46
## 4 i am very grateful for your approval and i very much look fo~ 1.26
## 5 thank you very much for the constructive thoughts. 1.24
## 6 thanks for the approval, all in all a very helpful and educa~ 1.22
## 7 - really good use of helper functions 1.14
## 8 - i believe the utf note is handled correctly and this is ju~ 1.13
## 9 seem more unified and consistent. 1.13
## 10 very much appreciated! 1.13
## 11 - well organized, readable code 1.1
## 12 - wow very extensive testing! well done, very thorough 1.1
## 13 - i'm delighted that you find my work interesting and i'm ve~ 1.08
## 14 thank you very much for your thorough and thoughtful review,~ 1.08
## 15 great, thank you very much for accepting this package. i am ~ 1.07
47 / 51

Engagez-vous, qu'il·elle·s disaient !

48 / 51

Éditeur·rice·s

thank(c("karthik", "noamross", "sckott"))

thank(c("lmullen", "annakrystalli", "ropensci"))

49 / 51

Merci !

bit.do/rr2018 | ma_salmon | maelle | masalmon.eu

50 / 51
51 / 51

Ma place dans la communauté R

  • Travail pour rOpenSci et Locke Data

  • R-Ladies Global social master

  • Membre de l'équipe de R Weekly

  • Éditrice bénévole pour rOpenSci

2 / 51
Paused

Help

Keyboard shortcuts

, , Pg Up, k Go to previous slide
, , Pg Dn, Space, j Go to next slide
Home Go to first slide
End Go to last slide
Number + Return Go to specific slide
b / m / f Toggle blackout / mirrored / fullscreen mode
c Clone slideshow
p Toggle presenter mode
t Restart the presentation timer
?, h Toggle this help
Esc Back to slideshow