Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Computer Science & Robotics - Learn by Doing! Linux to ROS 2
Bestseller
Highest Rated
Rating: 4.7 out of 5(52 ratings)
543 students

Computer Science & Robotics - Learn by Doing! Linux to ROS 2

Master Linux, Docker, ROS 2, and Git — the essential toolkit to build, simulate, and deploy modern robots.
Last updated 1/2026
English

What you'll learn

  • Linux for Robotics
  • Mastering ROS2, the latest version of the Robot Operating System
  • Navigate the Linux filesystem and manage permissions
  • Use Linux commands for text editing, networking, and automation
  • Build and run scripts to automate tasks in Linux
  • Install and manage Docker containers and images
  • Create, share, and optimize Dockerfiles and Compose setups
  • Integrate Docker with GPU support and local registries
  • Master Git basics, workflows, branching, and rebasing
  • Collaborate using GitHub and automate tasks with Git Actions
  • Configure and use Visual Studio Code with extensions
  • Install and explore ROS 2 architecture, topics, services, and actions
  • Create and manage ROS 2 workspaces and packages
  • Simulate robots with Gazebo and visualize data in RViz
  • Deploy and test code on a real robot using ROS 2 tools

Course content

7 sections112 lectures15h 38m total length
  • Computer Science and Robotics3:45
  • Course Overview5:08
  • Meet your Teachers3:10
  • [EXTRA]: Boost your Robotics Software Developer Career1:32
  • The role of Computer Science in Robotics10:56

Requirements

  • NO prior knowledge of ROS or ROS 2 is required
  • NO prior knowledge of Robotics theory is required
  • A System to Practice On: Access to a computer (Windows, Mac, or Linux) to run Linux simulations or installations. We will install everything required together - you pretty much just need a few GB of extra storage
  • NO prior programming knowlege is required
  • A reliable Internet connection

Description

Dive into an immersive, hands-on journey from foundational computing to cutting-edge robotics. In this course, you’ll master essential developer tools (Linux command line, Git for version control, Docker containers, and VS Code IDE) and then apply them directly to robotics with ROS 2.

We follow a learning-by-doing philosophy – “Learning is an active process. We learn by doing, only knowledge that is used sticks in your mind.” – so you’ll build real projects at every step. For example, you’ll set up a complete ROS 2 workspace on Linux inside a Docker container (as recommended by robotics best practices) and use Visual Studio Code to code and debug without worrying about OS conflicts. Step by step, you’ll write ROS 2 nodes and control topics and services, first in simulation and then on a physical robot – closing the loop between virtual testing and real-world application. This way, theoretical concepts immediately turn into working robot demos, ensuring the new skills truly stick in your mind.


What you will learn

  • Linux & Dev Environment: Navigate the Linux terminal, install packages, and configure a developer setup on Ubuntu. You’ll use the terminal to interact with the filesystem, schedule tasks, and automate tasks with bash scripts, just as professional robotics engineers do.

  • Containerized Workflows: Use Docker to create isolated, reproducible development environments. You will learn how to download and use thousands of Docker Images available on Docker Hub and how to create your own custom images with Dockerfile.

  • Master Git, the professional Version Control System: Use Git and Github to track, commit and manage your code like a pro. Software Development is all about collaboration and community! You'll learn how to use Git and Github to collaborate with others, create branches, forks, and pull requests.

  • IDEs for Robotics Development: You will explore various Integrated Development Environments that will help you develop new cool features for your robot, streamlining your coding workflow.

  • ROS 2 Core Concepts: Learn ROS 2 fundamentals by writing your own nodes in Python or C++, publishing/subscribing to topics, calling services, and handling actions. Each concept is reinforced with practical examples and experiments on a simulated robot, following the “learn by doing” approach.

  • Simulation & Gazebo: Build a robot model and test its behavior in Gazebo simulation. You’ll practice digital twin techniques and see how changes in your code immediately affect the virtual robot, mirroring techniques from successful robotics courses.

  • Deploy to Real Robot: Transfer your simulation code to hardware. You’ll connect sensors and actuators, run your ROS 2 nodes on a real robot, and observe your software come to life in the real world. This completes the cycle of learning – from code to simulated testing to actual robot control.

By the end of this course, you’ll have a portfolio of real-world projects: from setting up Linux-based dev environments with Docker to running ROS 2 on physical robots. On the way, you will master Git as a collaboration tool and as a time machine that will let you go back in time to previous versions of your code.

You’ll gain the confidence and skills to tackle modern robotics challenges – learning by building and experimenting every step of the way.

Who this course is for:

  • Curious Beginners – Start from zero and gain the Linux, Docker, and ROS 2 foundations to enter the world of robotics with confidence.
  • Intermediate Tinkerers – Level up your skills with hands-on labs, simulations, and real robot projects that bridge theory and practice.
  • Advanced Developers – Sharpen your workflow with advanced Git, Docker, and ROS 2 tools that streamline robotics development.
  • Industry Professionals – Master production-ready setups for robotics software, containers, and collaborative coding.
  • Lifelong Learners & Makers – Whether building hobby robots or scaling industrial ones, this course gives you a reusable robotics toolkit.