Objectives & prerequisites
What Hello Pico teaches and what you need before starting.
Learning objectives
NoteLearning objectives
- Write a single Rule in YAML.
- Run the Parser and read the internal representation it produces.
- Use the Composer to turn the parsed Rule into a working
hello-world-picoartifact. - Explain each stage of the Rules → Parser → Composer → Pico pipeline in your own words.
Prerequisites
NotePrerequisites
- A working shell (bash or zsh).
- A text editor and comfort reading YAML.
- Python 3.8+ on your
PATH— used by the referencepicoCLI. - A local clone of this repository, which ships the reference
picoCLI underbin/pico. - Completion of the Pico · Part 1 · Introduction lesson (or equivalent).
WarningName collision with the pico editor
On many macOS and Linux systems the bare name pico resolves to the Alpine/nano text editor at /usr/bin/pico. The walkthrough uses the reference pico CLI shipped in this repository at bin/pico, and tells you to prepend bin/ to your PATH so that pico resolves to the Academy CLI instead of the editor. Verify with command -v pico — it should point inside this repository, not /usr/bin/pico.
Environment
- Operating system: macOS, Linux, or WSL.
- Required tools: bash or zsh, a text editor, and Python 3.8+.
- Estimated time: 30–45 minutes.
One-time setup
From a fresh shell, clone the academy source repository (if you have not already) and put its bin/ directory on your PATH:
git clone <academy-source-repo-url> oea
cd oea
export PATH="$PWD/bin:$PATH"
command -v pico # should print .../oea/bin/picoPlaceholders
<academy-source-repo-url>— the clone URL of the Open Engineering Academy source repository you were given access to (for example,https://github.com/<org>/<repo>.gitor an SSH equivalent). The academy’s public-facing repository URL is not yet finalized; use whichever clone URL your Academy contact provides. If you are already working inside a clone of this repository, skip thegit cloneline and start from theexport PATH=…step.
The PATH export lasts for the current shell session. Re-run it in new shells, or add it to your shell profile if you plan to work through the lab across multiple sessions.