Learning Paths are community-created how-to articles about software development for the Arm architecture.

All content is covered by the Creative Commons Attribution-ShareAlike 4.0 International License .

What is a Learning Path?

A Learning Path is a concise tutorial with detailed steps to enable you to learn how to complete a specific task.

A Learning Path is not:

  • product documentation
  • marketing material
  • product or developer news
  • a place to embed or link to videos

Why do Learning Paths exist?

Learning Paths provide a way for software developers to learn about Arm technology.

Arm has a number of content channels where you can access Arm technical content and related information.

  • Product Documentation and reference manuals are the trusted source of detailed information for developing on the Arm architecture.

  • Blogs offer news and announcements for recent and upcoming Arm activities.

  • Videos provide talks and demos of Arm tools and other software topics.

  • Learning Paths offer concise tutorials to achieve specific software development tasks, and are supported by install guides to quickly learn how to install key Arm software.

Where is the Learning Path source code?

Learning Paths are maintained in GitHub . The content is written in markdown. Hugo is used to generate a static website from the markdown files.

The next section explains how you can set up a computer to create a new Learning Path, or modify existing content.

Who can write a Learning Path?

Anyone who wants to share Arm-related software developer material on how to achieve a specific outcome can create a Learning Path. Contributors are Arm employees, Arm Ambassadors from the Arm Developer Program , and community members who enjoy sharing what they have learned.

How do I write a Learning Path?

This Learning Path provides the information you need to create your own Learning Path. If you have questions or need help, please raise an issue on GitHub .

What topics are appropriate for Learning Paths?

Learning Paths are about software development on Arm. Content is segmented into 5 categories and each Learning Path is related to one or more categories. Each category covers different kinds of computer hardware, and each Learning Path is about software development on Arm hardware. Content about all types of software is welcome.

Are there things which are not suitable for Learning Paths?

Learning Paths include only public information. Do not include confidential information, trade secrets, unannounced products, or any other information which should not be on a public website.

Do not use an AI tool to generate either content or code when creating a Learning Path or Install Guide.

Is there a way to ask about my Learning Path idea?

You can use GitHub Discussions to ask questions about your Learning Path idea. You may want to do this if you are unsure about the usefulness of your concept or think it might already be covered by other content. You can also use it to determine the best category for your Learning Path. It is possible that a Learning Path belongs to multiple categories, so use GitHub discussions to ask.

What is an Install Guide?

Install Guides provide a concise summary of how to install tools and software or perform a common task. Install Guides make it easy to reference repeated actions from multiple Learning Paths. Use GitHub discussions to ask if your content idea should be a Learning Path or an install guide.

What if I have an idea for a Learning Path but cannot write it?

Use the GitHub Ideas to share topics you think would make a good Learning Path or Install Guide. Even if you cannot write the content, it’s possible somebody else can do it.

When are Learning Paths reviewed and published?

Project maintainers review and merge pull requests on a regular basis. When contributors raise a pull request a number of checks are run for spelling, broken links, malware, and profanity. Once any issues are corrected, the Learning Path is published.

Contribution process

The contribution process comprises 3 stages, all of which are covered in this Learning Path:

  • Setup: prepare the required tools and setup your GitHub repository
  • Write: create the new content
  • Contribute: submit a pull request on GitHub and work with the project maintainers to resolve any feedback

You can now walk through the details of each of these three stages in this Learning Path.