options(htmltools.dir.version = FALSE)
knitr::opts_chunk$set(
  fig.width=9, fig.height=3.5, fig.retina=3,
  out.width = "100%",
  cache = FALSE,
  echo = FALSE,
  message = FALSE, 
  warning = FALSE,
  fig.show = TRUE,
  hiline = TRUE
)
library(xaringanthemer)
style_mono_accent(
  base_color = "#2369bd",
  header_font_google = google_font("Playfair"),
  text_font_google   = google_font("Roboto", "300", "300i"),
  code_font_google   = google_font("Fira Mono"),
  text_font_size = "13pt",
  header_h1_font_size = "30pt",
  header_h2_font_size = "24pt",
  header_background_content_padding_top = "0rem",
)

Workshop overview

.pull-left[

:scale 100% .left[.small[This image was created by Scriberia for The Turing Way community and is used under a CC-BY licence (DOI 10.5281/zenodo.3332807).]]]

--

.pull-right[

Two main topics

Resources

]


Motivations for a better project organization and workflow

--

--

--

--


How? Use a research compendium!

.pull-left[

:scale 100% .left[.small[This image was created by Scriberia for The Turing Way community and is used under a CC-BY licence (DOI 10.5281/zenodo.3332807).]] ]

.pull-right[

This is a collection of all digital parts of a research project including data, code, texts (protocols, reports, questionnaires, metadata). The collection is created in such a way that reproducing all results is straight forward.

(Definition from The Turing Way)1

.footnote[ [1] Excursion to the TTW website

] ]


What is a research compendium?

.pull-left[

Principles

]

--

.pull-right[

Key components

]

.footnote[ from Karthik Ram's talk at RStudio::conf 2019 ]


:scale 100%


It's an 📦 R Package!

.pull-left[ .center[:scale 60% ]]

--

.pull-right[

]


Advantages of using R Packages

--

--

--


class: inverse

Hands-on I

Create a research compendium with the R package structure


Version control

.center[:scale 40%]


Git as a distributed version control system (VCS)


class: inverse

Hands-on II

Add version control to the research compendium


Automated testing

--

What?

--

Why?

--

How?


class: inverse

Hands-on III

Unit tests


Continous integration (CI)

--

.pull-left[

"If it hurts, do it more often" .right[(Martin Fowler)]

] -- .pull-right[

Ideas


background-image: url('images/github-actions-with-text.jpg') background-position: 100% 50% background-size: 40%

Github Actions for CI (and other automation tasks)

--

--

--

--

--

--

.right[.footer[.small[This image was created by Scriberiafor The Turing Way community
and is used under a CC-BY licence (DOI 10.5281/zenodo.3332807).]]]


class: inverse

Hands-on IV

Github Actions for R CMD check


Reproducibility and Accessability

Excursion to Karthik Ram's talk at RStudio::conf 2019

Holepunch


class: inverse

Hands-on V

Publish your repository on Binder with a live RStudio server instance



selinaZitrone/YoMos2020 documentation built on June 29, 2021, 2:08 p.m.