New documentation: Ubuntu for Developers

How to get started coding with Python, Java, Go, Rust, .NET, or GCC using Ubuntu Desktop as your developer platform. The quickest path to ‘Hello, world!’ for both new and existing users of Ubuntu. Learn about installing and setting up the programming toolchains, as well as IDEs and related tooling.

Who

The Ubuntu Foundations team is responsible for much of the low-level plumbing of the Ubuntu distribution, including the packaging of toolchains based on popular programming languages. Read more about the focus on improving Ubuntu as a platform for developers in a related post by @mclemenceau: Leveling up Ubuntu for Developers: Java and beyond.

What

The Foundations team has now developed a brand new set of documentation, which provides guidance for using the Ubuntu Desktop Linux distribution as a development platform: Ubuntu for Developers.

Toolchains

The guides focus on setting up and using the Ubuntu Desktop system as a workstation for developers, with an emphasis on the following toolchains:

  • Python
  • Golang
  • Rust
  • GCC
  • .NET
  • Java

For each of the toolchains, there is a tutorial that shows a quick path to a ‘Hello, world!’ program and demonstrates the use of supporting tooling, including debuggers and linters, on Ubuntu Desktop.

Audience

The documentation doesn’t teach coding skills -– it shows developers how to make the most of Ubuntu Desktop with their toolchain of choice. Even if you haven’t used Ubuntu before, you can follow this guidance to set up a development environment that suits your purposes.

At the same time, there’s enough guidance even for those who are only now getting into programming. You don’t need to be a seasoned coder to use this documentation.

How to get (the toolchains)

Follow straightforward instructions to install the toolchains and supporting tooling for setting up an efficient development environment. The aim is to prepare your Ubuntu Desktop system to enable you to get started coding with the respective programming languages.

Coding tutorials

Each of the toolchain-specific tutorials teaches a quick way to your first ‘Hello, world!’ application using your toolchain of choice. In addition, the tutorials show how to use supporting tooling, including Integrated Development Environments (IDE), debuggers, code checkers, linters, and formatters on the Ubuntu platform.

What next

The work is not finished, and we’ll be adding more content with more practical examples for the individual toolchains. The idea is to keep adding howtos with actual, real-world applications of the toolchains, as well as packaging examples (DEB packages, snaps, containers, …) to show how to get your software to users.

Get involved!

Just like the rest of Ubuntu, this documentation is open source, and we welcome feedback, ideas, and contributions. The docs are in GitHub, using Markdown, and published using Sphinx on Read the Docs:

3 Likes

At last. A category for bespoke toolchains. But clearly your thread is towards coding. There are many other requirements for toolchains. Getting order out of desktop chaos for one. Integrating with AI Agents another. Good start though.

This was posted in error in reply to this documentation (not discussion).

A post was split to a new topic: Oh, those toolchains!

Apologies, I pbbly shouldn’t have tagged this ‘documentation’ – it’s not really docs content; just a post about documentation that’s elsewhere. I removed the ‘documentation’ tag. Sorry for the confusion.

Now that’s a tool chain.