Welcome to the Advanced R3 workshop!

  • ✔️ Pick up a table name from the bowl
  • ✔️ Go to the table name you picked
  • ✔️ Introduce yourself to your table mates
  • ✔️ Open your AdvancedR3.Rproj RStudio project
  • ✔️ Accept the GitHub organisation invitation (check your email or spam)

Motivation for this workshop

Largely from desire for more effective and actual collaboration

Very low reproducibility in most of science

From searching PubMed Central for all articles with search term: “(ipynb OR jupyter OR ipython) AND github”. From Samuel and Mietchen (2024).

Researchers don’t know how to collaborate effectively

We don’t get training in it, nor do we get much practice in it

Academia doesn’t encourage building and improving effective collaboration

One direct way to collaborate is working on shared code for a project

Reading others’ code is necessary to improve as an experienced coder

  • You aren’t reading others’ code if:

    • you don’t collaborate with others directly on their code
    • you aren’t doing code reviews with colleagues
    • researcher’s don’t share their code
  • If we all aren’t reading others’ code, we all aren’t improving

As you get more advanced, you learn that more coding isn’t a good thing

Research “product” is an asset, but code is a liability

With “AI” tools, generating (or “vibing”) lots of code is easy… but…

Problem: If you aren’t experienced in code, how can you assess it?

More code = means more reading, maintenance, and hidden bugs

Designing the analysis and code becomes even more important

Even before looking at the data

Well-designed code is a powerful enabler of effective collaboration

  • Better at communicating intent

  • Does more, with less

Goal of workshop: Create and nurture …

  • A culture of openness

  • Design thinking

  • Effective collaboration

Workshop details

Setup and layout

  • Workshop is mix of:
    • “Code-alongs” (we type and explain, you type along)
    • Hands-on coding, discussing, and reading exercises
    • A group project at the end
  • All material is online (and openly licensed)
  • Less about coding, more about:
    • Connecting and collaborating with others
    • Thinking about designing first, coding second
  • Networking and connecting:
    • Draw table name from bowl each morning
    • Introduce yourself to those at your table
    • During lunch, sit beside someone you don’t know
    • Several networking activities (usually after lunch)

Getting or asking for help 🙋‍♀️

  • Put the sticky (a.k.a. tiny paper hat 🎩) on your laptop to get help
  • There are lots of helpers
  • Table mates, help out too
  • We’re all learning here!
  • This is a supportive and safe environment
  • Remember our Code of Conduct

Practice using stickies/paper hats: Do you have RStudio open and accepted the GitHub invite?

Activities

🚶‍♀️🚶‍♂️ How do you perceive your skill in R?

🚶‍♀️🚶‍♂️ If code for a paper was audited, how confident are you that the results could be reproduced exactly?

No judgment!

🚶‍♀️🚶‍♂️ How often do you intentionally design your analysis before doing it?

🚶‍♀️🚶‍♂️ How often do you work on your own in your project(s)?

🚶‍♀️🚶‍♂️ How easy is it for others to collaborate on your project(s)?

🚶‍♀️🚶‍♂️ How many of you want to work more closely or collaboratively with others?

Alright, return to your seats! 🪑

References

Samuel, Sheeba, and Daniel Mietchen. 2024. “Computational Reproducibility of Jupyter Notebooks from Biomedical Publications.” GigaScience 13. https://doi.org/10.1093/gigascience/giad113.