Engineering Boldly – Day 0 Prep Guide

For: FRC fabrication-focused students joining High School Engineering Boldly cohort
Platform: macOS (with SSH access to Linux/ROS 2 robot or dev box)

Non-negotiable outcomes by the end of the prep day:

  1. Can navigate around in Terminal (cd, ls, pwd, mkdir, rm).

  2. Can open a sandbox repo in Cursor, run a Python script, and change it.

  3. Can do the basic git loop: status → add → commit → push.

  4. Can SSH into a remote Linux machine (robot / dev box) and run a ROS 2 demo like talker/listener or a pre-made launch file.

  5. Have a 1-page cheat sheet printed or saved.

Proposed Day 0 Schedule (≈ 6 hours of focused work)

1. Terminal & Unix Basics on macOS (60–75 min)

Goal: Terminal feels like a new—but friendly—tool.

Open Terminal.app and work through:

Where am I / what’s here?

pwd          # print working directory
ls           # list files

Move around & make stuff

cd ~                 # go to home
mkdir dev_prep       # make a folder
cd dev_prep
mkdir projects notes
cd projects
touch hello.txt
ls

View & edit

open hello.txt       # opens TextEdit

Delete (with respect!)

rm hello.txt
ls

Slightly more advanced

cd ..
ls
mv projects code_projects
ls

History & tab-complete

  • Up arrow = previous commands

  • Tab = auto-complete names

Mini-mission:
Create dev_prep/playground, make 3 text files, rename one, delete another.

2. Cursor + Python + GitHub Sandbox (90 min)

Goal: You can open a project in Cursor, run a script, edit it, and commit/push.

Prep (do in advance)

  • Create GitHub repo: engineering-boldly-day0-sandbox.

  • Add hello.py:

print("Hello from Engineering Boldly!")
  • Add README.md with 3–4 short tasks.

  • Ensure Git is installed:

git --version

Clone the repo

cd ~/dev_prep
git clone https://github.com/YOUR_ORG/engineering-boldly-day0-sandbox.git
cd engineering-boldly-day0-sandbox
ls
  • Repository = a folder that git is tracking.

  • Remote (GitHub) = cloud copy.

Open in Cursor & run the script

From the repo folder:

cursor .

In Cursor:

  • Open hello.py.

  • Run in the integrated terminal:

python3 hello.py

Mini-mission:
Change the print message to include your name, then run it again.

3. Git in One Hour (Beginner Mode) (60 min)

Goal: One loop internalized:

edit → git statusgit add .git commit -m "..."git push

After editing hello.py:

git status           # see what changed
git add hello.py
# or:
git add .
git commit -m "Personalize hello script"
git push

Refresh GitHub in a browser to see the change.

Analogy:

  • add = putting parts in the “ready to weld” staging area.

  • commit = doing the weld and stamping this version.

  • push = sending that version to the team repository.

Mini-mission:

Add math_test.py:

a = 5
b = 7
print(a + b)

4. Linux + SSH + ROS 2 Demo (90 min)

Goal: Bridge from Mac dev → robot brain.

Assumptions:

  • Pi or Ubuntu box ready with ROS 2 installed.

SSH into the robot/dev box

On your Mac:

ssh rcr@192.168.1.1   # or your hostname/IP

Once connected:

pwd
ls
cd ~
ls

Basic Linux flavor

mkdir day0_test
cd day0_test
touch robot_notes.txt
ls

ROS 2 “just run it” demo (recipe-driven)

source /opt/ros/kilted/setup.bash      # or your setup script
ros2 run demo_nodes_cpp talker

In a second SSH terminal:

source /opt/ros/kilted/setup.bash
ros2 run demo_nodes_py listener

In a third SSH terminal:

source /opt/ros/kilted/setup.bash
ros2 node list
ros2 topic list
ros2 topic echo /chatter

Map to FRC:

  • Node = a subsystem.

  • Topic = a data channel.

  • Message = the packet going over the channel.

Mini-mission:

  • Start talker + listener.

  • Confirm /chatter with ros2 topic echo /chatter.

  • Then Ctrl-C everything cleanly.

(If you have an RCR bringup launch file, you can substitute that here, but still end with node list/topic list.)

5. Wrap + Teach-Back + Cheat Sheet (30 min)

You can teach back live:

  • Show: how to clone a repo.

  • Show: where you put code on the Mac.

  • Show: the git loop.

  • Show: how you'd SSH into the robot and start a ROS 2 demo.

Day 0 Cheat Sheet

Terminal (Mac)

  • pwd – where am I?

  • ls – list files

  • cd folder_name – go into folder

  • cd .. – go up

  • mkdir name – make folder

  • rm file – delete file

  • open file.txt – open with default app

Git (inside repo)

  • git status – what changed?

  • git add . – stage changes

  • git commit -m "message" – save snapshot

  • git push – upload to GitHub

  • git pull – download latest from GitHub

Cursor

  • Open repo: cursor . (from terminal in repo folder)

  • Use sidebar to open files

  • Use built-in terminal to run:

python3 file.py

SSH to robot / Linux dev machine

  • ssh 192.168.1.1 (or your hostname/IP)

  • Then use the same commands: pwd, ls, cd.

ROS 2 basics

  • source /opt/ros/kilted/setup.bash

  • ros2 node list – see running nodes

  • ros2 topic list – see topics

  • ros2 topic echo /chatter – see messages

Demos:

ros2 run demo_nodes_cpp talker
ros2 run demo_nodes_py listener

Subscribe to our newsletter

The latest educational robotics news and articles, sent to your inbox weekly.