Skip to content

Add learn-by-doing interactive tools to the catalog (needs new learningResourceType) #193

Description

@jt14den

Ask

Add a first batch of hands-on/interactive learning tools to the catalog, sourced from Learn-by-Doing Open Source Resources. One schema change is needed before any of these can be added honestly.

Schema change needed

learningResourceType currently has three actively-used values: workshop, course, guide (see docs/schema.md). None of them fit a game, wargame, or browser-based sandbox with no fixed duration and no instructor delivering it. Propose adding a new value, working name interactive tool, for genuinely hands-on/gamified practice environments. Open question: better name welcome (practice environment, sandbox, game?).

Recommended additions, first pass

Strong fits, propose adding now:

  • Oh My Git! (game-based Git learning) — Version Control & Collaborative Development, Beginner
  • Learn Git Branching (visual guided Git challenges) — Version Control & Collaborative Development, Beginner/Intermediate
  • GitHub Skills (interactive courses inside real repos) — Version Control & Collaborative Development
  • First Contributions (guided first-PR tutorial) — Version Control & Collaborative Development. Note: already referenced informally in your-first-web-contribution.json's description text, check for duplication before adding as its own entry
  • Node.js First Contributions Guide (real PR walkthrough on a major production codebase) — Version Control & Collaborative Development
  • Exercism (guided coding exercises with mentor feedback) — Software Design & Engineering Practices
  • freeCodeCamp DevOps pipeline courses (build-along, free/nonprofit) — Reproducibility, Environments & Workflows
  • picoCTF (free, CMU-backed CTF platform) — Security & Supply Chain
  • OverTheWire: Bandit (shell/Linux wargame) — Security & Supply Chain

Good fits, confirm licensing/cost before adding:

  • KodeKloud (800+ DevOps labs) — appears mostly paid/freemium, confirm free-tier scope
  • TryHackMe (gamified security training) — freemium, confirm free-room coverage is substantial enough to list
  • Linux Foundation: Open Source Management & Strategy — usually free-to-audit on edX, confirm current access model
  • SadServers ("LeetCode for Linux") — confirm current pricing/free-tier
  • KillerCoda — confirm current free/paid status post-Katacoda transition

Probably don't fit the catalog's lesson model, recommend skipping:

  • explainshell, regex101 — reference micro-tools, no learning-objectives/duration structure; better as inline references within existing lessons than standalone catalog entries
  • Class Central — Open Source — itself a course-aggregator; would duplicate what this catalog already does rather than being a teachable resource
  • roadmap.sh DevOps — a curated link roadmap, same aggregator concern as Class Central
  • swirl — good tool, but may fit better as a linked companion resource on the existing R lessons (r-packaging, julia-basics, intermediate-r) than a new standalone entry
  • CHAOSS — already represented via 2 existing metrics lessons (metrics-model-starter-project-health, metrics-model-oss-project-viability-strategy); check whether there's a new specific CHAOSS course not yet covered before adding another entry

Also mentioned in the note, already well-covered in the catalog (no action needed): Open Source Guides, INTERSECT (source for 8 existing lessons), The Carpentries (source for 8 existing lessons).

Topic vocabulary note

Security & Supply Chain currently has only 1 lesson tagged (per the 2026-07-14 audit doc). Adding OverTheWire and picoCTF (and TryHackMe, pending the licensing check) is the most direct way to strengthen the thinnest topic in the current 13-term vocabulary, rather than adding a 14th topic.

Next step

Committee decision needed on:

  1. The new learningResourceType value and its final name
  2. Which "confirm licensing/cost" items are actually free/open enough to list
  3. Whether skip-list items (explainshell, regex101, Class Central, roadmap.sh) belong elsewhere on the site as inline references, rather than not at all

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions