Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: ✏️ align phrasing and layout of learning objectives #40

Merged
merged 2 commits into from
Oct 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions sessions/automated-testing.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,21 @@

The overall **learning outcome** for this session is to:

- Explain the meaning of continuous integration and *automated
1. Explain the meaning of continuous integration and *automated
testing* in the context of developing R packages and set up the
automation infrastructure.

Specific **objectives** are to:

- Describe the meaning of continuous integration (CI), how automated
1. Describe the meaning of continuous integration (CI), how automated
testing connects to it, and both of their roles in effective
development of R packages.
- Explain how GitHub Actions are a form of CI and how they they fit
2. Explain how GitHub Actions are a form of CI and how they they fit
within the R package development workflow.
- Set up a file by using the `{usethis}` package that tells GitHub
3. Set up a file by using the `{usethis}` package that tells GitHub
Actions to automatically test and run checks on your package
whenever you push code to GitHub.
- Navigate the logs of the GitHub Actions to assess errors, warnings,
4. Navigate the logs of the GitHub Actions to assess errors, warnings,
and other messages that may arise during the automated testing
process.

Expand Down
4 changes: 2 additions & 2 deletions sessions/creating-website.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@

## Learning objectives

The overall **learning outcome** for this session is:
The overall **learning outcome** for this session is to:

1. Explain the main benefits to creating a website for your package,
describe items that are useful to communicate to (potential) users,
and use the `{pkgdown}` package to auto-generate a website for you
whenever changes are made.

Specific **objectives** are:
Specific **objectives** are to:

1. Identify and list some benefits of using a website to communicate
details about your package.
Expand Down
14 changes: 7 additions & 7 deletions sessions/debugging.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,21 @@ debugger to debug code.

## Learning objectives

The overall learning outcome of this session is to:
The **overall learning** outcome of this session is to:

- Explain the concept of debugging in package development and apply
1. Explain the concept of debugging in package development and apply
formal tools and workflows within R and RStudio.

Specific objectives are:
Specific **objectives** are to:

- Explain debugging in the context of package development, and compare
1. Explain debugging in the context of package development, and compare
formal vs informal workflows for debugging.
- Identify how to start the debugger tool in RStudio, what it looks
2. Identify how to start the debugger tool in RStudio, what it looks
like when it is running, and use it to debug functions that cause
issues.
- Navigate and explain some basic `traceback()` error messages to help
3. Navigate and explain some basic `traceback()` error messages to help
identify which function is causing an error.
- Describe how "defensive programming" can help reduce errors and
4. Describe how "defensive programming" can help reduce errors and
inform where errors may occur by applying functions from the
`{checkmate}` and `{cli}` packages.

Expand Down
14 changes: 7 additions & 7 deletions sessions/documenting-functions.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,22 @@

## Learning objectives

The overall **learning outcome** for this session is:
The overall **learning outcome** for this session is to:

- Explain why high-quality, well-written function documentation is
1. Explain why high-quality, well-written function documentation is
important when creating a package intended to be used by others.

Specific **objectives** are:
Specific **objectives** are to:

- Describe the purpose of function-specific documentation and identify
1. Describe the purpose of function-specific documentation and identify
core components to include in the documentation.
- Use `{roxygen2}` to setup a template documentation structure and
2. Use `{roxygen2}` to setup a template documentation structure and
then write Markdown-based documentation within that template for
functions.
- Use the examples section of the documentation to help prototype and
3. Use the examples section of the documentation to help prototype and
informally check that the function works. Then later write more
example code that highlights how to use the function.
- Use `{devtools}` to automatically generate package documentation
4. Use `{devtools}` to automatically generate package documentation
that can be accessible when using `?function_name`.

## Documenting Functions
Expand Down
12 changes: 6 additions & 6 deletions sessions/function-development.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -30,21 +30,21 @@ package, documenting them, and how to stop your functions with an error.

## Learning objectives

The overall **learning outcome** for this session is:
The overall **learning outcome** for this session is to:

1. Review the core workflow in creating functions and describe
additional workflows and software development principles required to
formally (and effectively) develop functions within an R package.

Specific **objectives** are:
Specific **objectives** are to:

- Review and apply the workflow for converting code into a function.
- Identify approaches and "code patterns" for writing your functions
1. Review and apply the workflow for converting code into a function.
2. Identify approaches and "code patterns" for writing your functions
that ensure they are internally self-contained and reusable.
- Explain what package dependency means in the context of packages and
3. Explain what package dependency means in the context of packages and
how you formally manage dependencies when writing functions as part
of a package.
- Use control flow processes like `if () {} else() {}` to modify what
4. Use control flow processes like `if () {} else() {}` to modify what
a function does based on a condition.

## TODO: Section
Expand Down
4 changes: 2 additions & 2 deletions sessions/introduction.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ the keyboard.

## Learning objectives

The overall **learning outcome** for this session is:
The overall **learning outcome** for this session is to:

1. Explain in general terms why and how an R package can simplify your
work, as well as a high-level overview of the workflow in developing
an R package.

Specific **objectives** are:
Specific **objectives** are to:

1. Compare the differences in work and effort between creating simple
scripts to help with your and others' work and making a simple R package of
Expand Down
4 changes: 2 additions & 2 deletions sessions/package-setup.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@

## Learning objectives

The overall **learning outcome** for this session is:
The overall **learning outcome** for this session is to:

1. Describe what an R package looks like and create a basic package
setup using tools that help streamline and assist with these initial
tasks.

Specific **objectives** are:
Specific **objectives** are to:

1. Describe what a basic R package "physically" looks like, what the
required files and folders are, and what their purpose is.
Expand Down
4 changes: 2 additions & 2 deletions sessions/testing.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@

## Learning objectives

The overall **learning outcome** for this session is:
The overall **learning outcome** for this session is to:

1. Explain what *formal testing* means when developing packages,
describe how they are structured, and construct simple tests of
functions.

Specific **objectives** are:
Specific **objectives** are to:

1. Explain the difference between informal testing and formal testing,
as well as the different types of formal testing when developing R
Expand Down
14 changes: 7 additions & 7 deletions sessions/writing-guides.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,22 @@

## Learning objectives

The overall learning outcome of this session is to:
The overall **learning outcome** of this session is to:

- Describe the different types of documentation and explain when and
1. Describe the different types of documentation and explain when and
why to use each of them. Use this knowledge to create two types of
documentation within the context of an R package.

Specific learning objectives are to:
Specific **objectives** are to:

- Explain the purpose of a properly written README file and use the
1. Explain the purpose of a properly written README file and use the
`{usethis}` package to create one.
- Explain the purpose of writing vignettes for your package, the
2. Explain the purpose of writing vignettes for your package, the
different types of vignettes available, and create some using the
`{usethis}` package.
- Use the `{spelling}` package to ensure there are no major spelling
3. Use the `{spelling}` package to ensure there are no major spelling
issues in the documentation of your package.
- Describe where to look within R as well as outside of R to find
4. Describe where to look within R as well as outside of R to find
longer-form documentation of a package.

## TODO: Section
Expand Down