CrossFit has the concept of a “Workout of the Day” (WOD), which is a short duration, high intensity set of exercises. In this class, I adapt this concept to software engineering education. My hope is that by focusing on the speed with which you implement high quality solutions to short development problems, you will:
For more background on my approach to “athletic software engineering”, you can read this essay.
For each WOD, I provide the following timing information:
Here is an example:
Rx: <8 min Av: 8-13 min Sd: 13-18 min DNF: 18+ min
So, in this example, completing the WOD in 8 minutes or less is “as prescribed”, 8 to 13 minutes is “Advanced”, 13 to 18 minutes is “standard”, and taking longer than 18 minutes is unacceptably slow.
Note that simply stopping work at a certain time does not mean you achieved the associated standard: your solution must have acceptable quality as well.
For each module, I provide practice WODs as homework assignments, which you can time on your own. Before starting a WOD, I recommend you review and study the associated material so that you do not spend valuable seconds during the WOD doing “research”.
After providing you with time to practice some WODs, I will hold an assessment WOD, during which I will time your performance and your solution will be submitted for grading. For grading purposes, the criteria is that you solve the problem with acceptable quality under the DNF cut-off time.
Your grade does not depend upon whether you performed at Rx, Av, or Sd levels, only that you complete the WOD correctly before the DNF cutoff time.
The general procedure for an assessment WOD is as follows: