cyber-dojo has hosted about 13,000 practice sessions so far.
I've written a short ruby script to extract some measurements from a sample of 500 sessions.
I was looking at transitions between red, amber, and green traffic-lights:
- red means one or more tests failed
- amber means the tests did not run (eg syntax error)
- green means the tests ran and all passed
The first column is average number of lines added/deleted.
The second column is colour → colour transition.
The third column is sample size.
| 3.94 |
amber → green
| 447 |
| 4.65 |
amber → red
| 379 |
| 4.67 |
amber → amber
| 1462 |
| 5.39 |
red → green
| 607 |
| 6.01 |
red → red
| 604 |
| 7.52 |
green → red
| 420 |
| 13.65 |
green → amber
| 436 |
| 17.67 |
red → amber
| 432 |
| 22.18 |
green → green
| 598 |
Here's how I interpret the results:
- If you're at red or green and you make a small change (5.39,6.01,7.52) you're likely to stay at red or green.
- If you're at red or green and you make a large change (13.65,17.67) you're likely to transition to amber.
- There is a big spike in the number of amber → amber transitions (1462).
I speculate that long sequences of these transitions are occuring after a large
13.65 green → amber
or
17.67 red → amber
transition.
- I think the green → green value of 22.18 is larger than it should be because it's including plain file renames.