Présenter le système de revue de logiciel de rOpenSci.
Vous motiver pour la revue de logiciel et code scientifique.
Présenter le système de revue de logiciel de rOpenSci.
Vous motiver pour la revue de logiciel et code scientifique.
Mon expérience est dans mais généralisable à d'autres languages.
🔗 Diapos disponibles https://tiny.cc/urfist-salmon
rOpenSci
Locke Data
R-hub
Gérante du compte Twitter de R-Ladies Global
Membre de l'équipe de R Weekly (et blogueuse R moi-même)
Éditrice pour le système de revue de paquets de 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é
https://ropensci.org/packages/
Extraction de données du web ou de formats exotiques, analyse de texte, etc.
Encourager le scriptage plutôt que le clic,
Réduire la duplication des efforts,
Libérer du temps et de l'énergie pour la science elle-même.
La qualité d'un logiciel, c'est important !
If you use software that lacks automated tests, you are the tests.
— Jenny Bryan (@JennyBryan) 22 de setembre de 2018
Comment assurer la qualité de nos paquets ?
Software peer review
Software peer review
Software peer review
Stimule l'adoption des meilleurs pratiques et standards.
Construit une communauté de pratique.
Software peer review
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
Licence compatible avec l'open-source initiative (OSI)
Documentation complète
Haut taux de couverture de test
Code lisible
Utilisabilité
Licence compatible avec l'open-source initiative (OSI)
Documentation complète
Haut taux de couverture de test
Code lisible
Utilisabilité
Licence compatible avec l'open-source initiative (OSI)
Documentation complète
Haut taux de couverture de test
Code lisible
Utilisabilité
Tout un livre ! https://ropensci.github.io/dev_guide
Ouverte & non-accusatoire
Pas de rejet
Ouverte & non-accusatoire
Pas de rejet
Un processus constructif pour tous les acteurs
Ouverte & non-accusatoire
Pas de rejet
Un processus constructif pour tous les acteurs
En pratique, utilisation de l'infrastructure de GitHub
Paquets hors du domaine visé non accueillis. https://ropensci.github.io/dev_guide/policies.html
Paquets hors du domaine visé non accueillis. https://ropensci.github.io/dev_guide/policies.html
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éospatiales, analyse de texte.
application scientifique
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éospatiales, analyse de texte.
application scientifique
meilleur que les paquets similaires
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éospatiales, analyse de texte.
application scientifique
meilleur que les paquets similaires
En cas de doute, demande de pré-soumission !
Deux réviseur·se·s.
Discussion continue jusqu'au transfert du paquet.
Deux réviseur·se·s.
Discussion continue jusqu'au transfert du paquet.
Souvent, un article de blog https://ropensci.org/tags/software-peer-review/
Découverte d'erreur
Amélioration (lisibilité, performance)
Apprentissage de trucs et astuces
Créer la culture pour changer les pratiques des journaux ?
Inspiration: rOpenSci Community Call, Code Review in the Lab, or ... How do you review code that accompanies a research project or paper?
Vidéo 🎥 et ressources 🗒: https://ropensci.org/commcalls/2018-10-16/
Standards de code
Liste de critères de revue
Automatisation
Culture, communauté
Notamment la structure de projet: rOpenSci révise des paquets R.
Pour tout projet avec du code R,
paquet R (research compendium),
structure plus simple ?
En tout cas, conventions dans l'équipe.
Que doit regarder le·a collègue qui lit le code ?
Priorité à quoi ?
Libérer du temps et de l'énergie pour ce qui compte : la science, et la créativité !
Automatisation via la structure de paquet (R CMD check
, goodpractice
)
pkgreviewr
par l'éditrice de rOpenSci Anna Krystalli
Libérer du temps et de l'énergie pour ce qui compte : la science, et la créativité !
Libérer du temps et de l'énergie pour ce qui compte : la science, et la créativité !
Paquet usethis
. usethis::create_project()
, usethis::use_r("ma-fonction")
, etc.
Recettes basées sur usethis
. Paquet starters
de Locke Data.
Donner de la valeur à la revue de code (temps non perdu).
Confiance pour ouvrir son code, et faire des remarques. blameless post-mortem. Hilary Parker's "Opiniated Analysis Development", also.
Donner de la valeur à la revue de code (temps non perdu).
Confiance pour ouvrir son code, et faire des remarques. blameless post-mortem. Hilary Parker's "Opiniated Analysis Development", also.
Besoin de formation. URFIST, The Carpentries.
https://ropensci.org/software-review/ (inclue lien pour devenir réviseur·se)
rOpenSci Community Call, Code Review in the Lab, or ... How do you review code that accompanies a research project or paper? Vidéo 🎥 et ressources 🗒: https://ropensci.org/commcalls/2018-10-16/
Forum de discussion de rOpenSci https://discuss.ropensci.org/
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 |