A Beginner's Guide to Open Source Software Development (Linux Foundation)

Offered by Linux Foundation,
A Beginner's Guide to Open Source Software Development (Linux Foundation)

Learn the key concepts in developing open source software. This course introduces developers to the key concepts in developing open source software. It covers the who (successful projects and communities), what (definition), why (benefits), where (Git) and how (licensing, compliance, collaboration tips, managing diversity and continuous development & integration).

This course is addressed to software developers seeking to understand the ‘rules of the road’ of creating open source software, either as a newbie or as someone with experience primarily in creating proprietary code.

What you’ll learn:

  • Familiarize yourself with the key concepts involved in developing Open Source Software (OSS)
  • Understand how OSS evolved into today’s domination position
  • Explain the benefits of using OSS as compared with using Proprietary products
  • Familiarize yourself with open source projects that form the foundations of today’s word-wide technology infrastructure
  • Work with projects that can help you get a solid footing in OSS methods and communities, such as the TODO Group and OpenChain Project.
  • Behave properly while engaging in OSS projects, to develop the best code and build on the strengths of other contributors.
  • Understand OSS licensing issues, such as types (restrictive vs permissive) and explain how to choose the right one.
  • Make use of projects such as FOSSology and SPDX to foster compliance.
  • Know best practices for long term sustainability of projects, including how to respect and encourage diversity.
  • Know about GitHub and other hosting providers and advanced interfaces, such as Gerrit.

Course Syllabus:

  • Chapter 1. Course Introduction
  • Chapter 2. Open Source Software (OSS)
  • Chapter 3. Why Use Open Source Software?
  • Chapter 4. Examples of Successful OSS Projects
  • Chapter 5. Developing an OSS Strategy
  • Chapter 6. The TODO Group
  • Chapter 7. The OpenChain Project
  • Chapter 8. How to Work in OSS Projects
  • Chapter 9. Continuous Integration
  • Chapter 10. OSS Licensing and Legal Issues
  • Chapter 11. Compliance Projects: FOSSology, SPDX, CHAOSS
  • Chapter 12. Leadership vs Control and Why Projects Fail
  • Chapter 13. Respecting and Encouraging Diversity in OSS
  • Chapter 14. GitHub and Other Hosting Providers
  • Chapter 15. Advanced Git Interfaces: Gerrit
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

The Data Scientist's Toolbox (Coursera) Coursera
Johns Hopkins University

The Data Scientist's Toolbox (Coursera)

In this course you will get an introduction to the main tools and ideas in the data scientist's toolbox. The course gives an overview of the data, questions, and tools that data analysts and data scientists work with. There are two components to this course. The first is a conceptual introduction to the ideas behind turning data into actionable knowledge. The second is a practical introduction to the tools that will be used in the program like version control, markdown, git, GitHub, R, and RStudio.

Nov 2nd 2026
4 Weeks
A Beginner's Guide to Linux Kernel Development (Linux Foundation) The Linux Foundation
Linux Foundation

A Beginner's Guide to Linux Kernel Development (Linux Foundation)

Learn the key concepts in developing open source software. This free course introduces developers to the Linux kernel development process and teaches the explicit and implicit “rules of the road”. It covers configuring a development system, git basics, writing kernel patches, testing patches, writing commit logs, sending patches, and working on feedback from the kernel community.

Self Paced
Self-Paced
Introduction to Linux (Linux Foundation) The Linux Foundation
Linux Foundation

Introduction to Linux (Linux Foundation)

Never learned Linux? Want a refresh? Take this course to learn the basics of this popular open source operating system. Develop a good working knowledge of Linux using both the graphical interface and command line, covering the major Linux distribution families. Linux powers 94% of the world’s supercomputers, most of the servers powering the Internet, the majority of financial trades worldwide and a billion Android devices. In short, Linux is everywhere. It appears in many different architectures, from mainframes to server to desktop to mobile and on a staggeringly wide variety of hardware.

Self Paced
Self-Paced
HTML5 Apps and Games (edX) EdX
World Wide Web Consortium - W3C,W3Cx

HTML5 Apps and Games (edX)

Today, developers are increasingly moving from native to HTML5-based apps. Increase your ability to design and deliver innovative services on the Web! Want to learn advanced HTML5 tips and techniques? This is the course for you! Find out more about the powerful Web features that will help you create great content and apps.

Self Paced
Self-Paced
Creating Apps in the Classroom (FutureLearn) FutureLearn
Queensland University of Technology

Creating Apps in the Classroom (FutureLearn)

Find out how to create your own educational apps to support learning activities in your classroom. Learn how to create apps to use in your own teaching practice. There are many educational apps available, but the majority are created by non-educators. Platforms for developing apps are becoming increasingly user-friendly, so it’s easier for teachers to create apps to support their own classroom activities.

Self Paced
2 Weeks
Introduction to GitHub Copilot (Coursera) Coursera
Microsoft

Introduction to GitHub Copilot (Coursera)

Join our course led by Gabe Leon de Mattos, a seasoned developer and leader. You will learn how to use GitHub Copilot. This course is for developers who want to be more productive with GitHub Copilot. You'll learn how to use GitHub Copilot in real projects. The course is hands-on and lasts 90 minutes. You'll set up Copilot, write better prompts, and work Copilot into your coding routine.

Nov 9th 2026
4 Weeks
Open Source Programming - Master's (Coursera) Coursera
Illinois Tech

Open Source Programming - Master's (Coursera)

Contemporary open-source programming languages and frameworks are presented in this course. Students will consider design and development topics in system, graphical user interface, network, and web programming. Dynamic scripting languages are covered using object-oriented, concurrent, and functional programming paradigms. Concepts gained throughout the course are reinforced with numerous exercises which will culminate in an open-source programming project.

Nov 23rd 2026
5-12 Weeks
Advanced Reproducibility in Cancer Informatics (Coursera) Coursera
Johns Hopkins University

Advanced Reproducibility in Cancer Informatics (Coursera)

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.

Nov 9th 2026
5-12 Weeks
DevOps, DataOps, MLOps (Coursera) Coursera
Duke University

DevOps, DataOps, MLOps (Coursera)

Learn how to apply Machine Learning Operations (MLOps) to solve real-world problems. The course covers end-to-end solutions with Artificial Intelligence (AI) pair programming using technologies like GitHub Copilot to build solutions for machine learning (ML) and AI applications. This course is for people working (or seeking to work) as data scientists, software engineers or developers, data analysts, or other roles that use ML.

Nov 9th 2026
5-12 Weeks