---
title: 'Tutorial: Getting Started with ROS'
description: Learn the basics of ROS and start programming your own robot
url: https://canonical.com/blog/tutorial-getting-started-with-ros?format=md
---

1. [Blog](https://canonical.com/blog)
2. Article

---

[sidfaber](https://canonical.com/blog/author/sidfaber "More about sidfaber")

3 September 2020

# Tutorial: Getting Started with ROS

[Foxy](https://canonical.com/blog/tag/foxy)
[robotics](https://canonical.com/blog/tag/robotics)
[Robots](https://canonical.com/blog/tag/robots)
[ROS](https://canonical.com/blog/tag/ros)
[ROS2](https://canonical.com/blog/tag/ros2)
[Tutorials](https://canonical.com/blog/tag/tutorials)
[Ubuntu](https://canonical.com/blog/tag/ubuntu)

---

Share the article
> Please note that this blog post has old information that may no longer be correct. We invite you to read the content as a starting point but please search for more updated information in the [ROS documentation](https://docs.ros.org/).

ROS, the Robot Operating System, is the platform of choice for robot development. However, the breadth and depth of existing documentation can be daunting for the ROS beginner. Where should you start learning about ROS 2 on Ubuntu?

All robots based on ROS and ROS 2 are programmed using five simple but core constructs:

* Nodes
* Parameters
* Topics
* Services
* Actions

In this tutorial and associated video we’ll introduce these concepts with simulated robots. This quick introduction should help you dive deep into the wealth of information available for programming your own ROS 2 robot!

[Run through the tutorial](https://ubuntu.com/tutorials/getting-started-with-ros-2#1-overview)

[Watch the videos](https://www.youtube.com/playlist?list=PL_2PosskAdC0lfoecAPKBV4GJ0oZv7W_X)

[Get in touch

Interested in running Ubuntu in your organization?](https://ubuntu.com/about/contact-us/form)

## Sign up for our newsletter

Get the latest Canonical news and updates in your inbox.

Work email:

\*I agree to receive information about Canonical's
products and services.

By submitting this form, I confirm that I have read and agree to [Canonical's Privacy Policy](https://canonical.com/legal/dataprivacy).

Sign up

## Share on

---

## Related posts

[### Arduino® VENTUNO™ Q is available for pre-order with Ubuntu pre-installed](https://canonical.com/blog/arduino-ventuno-q-is-available-for-pre-order-with-ubuntu-pre-installed)

London, UK – August 25, 2026 – Following our initial collaboration announcement in March 2026, Canonical and Arduino (a subsidiary of Qualcomm Technologies, Inc.) are excited...

[Canonical](https://canonical.com/blog/author/canonical)

25 August 2026

[### Canonical becomes Gold Sponsor of Trifecta Tech Foundation](https://canonical.com/blog/canonical-becomes-gold-sponsor-of-trifecta-tech-foundation)

Canonical is pleased to announce it is now a Gold Sponsor of the Trifecta Tech Foundation, a non-profit that creates open source building blocks for critical infrastructure...

[Canonical](https://canonical.com/blog/author/canonical)

30 June 2026

[### Ubuntu Summit 26.04: connected by open source](https://canonical.com/blog/ubuntu-summit-26-04-connected-by-open-source)

What an incredible experience! Ubuntu Summit 26.04 has officially drawn to a close, but the energy from our global community is still buzzing – in the comments section, on...

[ilvipero](https://canonical.com/blog/author/ilvipero)

22 June 2026

[### A decade of Ubuntu on IBM Z and IBM LinuxONE](https://canonical.com/blog/a-decade-of-ubuntu-on-ibm-z-and-ibm-linuxone)

This year we celebrate a decade of Ubuntu Server support on the s390x architecture: marking a long-standing collaboration between Canonical and IBM that began at LinuxCon 2015....

[Pedro Lazzarotto](https://canonical.com/blog/author/pedro-lazzarotto)

12 June 2026
