Sorry, this page is no longer available
Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Candace Savonen, MS

This course introduces tools that help enhance reproducibility and replicability in the context of cancer informatics. It uses hands-on exercises to demonstrate in practical terms how to get acquainted with these tools but is by no means meant to be a comprehensive dive into these tools. The course introduces tools and their concepts such as git and GitHub, code review, Docker, and GitHub actions.

Target Audience

Read more

This course introduces tools that help enhance reproducibility and replicability in the context of cancer informatics. It uses hands-on exercises to demonstrate in practical terms how to get acquainted with these tools but is by no means meant to be a comprehensive dive into these tools. The course introduces tools and their concepts such as git and GitHub, code review, Docker, and GitHub actions.

Target Audience

The course is intended for students in the biomedical sciences and researchers who use informatics tools in their research. It is the follow up course to the Introduction to Reproducibility in Cancer Informatics course. Learners who take this course should:

- Have some familiarity with R or Python

- Have take the Introductory Reproducibility in Cancer Informatics course

- Have some familiarity with GitHub

Motivation

Data analyses are generally not reproducible without direct contact with the original researchers and a substantial amount of time and effort (BeaulieuJones, 2017). Reproducibility in cancer informatics (as with other fields) is still not monitored or incentivized despite that it is fundamental to the scientific method. Despite the lack of incentive, many researchers strive for reproducibility in their own work but often lack the skills or training to do so effectively.

Equipping researchers with the skills to create reproducible data analyses increases the efficiency of everyone involved. Reproducible analyses are more likely to be understood, applied, and replicated by others. This helps expedite the scientific process by helping researchers avoid false positive dead ends. Open source clarity in reproducible methods also saves researchers' time so they don't have to reinvent the proverbial wheel for methods that everyone in the field is already performing.

Curriculum

The course includes hands-on exercises for how to apply reproducible code concepts to their code. Individuals who take this course are encouraged to complete these activities as they follow along with the course material to help increase the reproducibility of their analyses.

**Goal of this course:**

To equip learners with a deeper knowledge of the capabilities of reproducibility tools and how they can apply to their existing analyses scripts and projects.

**What is NOT the goal of this course:**

To be a comprehensive dive into each of the tools discussed. .

How to use the course

Each chapter has associated exercises that you are encourage to complete in order to get the full benefit of the course

This course is designed with busy professional learners in mind -- who may have to pick up and put down the course when their schedule allows. In general, you are able to skip to chapters you find a most useful to (One incidence where a prior chapter is required is noted).

Each chapter has associated exercises that you are encourage to complete in order to get the full benefit of the course

Enroll now

What's inside

Syllabus

Getting started in this course
This section describes the rationale and context for this course as well as its target audience.
Defining Reproducibility
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Helps equip learners with reproducibility tools such as Git, Docker, and GitHub actions
Increases efficiency for everyone involved by equipping researchers with skills to create reproducible data analyses
Designed for learners with some familiarity with Git, GitHub, R, and Python
Provides hands-on exercises for applying reproducible code concepts
Suitable for students in biomedical sciences and researchers using informatics tools
Assumes some familiarity with GitHub and Python or R

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Practical reproducibility for cancer informatics

According to learners, this course offers a highly relevant and well-structured approach to reproducibility in cancer informatics. Students particularly appreciate the hands-on exercises, which facilitate learning essential reproducibility tools like Git, GitHub, and Docker. While providing valuable skills for applying concepts to existing analyses, learners should be aware that it's not a comprehensive dive into each tool. The course is best suited for those who meet the prerequisites, which are crucial for success.
Introduces key tools without exhaustive detail.
"The course provides a solid introduction to Git, Docker, and GitHub Actions, which are critical tools."
"It's not a deep dive into every nuance of Docker, but it covers enough to get you started with reproducible environments."
"I now have a clear understanding of the purpose and basic usage of these reproducibility technologies."
Designed for busy professionals with modular content.
"The modular design is perfect for someone with a demanding work schedule; I could pick it up and put it down easily."
"I appreciated the ability to skip directly to relevant chapters without feeling lost, truly professional-friendly."
"This course respects your time and lets you learn at your own pace, which is a huge plus for researchers."
Enhances understanding through practical activities.
"The exercises really solidified my understanding of how to implement version control and Docker."
"Completing the hands-on activities made the abstract concepts of reproducibility concrete and manageable."
"I appreciate the balance between theory and practical application; the labs were excellent."
Directly applicable for research in cancer informatics.
"I found the concepts immediately applicable to my ongoing research projects in cancer data analysis."
"The focus on applying reproducibility to existing analyses was incredibly valuable for my work."
"This course equips researchers with skills essential for robust and verifiable scientific work."
Assumes prior knowledge in R/Python and GitHub.
"Ensure you have a good grasp of Python or R and GitHub basics before starting; it moves quickly."
"As a follow-up, it truly builds on the introductory course, so don't skip that one."
"I struggled a bit with the pace on GitHub sections because my prior familiarity was minimal, which was my fault."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Advanced Reproducibility in Cancer Informatics with these activities:
Organize Course Resources
Organizing your course resources will help you stay on top of the material and easily access important information.
Browse courses on Organization
Show steps
  • Create a dedicated folder or notebook for course materials
  • Download and save all relevant lecture notes, slides, and assignments
  • Categorize and label your materials for easy retrieval
Review Version Control
Reviewing the concepts and fundamentals of version control in advance will help you complete code challenges more effectively.
Browse courses on Git
Show steps
  • Read the documentation of the version control tool you plan to use for this course
  • Watch a video tutorial on version control
  • Install the version control tool on your computer
  • Create a new repository and commit your changes
  • Fork and clone an existing repository
Find a Kubernetes Mentor
Finding a Kubernetes mentor can help you navigate the course material more effectively and gain valuable insights from an experienced professional.
Browse courses on Kubernetes
Show steps
  • Identify potential mentors through online platforms and professional networks
  • Reach out to your mentors and express your interest
  • Establish clear expectations and a meeting schedule
Eight other activities
Expand to see all activities and additional details
Show all 11 activities
Guided Tutorials: Docker
Engaging in guided tutorials will help reinforce your understanding of Docker by providing you with hands-on experience.
Browse courses on Docker
Show steps
  • Find and access a relevant and reputable tutorial on Docker
  • Set up your development environment
  • Follow the tutorial to create your first Docker image
  • Run your Docker image and verify its operation
Solve Docker Exercises
Sharpen your Docker skills by completing practice exercises and reinforce the concepts covered in the course.
Browse courses on Docker
Show steps
  • Find online Docker exercises or tutorials
  • Solve exercises to create and manage Docker containers
Code Review Practice
Practicing code review will improve your ability to critically evaluate and identify areas for improvement in your own code.
Browse courses on Code Review
Show steps
  • Find resources and tutorials on code review best practices
  • Identify a codebase or project where you can contribute code reviews
  • Review and provide feedback on code changes
  • Incorporate the feedback you receive on your own code
Explore GitHub Actions Tutorial
Enhance your understanding of GitHub Actions by following guided tutorials and deepen your knowledge beyond the course materials.
Browse courses on Github Actions
Show steps
  • Find and follow a comprehensive GitHub Actions tutorial
  • Build and test a workflow using GitHub Actions
Write a Docker Tutorial
Creating a Docker tutorial will deepen your understanding of the subject and reinforce your ability to explain complex concepts clearly.
Browse courses on Docker
Show steps
  • Identify the specific topic or aspect of Docker you want to cover
  • Research and gather relevant information and resources
  • Outline the structure and content of your tutorial
  • Write the tutorial, ensuring clarity and accessibility
  • Publish and share your tutorial with others
Mentor a Junior Coder
Mentoring a junior coder will reinforce your knowledge of the course material and enhance your communication and teaching skills.
Browse courses on Mentoring
Show steps
  • Identify a junior coder who is interested in learning about reproducible code practices
  • Establish a regular meeting schedule and communication channel
  • Review their code, provide constructive feedback, and guide their learning
  • Share resources, articles, and tutorials to support their growth
Build a Reproducible Analysis Pipeline
Apply the concepts learned in the course by building a reproducible analysis pipeline for a real-world dataset.
Show steps
  • Choose a dataset and define the analysis goals
  • Write a code script or notebook for the analysis
  • Containerize the analysis environment with Docker
  • Automate the pipeline using GitHub Actions
Contribute to a Docker Project
Contributing to an open-source Docker project will give you valuable hands-on experience and allow you to learn from the best in the field.
Browse courses on Docker
Show steps
  • Identify an open-source Docker project that aligns with your interests
  • Review the project's documentation and codebase
  • Identify an area where you can make a contribution
  • Submit a pull request with your proposed changes
  • Collaborate with the project maintainers to refine and merge your contribution

Career center

Learners who complete Advanced Reproducibility in Cancer Informatics will develop knowledge and skills that may be useful to these careers:
Bioinformatics Scientist
A Bioinformatics Scientist develops software tools to collect, manage, analyze, and interpret biological data. Studying the Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Computational Biologist
A Computational Biologist uses computational tools to analyze and interpret biological data. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Data Scientist
A Data Scientist uses scientific methods, processes, algorithms, and systems to extract knowledge and insights from data in various forms, both structured and unstructured. Studying the Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Research Analyst
A Research Analyst conducts research and analyzes data to provide insights and recommendations to clients. Studying the Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Research Scientist
A Research Scientist conducts research to advance scientific knowledge and develop new technologies. The Advanced Reproducibility in Cancer Informatics course can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics, which may be useful for this role.
Statistician
A Statistician collects, analyzes, interprets, and presents data to provide insights and make predictions. The Advanced Reproducibility in Cancer Informatics course can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics, which may be useful for this role.
Machine Learning Engineer
A Machine Learning Engineer designs, develops, and deploys machine learning models to solve real-world problems. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Health Informatics Specialist
A Health Informatics Specialist uses health information technology to improve healthcare delivery and patient outcomes. The Advanced Reproducibility in Cancer Informatics course can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics, which may be useful for this role.
Quantitative Analyst
A Quantitative Analyst develops and implements mathematical and statistical models to analyze data and make predictions. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Software Developer
A Software Developer designs, develops, and maintains software applications. Studying the Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Database Administrator
A Database Administrator designs, develops, and maintains databases. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Data Analyst
A Data Analyst collects, processes, and analyzes data to extract meaningful insights. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Systems Analyst
A Systems Analyst designs, develops, and maintains computer systems. The Advanced Reproducibility in Cancer Informatics course can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics, which may be useful for this role.
User Experience Designer
A User Experience Designer designs and evaluates user interfaces to ensure that they are user-friendly and efficient. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.
Web Developer
A Web Developer designs, develops, and maintains websites. The Advanced Reproducibility in Cancer Informatics course may be useful, as it can help build a foundation in using tools that enhance reproducibility and replicability in the context of cancer informatics.

Reading list

We've selected 11 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Advanced Reproducibility in Cancer Informatics.
Provides a practical introduction to scientific computing, covering topics such as numerical methods, data analysis, and visualization. It valuable resource for anyone who wants to learn more about the computational aspects of research.
Provides a comprehensive introduction to version control with Git, covering topics such as branching, merging, and rebasing. It valuable resource for anyone who wants to learn more about version control.
Provides a comprehensive introduction to Docker, covering topics such as building, running, and managing containers. It valuable resource for anyone who wants to learn more about Docker.
Provides a comprehensive guide to writing clean code, covering topics such as naming conventions, error handling, and testing. It valuable resource for anyone who wants to learn more about writing clean code.
Provides a classic discussion of software engineering, covering topics such as project management, team dynamics, and software design. It valuable resource for anyone who wants to learn more about software engineering.
Provides a classic discussion of open source software development, covering topics such as the role of community, the importance of transparency, and the benefits of collaboration. It valuable resource for anyone who wants to learn more about open source software development.
Provides a comprehensive guide to version control with Subversion, covering topics such as branching, merging, and rebasing. It valuable resource for anyone who wants to learn more about version control.
Provides a comprehensive guide to DevOps, covering topics such as culture, automation, and measurement. It valuable resource for anyone who wants to learn more about DevOps.
Provides a comprehensive guide to site reliability engineering, covering topics such as incident management, performance engineering, and disaster recovery. It valuable resource for anyone who wants to learn more about site reliability engineering.
Provides a novelistic introduction to DevOps, covering topics such as culture, automation, and measurement. It valuable resource for anyone who wants to learn more about DevOps in a fun and engaging way.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser