-
Notifications
You must be signed in to change notification settings - Fork 4
/
index.qmd
89 lines (67 loc) · 6.37 KB
/
index.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
---
title: "Good Software Engineering Practice for R Packages"
description: 'useR! 2024 Tutorial'
author: Daniel Sabanés Bové and Friedrich Pahlke
institute: '[![RCONIS](slides/resources/RCONIS_100.png)](https://www.rconis.com "RPACT Company Website")'
creator: Daniel Sabanés Bové and Friedrich Pahlke
keywords: "rconis, gswep, r, gxp"
email-obfuscation: javascript
title-meta: 'rconis'
---
```{=html}
<!--
Creators (initial authors):
- Daniel Sabanes Bove, https://github.com/danielinteractive/ and www.linkedin.com/in/danielsabanesbove/
- Friedrich Pahlke, https://github.com/fpahlke/ and www.linkedin.com/in/pahlke/
- Kevin Kunzmann, https://github.com/kkmann/ and https://www.linkedin.com/in/kevin-kunzmann-6486a11bb/
- Liming Li, https://github.com/clarkliming
- Joe Zhu, https://github.com/shajoezhu and http://www.linkedin.com/in/joe-zhu-464b5818
- Shuang Li, https://github.com/shuangli22
- Doug Kelkhoff, https://github.com/dgkf and https://www.linkedin.com/in/doug-kelkhoff/
- Philippe Boileau, https://github.com/philboileau and https://www.linkedin.com/in/philippe-boileau-773270205/
- Lukas A. Widmer, https://github.com/luwidmer and https://www.linkedin.com/in/lukas-widmer-37800b9b/
- Michael Mayer, https://www.linkedin.com/in/drmichaelmayer/
The current version was edited by
- Daniel Sabanes Bove, https://github.com/danielinteractive/ and www.linkedin.com/in/danielsabanesbove/
- Friedrich Pahlke, https://github.com/fpahlke/ and www.linkedin.com/in/pahlke/
License: This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.
To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/.
The source files are hosted at https://github.com/RCONIS/user2024-tutorial-gswep, which is forked from and a subset of the original version at https://github.com/RCONIS/workshop-r-swe-zrh,.
Important: To use this work you must provide the name of the creators (initial authors), a link to the material, a link to the license, and indicate if changes were made.
-->
```
Welcome to the homepage of the tutorial *"Good Software Engineering Practice for R Packages"*, part of the [useR! Conference 2024](https://events.linuxfoundation.org/user/) in Salzburg, Austria. In this course you will learn hands-on skills and tools to engineer reliable R packages. The workshop will be conducted in about 3 hours and will be a mix of presentations and exercises. Participants need to be comfortable with writing functions in R and use their own laptops as a prerequisite.
## Event Details
This live event will be held on Monday July 8, 2024 14:00 - 17:30 CEST as an in-person tutorial in the room [Tennegau](https://userconf2024.sched.com/venue/Tennegau?iframe=no).
## Description
Join us for an engaging 3-hour face-to-face course designed to enhance your R programming skills with a focus on developing reliable R packages used in statistics or data science. This course is a blend of informative presentations and interactive team exercises, aimed at equipping participants with practical tools and techniques for engineering high-quality R packages. Throughout the session, you will collaborate to build a small R package that adheres to clean code rules and incorporates good software engineering practices.
This course is tailored for individuals who are comfortable with writing functions in R and are looking to elevate their package development skills. Bring your laptop and be prepared to transform your approach to R package development through hands-on learning and collaboration. Whether you're looking to improve your workflow, meet regulatory standards, or simply enhance the quality of your statistical tools, this course offers valuable insights and skills to achieve your goals.
## Learning Outcomes
Learn, understand, and practice good software engineering rules. Participants will delve into the significance of good engineering habits to avoid the pitfalls of maintenance overload, inefficient development, and regulatory non-compliance. By emphasizing best practices, the course will guide them towards faster releases on CRAN, saving valuable time on refactoring for PoC to release version transitions, and fostering an open environment for community contributions on GitHub. All course materials, including R scripts, will be shared with participants via GitHub, providing easy access to resources for continued learning and application beyond the course.
## Schedule
| Time | Topic |
|--------------------|:---------------------------------------------|
| 14:00 - 14:30 CEST | Introduction and outline |
| 14:30 - 15:15 CEST | R packages, what are they? + practical |
| 15:15 - 15:45 CEST | Workflow for creating R packages + practical |
| 15:45 - 16:30 CEST | R Package quality + exercise |
| 16:30 - 17:15 CEST | Publication of R packages + practical |
| 17:15 - 17:30 CEST | Conclusion |
## Prerequisites & Technical Setup
Prior to the course, participants should:
- Install the latest [R](https://www.r-project.org/) and [RStudio](https://posit.co/download/rstudio-desktop/) software.
- Install [Rtools](https://cran.r-project.org/bin/windows/Rtools/rtools43/rtools.html) (only on Windows).
- Install additional R packages using the [installation script](slides/download/install.R).
- Download and extract [simulatr.zip](slides/download/simulatr.zip)
For the course, participants are required to use their own laptop to be able to participate in the exercises.
### Optional reading list
- Excellent and very comprehensive [R Packages (2e)](https://r-pkgs.org/)
- (Hardcore) description about [Writing R Extensions](https://cran.r-project.org/doc/manuals/R-exts.html) works
- Minimum Viable Good Practices for High Quality Statistical Software Packages: [openstatsguide](https://www.openstatsware.org/guide.html)
## Past Events
- [10th February 2023, Basel, CH](https://kkmann.github.io/workshop-r-swe/)
- [24th March 2023, Shanghai, CN](https://openpharma.github.io/workshop-r-swe/)
- [20th July 2023, San José, CA, US](https://openpharma.github.io/workshop-r-swe-sf/)
- [26th September 2023, Rockville, MD, US](https://openpharma.github.io/workshop-r-swe-md/)
- [16th and 17th October 2023, Montreal, QC, CA](https://openpharma.github.io/workshop-r-swe-mtl/)
- [18th and 19th April 2024, Zurich, CH](https://rconis.github.io/workshop-r-swe-zrh/)