Grade for Class 5 Assignment

Good job, Jeff.

#### Exercise 1

- No crashes, but the output is not what was described. 3 points
- Clever use of `File#puts`. +1 point
- Lots of unnecessary code

#### Exercise 2

- No crashes, but the output is not what was described. 3 points
- Clever use of the `playlister` method. +1 point
- Lots of unnecessary code
- Instead of stashing the return value of a predicate method (i.e. methods that end with a `?`) into a variable and then using that variable in an `if` statement, just use the predicate method directly in the `if` statement's condition
- The defensive nature of the program is appreciated, but unnecessary in an exercise this simple
- Nice `while condition` loop, but an infinite `loop do` with `break` statements is easier to read
- Avoid comments and write code that is self documenting

#### Exercise 3

- No crashes, but the program must use both the `source` and `target` paths. 3 points
- Lots of unnecessary code
- Instead of stashing the return value of a predicate method (i.e. methods that end with a `?`) into a variable and then using that variable in an `if` statement, just use the predicate method directly in the `if` statement's condition
- The defensive nature of the program is appreciated, but unnecessary in an exercise this simple
- Avoid comments and write code that is self documenting

#### Total

`3 + 1 + 3 + 1 + 3 = 11` :star: