Open Source Licensing Basics for Software Developers (Linux Foundations)

Offered by Linux Foundation,
Open Source Licensing Basics for Software Developers (Linux Foundations)

Because open source is now found everywhere software exists, a good working knowledge of open source licensing and compliance is critical. This course is designed to teach software developers and producers why it is important to add copyrights and licenses to their code, as well as how to do so.

In this course, you’ll learn how to create file notices with copyrights and licenses. This will enable students to minimize problems and ambiguity, which is useful for internal corporate projects, as well as contributing to open source projects.
This course also provides an overview of the types of licenses to consider, as well as the other permissions that you may need to secure prior to external contribution.

Course Introduction

  • Licenses
  • Copyrights
  • File Notices
  • Contributing to Projects
  • Final Exam
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Internet of Things: Setting Up Your DragonBoard™ Development Platform (Coursera) Coursera
University of California, San Diego

Internet of Things: Setting Up Your DragonBoard™ Development Platform (Coursera)

Do you want to develop skills to prototype mobile-enabled products using state-of-the-art technologies? In this course you will build a hardware and software development environment to guide your journey through the Internet of Things specialization courses. We will use the DragonBoard™ 410c single board computer (SBC).

Jun 1st 2026
5-12 Weeks
IBM COBOL Software Development Process (Coursera) Coursera
IBM,LearnQuest

IBM COBOL Software Development Process (Coursera)

This course is geared towards anyone interested in learning about IBM, COBOL, mainframe computing, and the Software Development Lifecycle (SDLC) and increasing their knowledge and hands on experience with core concepts and technologies including life cycle and systems analysis concepts, design and structured coding, and a wide variety of topics designed to provide relevant, requisite working knowledge and practical experience.

Jun 1st 2026
3 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 Jenkins (Linux Foundation) The Linux Foundation
Linux Foundation

Introduction to Jenkins (Linux Foundation)

Learn the fundamentals required to implement Continuous Integration (CI) and Continuous Delivery (CD) workflows using the Jenkins automation server. Are you or your team starting to use Jenkins as a CI/CD tool? Are you looking to automate your software delivery process? Do you need guidelines on how to set up your CI/CD workflow using Jenkins automation server? If so, this is the course for you.

Self Paced
Self-Paced
Python Data Representations (Coursera) Coursera
Rice University

Python Data Representations (Coursera)

This course will continue the introduction to Python programming that started with Python Programming Essentials. We'll learn about different data representations, including strings, lists, and tuples, that form the core of all Python programs. We will also teach you how to access files, which will allow you to store and retrieve data within your programs. These concepts and skills will help you to manipulate data and write more complex Python programs.

Jun 1st 2026
4 Weeks
Essential Tools For Application Development (Coursera) Coursera
LearnQuest

Essential Tools For Application Development (Coursera)

In Essential Tools, we will look at two important classes of tools for developers: Version Control Systems and Built Automation Tools. We will look why we use such tools, discuss common concepts for those categories of tools, and then look at a specific and common example of each: Apache® Subversion® for version control, and Apache® Maven™ for build automation.

Jun 1st 2026
2 Weeks
Development Methodologies Overview (Coursera) Coursera
LearnQuest

Development Methodologies Overview (Coursera)

This course provides an introduction to a few of the main development methodologies used by application programmers today. These methodologies provide a framework and structure for the process of development to ensure teams can work together and all critical steps are followed. We'll discuss the Software Development Lifecycle (SDLC), Agile concepts, Continuous Integration/Continuous Delivery and 12 Factor for cloud development.

Jun 1st 2026
3 Weeks
Python Data Analysis (Coursera) Coursera
Rice University

Python Data Analysis (Coursera)

This course will continue the introduction to Python programming that started with Python Programming Essentials and Python Data Representations. We'll learn about reading, storing, and processing tabular data, which are common tasks. We will also teach you about CSV files and Python's support for reading and writing them. CSV files are a generic, plain text file format that allows you to exchange tabular data between different programs. These concepts and skills will help you to further extend your Python programming knowledge and allow you to process more complex data.

Jun 1st 2026
4 Weeks
Software Architecture (Coursera) Coursera
University of Alberta

Software Architecture (Coursera)

The way that software components — subroutines, classes, functions, etc. — are arranged, and the interactions between them, is called architecture. In this course you will study the ways these architectures are represented, both in UML and other visual tools. We will introduce the most common architectures, their qualities, and tradeoffs. We will talk about how architectures are evaluated, what makes a good architecture, and an architecture can be improved. We'll also talk about how the architecture touches on the process of software development.

Jun 1st 2026
4 Weeks
Design Patterns (Coursera) Coursera
University of Alberta

Design Patterns (Coursera)

This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, learners will gain a foundation for more complex software applications. Finally, learners will identify problematic software designs by referencing a catalog of code smells. You will be challenged in the Capstone Project to redesign an existing Java-based Android application to implement a combination of design patterns. You will also critique a given Java codebase for code smells.

Jun 1st 2026
4 Weeks
Intellectual Property for Entrepreneurs (Coursera) Coursera
University of Maryland, College Park

Intellectual Property for Entrepreneurs (Coursera)

For aspiring and active entrepreneurs, this course focuses on the opportunities and challenges of intellectual property. Intellectual property is a commonly discussed, often misunderstand, element of entrepreneurship and law. Knowing how to create and manage patents, copyrights, trademarks, and trade secrets is a valuable skill for entrepreneurs and business leaders.

Jun 1st 2026
4 Weeks
Open Source Platforms for MLOps (Coursera) Coursera
Duke University

Open Source Platforms for MLOps (Coursera)

This course covers two of the most popular open source platforms for MLOps: MLflow and Hugging Face. We’ll go through the foundations on what it takes to get started in these platforms with basic model and dataset operations. You will start with MLflow using projects and models with its powerful tracking system and you will learn how to interact with these registered models from MLflow with full lifecycle examples.

Jun 1st 2026
4 Weeks