swarm-game / swarm

Resource gathering + programming game
Other
841 stars 52 forks source link

Define a Syllabus enum for tutorial concepts #1199

Open kostmo opened 1 year ago

kostmo commented 1 year ago

In addition to coverage of specific swarm-lang commands (#1186), it may be useful to enumerate the more "abstract" concepts that are covered in each tutorial. This will help in generating a tutorials overview that can ensure sensible pedagogical progression. These enums can also be surfaced as labels in the tutorial selection UI.

Although some of tutorials themselves are named for concepts, there is not a simple 1:1 correspondence between concepts and discrete tutorial scenarios.

Some example members of this syllabus enum might be:

More than one tutorial could "cover" each of these topics. Some tutorials might explicitly "teach" the concepts, while others assume th topics as prerequisites.

byorgey commented 1 year ago

I like this idea. Other potential categories, off the top of my head:

kostmo commented 1 year ago

1546 is somewhat related in terms of categorizing commands by their nature.