# R in CodeRefinery ## Meeting with R enthusiasts on 12.8.25 Attending: AM, HJ, RB, SW Agenda: - Introductions (all) - Give you an overview of the current state of R coverage and exercises in the CodeRefinery lessons (Radovan). - Brainstorm together: Share questions, ideas, and suggestions for improving or adding R-specific exercises. These can be entirely new exercises or additions to existing ones. (all) - Talk about contributing to CodeRefinery: do you have time, how to get started, where help is needed, and how your contributions can be credited. (Samantha) Notes: - Looking at upcoming workshop: https://coderefinery.github.io/2025-09-09-workshop/ (lesson links in schedule) - Git and GitHub: originally taught from Command line, now providing different ways: webbrowser, VSCode, Command line, RStudio (mentioned in some lessons) - Many researchers may interact with git only via Rstudio, we do not want to discourage that but show that it is good and can be used - R users should not feel left out - majority might use RStudio, VSCode coming, some also JupyteR - Day 1+2 : R sometimes mentioned, but could be improved - Day 3, less important but can also be checked - Jupyter - RMarkdown now often moved to Quarto - Does not need to get additions of RStudio but RStudio could be its own lesson (if anyone is interested in developing such), especially if in your experience researchers do not know about all the fun stuff that could be done. - Reproducible research: - Dependencies: Currently lot of Python perspective but R mentioned - Could get some more love for R and fact checking - R "targets" package - similar to snakemake - https://books.ropensci.org/targets/ - https://carpentries-incubator.github.io/targets-workshop/aio.html - Documentation: - Half of lesosn about README: general, good. - Other half: Sphinx, but what is used in R world? - Documentation in R associated with packages: Rmarkdown, Roxygen and function descritions - Quarto more like Jupyter - Learner persona: might not write packages, but "just writing R code" - What tools are there in R for documentation outside of code? - Nothing specific -> any other tools that you can write docs with - Quarto might be a possibility - Key in this lesson: write in some standard markup/ text, use tool to transform into what feels useful - Testing: - has exercises in R, could be checked if ok :) - Modular Code Development: Would love some input :) - How to organize code into smaller units etc - Current way of teaching: livecoding based on input from audience in Python - The walkthrough is wwritten down in solution. This could get an alternative in R. - Doable - From lesson review of also additional materials: - "python for scientific computing" (https://aaltoscicomp.github.io/python-for-scicomp/, will move under CodeRefinery during Autumn) -> Could also be done with R; please do! Whole new lesson though; good to collect a team :) - python MPI could also be translated - R for distributed computing: futures package - gpu programming may also be interesting to take a look, likely similar R cudas around? - useful for both R and Pyhton: visualization! - There is: https://coderefinery.github.io/data-visualization-python/ - It would be wonderful to have equivalent in R! Also here whole new lesson, please gather a team to work on it if wanted :) - another interesting topic: RShiny/ Quarto for interfaces and dashboards - general data processing/cleaning with R - Heli ran and will be running again: https://csc.fi/en/training-calendar/high-performance-r/ , lesson materials might be made public in the future - Comment: Hitting the boundaries of R executable : what can be done, hoe things can be made more efficient, rcpp - Comment: Reproducible R: targets package (something similar to snakemake) -> Please add as an issue to https://github.com/coderefinery/reproducible-research ## Possibilities to help: - Start discussion in chat (lessons channel has one topic for each lesson, it is also possible for you to add new topics) - OR Open an issue (for you or someone else to work on). Best way to find the correct repository is to go via the lesson page (linked from workshop schedule or https://coderefinery.org/lessons/#lessons-that-we-teach-in-our-tools-workshops) - > This is to start discussion or also just let others know that you are working on something. - Lessons are mainly written in Markdown and built with sphinx. All admonitions and tabs etc are described/shown in: https://github.com/coderefinery/sphinx-lesson-template - if you worked on something do not forget to add yourself as author in the Citation.cff (present in every lesson repository)! This is also if you did not yourself work on any lesson but gave some inputs as issues or in discussions, that make you feel like you would like to be part of authors. All lesson go to Zenodo, with new releases after every workshop == public credit for your work :heart: - Do not hesitate to reach out to Samantha or Radovan directly or also publicly in chat if you have any questions or want to discuss more. Happy also to arrange a co-writing session, if you would like that, just let us know. ## General questions: - (here was another one which i unfortunately was not fast enough to catch) - Debugging and optimization/profiling to tools workshop? - can become language dependent - some things can be independent though - please bring it into discussion via chat!