- Level Professional
- Duration 21 hours
- Course by Johns Hopkins University
-
Offered by
About
Writing good code for data science is only part of the job. In order to maximizing the usefulness and reusability of data science software, code must be organized and distributed in a manner that adheres to community-based standards and provides a good user experience. This course covers the primary means by which R software is organized and distributed to others. We cover R package development, writing good documentation and vignettes, writing robust software, cross-platform development, continuous integration tools, and distributing packages via CRAN and GitHub. Learners will produce R packages that satisfy the criteria for submission to CRAN.Modules
Introduction
1
Videos
- Welcome to Building R Packages
4
Readings
- Before You Start
- Using Mac OS
- Using Windows
- Using Unix/Linux
R Packages
9
Readings
- R packages
- Basic Structure of an R Package
- DESCRIPTION File
- NAMESPACE File
- Namespace Function Notation
- Loading and Attaching a Package Namespace
- The R Sub-directory
- The man Sub-directory
- Summary
The devtools package
3
Readings
- The devtools package
- Creating a Package
- Other Functions
Quiz: R Packages and devtools
1
Assignment
- R Package and devtools
Documentation
6
Readings
- Documentation
- Vignette's and README Files
- Knitr / Markdown
- Common knitr Options
- Help Files and roxygen2
- Common roxygen2 Tags
Data Within a Package
5
Readings
- Overview
- Data for Demos
- Internal Data
- Data Packages
- Summary
Software Testing Framework for R Packages
2
Readings
- Introduction
- The testthat Package
Passing CRAN checks
1
Readings
- Passing CRAN Checks
Documenting Code
1
Peer Review
- Documenting Code
Open Source Licensing
4
Readings
- Overview
- The General Public License
- The MIT License
- The CC0 License
Why Open Source?
5
Readings
- Overview
- Paying it Forward
- Linus’s Law
- Hiring
- Summary
Version Control and GitHub
10
Readings
- Introduction
- git
- Initializing a git repository
- Committing
- Browsing History
- Linking local repo to GitHub repo
- Syncing RStudio and GitHub
- Issues
- Pull Request
- Merge Conflicts
Software Design and Philosophy
6
Readings
- Introduction
- The Unix Philosophy
- Default Values
- Naming Things
- Playing Well With Others
- Summary
Quiz: Testing, GitHub and Open Source
1
Assignment
- Testing, GitHub, and Open Source
Continuous Integration
5
Readings
- Overview
- Web Services for Continuous Integration
- Using Travis
- Using AppVeyor
- Summary
Cross Platform Development
8
Readings
- Introduction
- Handling Paths
- Saving Files & rappdirs
- rappdirs
- Options and Starting R
- Package Installation
- Environmental Attributes
- Summary
Building an R Package
1
Peer Review
- Building an R Package
Auto Summary
"Building R Packages" is a professional course focusing on organizing and distributing R software for data science, ensuring it meets community standards and offers a good user experience. Taught by Coursera, the course spans 1260 minutes, covering R package development, documentation, robust software writing, cross-platform development, and distribution via CRAN and GitHub. Available through Starter and Professional subscriptions, it is ideal for data science professionals seeking to enhance their software development skills.

Roger D. Peng, PhD

Brooke Anderson