Open Source Software Development, Linux and Git Specialization
Learn How To Develop Open Source Software. Get the skills and knowledge you need to develop open source software using Linux, git, and more!
Instructor: Jerry Cooperstein
Skills you'll gain
Specialization - 4 course series
In all The Linux Foundation courses (in any format) we put a heavy emphasis on learning by doing, and aim for a 50/50 balance between lecture and working on lab exercises. Courses 2, 3 and 4 include numerous lab exercises that give you the opportunity to work in a Linux environment, using the methods and tools presented in lectures.
In this course, we will define what open source software is, we will go over the history of open source software and what benefits it has provided to the world’s technology infrastructure over the decades. The course aims to teach you how to work in open source projects productively and gain a lot of benefits from it, and really understand what the advantages are. You will learn about collaboration best practices, and how to encourage diversity in open source projects. We will discuss the different licensing models that are available, as this will help you decide what the best license is for your project. We will talk about methods that are commonly used, such as Continuous Integration, and use of GitHub and other hosting providers as a central meeting place for open source projects, and we will provide some examples of successful open source projects.
What Linux is Linux history How to separate the kernel from the entire operating system Making contributions to the kernel Graphical system, and how it works Working at the command line Filesystem layout, partitions Monitoring utilities You will learn what it’s like to work on Linux system, and get a good understanding of the essential skills you need when you work on a daily basis with Linux systems.
Course 3 is a continuation of the previous course, and will focus on teaching you how to work with tools you need to do your everyday work. The course begins by introducing you to numerous essential command line tools that are used daily. Then, it focuses on bash scripting - you will learn how to construct scripts and how to do very complicated tasks in an automated way. The course looks at files and filesystems and focuses on compiling programs in Linux, using gcc and other compilers, and using libraries of different types. It also takes a look at how Java works in Linux, and explains why there is no reason to worry about having easy-to-use Java programs in Linux. Course 3 ends by covering building packages out of software in Linux.
How to install git How to initialize a repository How to make changes in a repository How to make changes in repositories available to others How to acquire changes made by other individuals How to find errors in your work and go back to earlier states of yoru projects How to make commits, diffs, merges, rebases. The course will help you get the skills to have a good understanding on how to use git. You will have a good knowledge about git workflows, identifying problems in your workflows, and finding solutions to solve these problems.
Linux for Developers
Linux Tools for Developers
Using Git for Distributed Development
©2025 ementorhub.com. All rights reserved