About this Course
4.2
144 ratings
38 reviews
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....
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Approx. 12 hours to complete

Suggested: 4 hours/week...
Comment Dots

English

Subtitles: English...

Skills you will gain

Programming ToolGithubContinuous IntegrationR Programming
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Approx. 12 hours to complete

Suggested: 4 hours/week...
Comment Dots

English

Subtitles: English...

Syllabus - What you will learn from this course

Week
1
Clock
3 hours to complete

Getting Started with R Packages

...
Reading
1 video (Total 2 min), 16 readings, 1 quiz
Reading16 readings
Before You Start10m
Using Mac OS10m
Using Windows10m
Using Unix/Linux10m
R packages10m
Basic Structure of an R Package10m
DESCRIPTION File10m
NAMESPACE File10m
Namespace Function Notation10m
Loading and Attaching a Package Namespace10m
The R Sub-directory10m
The man Sub-directory10m
Summary10m
The devtools package10m
Creating a Package10m
Other Functions10m
Quiz1 practice exercise
R Package and devtools20m
Week
2
Clock
7 hours to complete

Documentation and Testing

...
Reading
14 readings, 1 quiz
Reading14 readings
Documentation10m
Vignette's and README Files10m
Knitr / Markdown30m
Common knitr Options10m
Help Files and roxygen210m
Common roxygen2 Tags10m
Overview10m
Data for Demos10m
Internal Data10m
Data Packages10m
Summary10m
Introduction10m
The testthat Package10m
Passing CRAN Checks10m
Week
3
Clock
5 hours to complete

Licensing, Version Control, and Software Design

...
Reading
25 readings, 1 quiz
Reading25 readings
Overview10m
The General Public License10m
The MIT License10m
The CC0 License10m
Overview10m
Paying it Forward10m
Linus’s Law10m
Hiring10m
Summary10m
Introduction10m
git10m
Initializing a git repository10m
Committing10m
Browsing History10m
Linking local repo to GitHub repo10m
Syncing RStudio and GitHub10m
Issues10m
Pull Request10m
Merge Conflicts10m
Introduction10m
The Unix Philosophy10m
Default Values10m
Naming Things10m
Playing Well With Others10m
Summary10m
Quiz1 practice exercise
Testing, GitHub, and Open Source20m
Week
4
Clock
6 hours to complete

Continuous Integration and Cross Platform Development

...
Reading
13 readings, 1 quiz
Reading13 readings
Overview10m
Web Services for Continuous Integration10m
Using Travis10m
Using AppVeyor10m
Summary10m
Introduction10m
Handling Paths10m
Saving Files & rappdirs10m
rappdirs10m
Options and Starting R10m
Package Installation10m
Environmental Attributes10m
Summary10m
4.2
Direction Signs

25%

started a new career after completing these courses
Briefcase

83%

got a tangible career benefit from this course

Top Reviews

By CBMar 30th 2017

This is a critical skill and it's barely covered anywhere else. Thanks for making this course!

By CIOct 7th 2017

Overall, this was a good course to learn the intricacies of building R packages.

Instructors

Roger D. Peng, PhD

Associate Professor, Biostatistics
Bloomberg School of Public Health

Brooke Anderson

Assistant Professor, Environmental & Radiological Health Sciences
Colorado State University

About Johns Hopkins University

The mission of The Johns Hopkins University is to educate its students and cultivate their capacity for life-long learning, to foster independent and original research, and to bring the benefits of discovery to the world....

About the Mastering Software Development in R Specialization

This Specialization covers R software development for building data science tools. As the field of data science evolves, it has become clear that software development skills are essential for producing useful data science results and products. You will obtain rigorous training in the R language, including the skills for handling complex data, building R packages and developing custom data visualizations. You will learn modern software development practices to build tools that are highly reusable, modular, and suitable for use in a team-based environment or a community of developers....
Mastering Software Development in R

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.