Être un•e utilisateur•rice de R résilient•e

Maëlle Salmon 🏠 https://masalmon.eu 🐦 ma_salmon

Licence CC-BY-SA

👋 Bonjour depuis Nancy !

Casque audio et petits hellos sur un fond jaune

Picture by Ann H on Pexels.

Mon parcours R

L3 biologie à l’ENS. Premiers pas de R, ⚡ passion pour R Graph Gallery!

Master écologie, mastère santé publique. Beaucoup de scripts.

Thèse de statistique. Contribution à un paquet ! R-Forge, Rd à la main, Sweave.

Statisticienne et gestionnaire de données. Utilisation de devtools, tidyverse, R Markdown, git.

En même temps que devtools &co : Twitter, blog R, soumission d’un paquet à rOpenSci, co-fondation du meetup R-Ladies Barcelona.

Projets récents

Diverses missions pour rOpenSci, notamment maintenance du package dev guide. 🔧

Blog (et docs) de R-hub pour les développeurs de paquets. 📰

Livre “HTTP testing in R” avec Scott Chamberlain. 📖

Autres missions ?

Instant pub. 😉

Besoin de prestations de développement ou formation en développement de paquets, R Markdown ?

Contactez-moi ! 📧 msmaellesalmon (at) gmail.com

Engagements actuels dans R

Compte Twitter de R-Ladies Global. 🐦

Éditrice pour le système de revue de paquets de rOpenSci. 📦

Diverses présentations de partage de connaissances. 😉

Retrouvez les diapos en ligne 😁

🔗 https://rresilient.netlify.app/

R, quelle joie de chaque instant ! …

… ou presque.

Personne prête à s'arracher les cheveux devant son ordinateur

Picture by Andrea Piacquadio on Pexels.

Limiter vos peines

En prévenant les problèmes :

  • Garder ses installations à jour ou pas;
  • Suivre les nouveautés sans anxiété de ratage.

En résolvant plus efficacement les problèmes :

  • tout·e seul·e;
  • En sachant comment et où demander de l’aide.

Prévention des problèmes

Personne assise dans la rue utilisant son ordinateur portable

Picture by Godisable Jacob on Pexels.

Mettre à jour votre pile technologique

Mettre R à jour

Pourquoi mettre R à jour ?

  • Compatibilité des paquets R les plus récents.

  • Plus on attend plus c’est dur de lire les changements.

Nouvelles de R

Comment mettre R à jour

Suivre les instructions pour son système opératoire. Ubuntu, suivre les conseils de Sébastien Rochette de ThinkR.

Ré-installer les paquets ou pas ? Cela dépend de la version. rstats.wtf. Nettoyage de printemps ?

Mettre les paquets à jour

Les nouvelles versions sont censées être meilleures.

Fruits frais dans un bol, avec autres fruits et muffins à côté

Picture by Trang Doan on Pexels.

Suivre les nouvelles du paquet ?

  • Via RStudio

  • Dépôt du paquet (release watch de GitHub), blog du paquet, etc.

À quoi s’attendre ?

Mes scripts vont-ils cesser de fonctionner après mise à jour du paquet ? 😱

Utiliser le miroir de CRAN sur GitHub. https://github.com/cran/testthat

Tout dépend du travail de communication autour du et dans le paquet.

Ne pas mettre à jour

Pour un papier, en production

Pause puis questions 🍵

05:00

Se tenir au courant

Disquette jaune

Picture by Pixabay on Pexels.

Pourquoi se tenir au courant ?

Améliorer votre travail actuel. Exemple : rex !

Résoudre vos problèmes futurs. Exemple : savoir que reticulate existe.

Personne lisant un journal avec un air surpris

Picture by Andrea Piacquadio on Pexels.

Comment se tenir au courant aide ?

Apprendre des choses sur les outils,

Connaître les organisations et personnes clés.

Croissant et journal sur un banc

Picture by Olya Kobruseva on Pexels.

Flux infinis d’information

Twitter #rstats hashtag, Twitter timeline.

GitHub timeline.

Difficiles à optimiser.

Rivière entre deux champs avec une barque dessus

Picture by Quang Nguyen Vinh on Pexels.

Flux infinis d’information

😌 Ne pas vouloir tout lire.

✂️ Silencier, optimiser avec Tweetdeck (expressions régulières) et RefinedGitHub ?

✨ Suivre les comptes utiles pour vous.

📖 Lire Twitter for R programmers.

🤷 Et si ça ne vous va pas, passez votre chemin ! Juste un compte pour renvoyer vers votre page ?

Nouvelles agrégées

Assortiment de donuts

Picture by cottonbro on Pexels.

Votre collection ?

Flux RSS de vos blogs préférés ! Y compris blogs des outils que vous utilisez.

Conférences

Auditorium vide

Picture by Pixabay on Pexels.

Conférences R

Allez-y ou…

Utilisez ce qui est en ligne (beaucoup de choses ces temps-ci 😬)

  • Lisez les programmes

  • Lisez les diapos

  • Regardez les vidéos

Conférences R, quand, où ?

R Weekly conferences section 🚀

Agenda, calendrier et stylo doré

Picture by Olya Kobruseva on Pexels.

R-Ladies aux conférences

Système de revue de résumés ! Merci à Jennifer Thompson !

Autres sources d’informations

📝 Package Pics mensuels de Joseph Rickert de RStudio

📓 Rzine

Pourquoi pas lire des bouquins

Big Book of R, collection de liens vers des livres R dont beaucoup sont gratuits !

Choisissez des livres récents.

Personne lisant un livre, assise par terre dans une bibliothèque

Picture by Wendy Wei on Pexels.

Pourquoi pas lire des bouquins

Dernier livre que j’ai lu, très utile : R Markdown Cookbook par Yihui Xie, Christophe Dervieux, Emily Riederer.

Couverture du livre R Markdown cookbook, avec des petites boules poilues sorcières

Discuter

Avec vos collègues

À des séminaires 😁

Réunion

Picture by Christina Morillo on Pexels.

Ne pas trop se tenir au courant

Se mettre à jour…Ce n’est pas tout suivre en direct !

Rien ne sert de tout lire.

Commit to your lock-in”. Au travail, avec vos outils peut-être imparfaits.

Que faire des infos ?

Les évaluer !

  • Comme toute information, au final.

  • En demandant à vos amis de R, cf la suite de cette présentation.

Pour les paquets il y a des critères objectifs.

Comment évaluer les paquets ?

Critères d’évaluation de paquets

  • Développement actif ?

  • Bien testé ?

  • Bien documenté ?

  • Populaire ?

  • Développé par quelqu’un / une organisation de confiance ?

Comment évaluer un paquet

DÉMO ! Allons voir dplyr.

Guides sur les paquets

Étagères pleines de paquets dans un hangar

Picture by Tiger Lily on Pexels.

Dev guide de rOpenSci

Tidyverse design guide

Que faire des informations ?

Appliquer de suite au travail ?

Explorer de suite ?

Conserver l’information.

Panneau de déviation

Picture by Luan Oosthuizen on Pexels.

Comment conserver les informations

Main écrivant sur des post-its

Picture by Bruno Bueno on Pexels.

Comment conserver les informations

Trouvez votre système privé ou public !

📌 Imprimer des aide-mémoires, en créer

📌 Créer une liste publique de favoris comme Suzan Baert

👀 Article de Lise Vaudor “Comment se souvenir de tout”

Pause puis questions ☕

05:00

Résolution des problèmes

Personne écrivant sur un bloc devant un ordinateur

Picture by Andrea Piacquadio on Pexels.

Ma typologie de questions sur R

Problème ! Bug ! Erreur !

Question/débat (y a-t-il un outil dans R pour faire foo? comment j’apprends bar? ggplot2 ou base plots ?)

Voyons d’abord comment résoudre seul·e ses problèmes.

Demander de l’aide ?

Après des efforts raisonnables.

🔍 Lecture de la documentation ;

🔍 Utilisation d’un moteur de recherche ;

🔍 Expérimentation.

Petite note

Éteindre et rallumer !

Ceci et autres bons conseils plus avancés dans une présentation de Jenny Bryan “Object of type ‘closure’ is not subsettable”.

Éteindre l’ordi, mais pas seulement

Un petit bingo

Moteur de recherche

Selon http://datacarpentry.org/semester-biology/materials/googling-for-help/

  • Bien choisir les mots (Ah ! Si facile…)
  • Pas trop de mots
  • Spécifier R

Évaluer la crédibilité des résultats (site, auteurs, date, scores, etc.)

Expérimenter comme une RDogLady

Trying stuff until it works

Image de The Practical Dev

Expérimenter comme une RCatLady

Changing stuff and seeing what happens

Image de The Practical Dev

Résoudre son erreur avec reprex

But : D’un bug dans un script au plus petit exemple possible.

reprex de Jenny Bryan & ses docs

  • Un concept, reprex pour “reproducible example.”

  • Un excellent paquet pour communiquer un reprex.

Pourquoi utiliser reprex ?

  • Le bug isolé est plus facile à résoudre, ou sera résolu en l’isolant !

  • Vous pouvez envoyer votre bug dans un format idéal pour les expert·es !

Démo de reprex !

Canard en caoutchouc sur une cible

Picture by icon0.com on Pexels.

Plus d’infos sur reprex &co

Un peu plus d’outils

Nouvelle démo ! browser()

Chats avec canards en caoutchouc

Picture by Peng Louis on Pexels.

Plus de ressources de débogage

💣 “debugging” dans Advanced R de Hadley Wickham

💣 Webinaire “Debugging techniques in RStudio” par Amanda Gadrow

Pause puis questions 🍪

05:00

Et si on n’y arrive pas ?

Laisser tomber 😭 ou demander de l’aide !

Pompiers

Picture by Pixabay on Pexels.

Où demander de l’aide ?

Le bon endroit dépend de

  • votre confiance en vous ;

  • votre question.

Personne s'apprêtant à choisir qui appeler avec son téléphone portable

Picture by Sound On on Pexels.

Endroits les plus rassurants

Vos collègues et ami·e·s

Endroits publics de Q&As 1/2

Twitter #rstats. Questions courtes ou lien vers questions plus longues.

Personne assise sur un fauteuil roulant devant son ordi

Picture by Marcus Aurelius on Pexels.

Endroits publics de Q&A 2/2

Paquets. Où ouvrir un ticket sur un bug ? Regarder dans la doc et dans un moteur de recherche.

Stack Overflow. Seulement pour des bugs, questions courtes.

Téléphone portable sur l'écran duquel est écrit 'error'

Picture by Polina Zimmerman on Pexels.

Où demander de l’aide ?

On peut devoir essayer plusieurs fois.

Personne se tenant la tête devant son ordi

Picture by Yan on Pexels.

Conclusion

Merci !

Aux organisateur·rice·s, et à vous tous !

Un petit résumé avant vos questions.

Thank you

Picture by Ann H on Pexels.

Du progrès, pas de la pression

Apprendre régulièrement, adopter reprex petit à petit…

Personne assise dans un parc heureuse avec ordinateur sur les genoux

Picture by Andrea Piacquadio on Pexels.

Aider les autres

  • Développeur·se·s, écrivez de bons NEWS.md, communiquez bien.

  • Partagez les informations qui vous sont utiles !

  • Répondez aux questions des autres. En plus ça vous aide vous-même !

Personne aidant une autre personne à l'ordinateur

Picture by Armin Rimoldi on Pexels.

🔗 https://rresilient.netlify.app/

Pour augmenter sa rrrésilience…

  • Mettre ses installations à jour (ou pas), se tenir au courant dans la mesure du possible;

  • Apprendre à mieux résoudre ses soucis, savoir demander de l’aide.

Panneau sur lequel est écrit questions, et réponses en plus grand

Picture by Pixabay on Pexels.