Writing Tests First with Comments

FMTWTF
Intro sessionSlack check-inRefinementSharing stories
Slack the challengeRefinement prep

Intro Session

Flow

What stance should I be in? Where to focus? Any ways the content will guide me astray?

Immediately after

Post the following to Slack:

TBD: replace this

Today's challenge:
*Notice*: when you are about to write code or debug something.
*Act*: first describe your coding intent using comments in the structure of a 4-part test.

Gotchas:
* Remember not to write any code in the test! Just comments.
* Commit as soon as you have the test. Then do a second commit to do your coding, however you normally would.

*Practice tag:* `[intent]`

1. Name the test based on your intent.
2. Create the test using the standard template.
3. Write the outcome. What would the user expect?
	* Use comments in natural language - not code!
4. Write the initial state, also as comments. What is the starting condition?
5. Write the action that your code will do, still as comments. Conceptually, how do you get from the starting condition to the outcome?
6. Commit as `[intent]`.

https://learn.digdeeproots.com/vsd/milestone-1/module-1/1/

Slack check-in

What one thing should I remember to do in Slack on day 2?

Refinement Prep

Copy this into the parallel writing doc.

TBD - Cohort 1

Your nameHow many [tbd] commits?TBD: more questions
  • What are situations in which it would be useful to TBD: main purpose?
    • .
    • .
    • .
      • .
      • .

Refinement

Go through the paralell writing exercise in the doc. For tables, parallel write one column at a time (make the headers white text until ready), the start a conversation about trends you see or interesting outliers. For bullet lists, get them to do questions and answers to each other and build a conversation tree.

Sharing stories

Ask people to share stories where the behavior was useful. Then ask them to share ones where it failed. Ask the room to see if they can suggest a way to make it succeed in those cases. You don’t need to solve everything - it’s OK to have behaviors work some of the time. Just help people see what causes failures & how to reduce some of them.