CodeYourFuture / CodeYourFuture/curriculum

Add a "Breaking down a project into tickets (and unblock each other)" workshop to ITP

Open
#1,441 1 comment 0 reactions 1 assignee Claimed by @illicitonion View on GitHub
ITP
Dominant language
HTML
Stars
76
Forks
135
Avg merge
1d 3h
Merged PRs (30d)
20

Description

In the Checkpoint we currently give groups projects to do without breaking them down into tickets.

Checkpoint is only meant to test existing skills, not teach new ones. But we haven't taught this skill in ITP. So for the first few Checkpoints we've had to give [a workshop on how to do this](https://curriculum.codeyourfuture.io/checkpoint/sprints/1/day-plan/#practice-breaking-down-a-requirement). Ideally we would like to stop teaching this in Checkpoint and start teaching it in ITP.

We have a similar workshop in the SDC (https://sdc.codeyourfuture.io/decomposition/sprints/1/day-plan/#breaking-down-features-workshop) but it's focused on a specific project and is specifically talking about backends and frontends, which is a bit too much for ITP.

We probably want to use "if we can agree on the keys in an object" or "if we can agree how to serialise to `localStorage` and then how to deserialise" or something as our example.

Some of the natural places this could fit (we could do more than one):
* In Data-Groups we assign [the tic-tac-toe project](https://github.com/CodeYourFuture/Project-terminal-tic-tac-toe) which is done in groups. We have _already_ broken this down for people so that they can work in separate functions. After completing this, we could have a reflection session: "Here's how we broke it down so you could work in parallel".
* In Data-Flows we have [a Teamwork Project](https://curriculum.codeyourfuture.io/itp/data-flows/sprints/3/day-plan/#teamwork-project) (which is just talking about doing a project, not actually doing it) where we introduce the idea of dependencies between tasks. I'm imagining we could add an "identifying and breaking dependencies" workshop this morning before the teamwork project which could influence the teamwork project, or augment the teamwork project to cover this.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.