Stephen's Results

Student: 19, Male, 1st-year Maths undergraduate

Qualitative Data

The student had both used turtles before (at primary and secondary school, on a variety of platforms and havng at least seen a physical turtle robot). He had no prior experience of Second Life (and added that he also had no experience of modern 3D games, and so the entire experience was quite novel). He had previously dabbled in programming in a variety of language, but nothing substantial, and felt “no” was the simplest overall answer to whether he had programming experience.

Due to his prior experience with turtles, the evaluation was run entirely using the 3D system. He completed all the exercises, and made use of all the available commands. The roll commands he mostly avoided. The colour he found useful to distinguish different sides of shapes in order to better understand the turtle's behaviour had taken when drawing a complex shape.

The undo command's implementation at the time was primitive, and did not allow undo 4 to undo the last four actions. The student tried to compensate for first with call 4 undo (which does not work due to technical limitations of the prototype implementation), and then by defining: define undo ; undo ; done. While ingenious, this also did not work, as the undo call tried to remove the last element of the procedure being defined, so the resulting procedure called “undo” actually did nothing. The had to be explained to him, as the turtle system provided no explanation. Overall, this experience suggests greater consistency in what can be call'd, and in the language in general, would be desirable. A method for resolving the misunderstanding of undo within procedure definitions was proposed to him: having the commands still have effect during the definition, but with ghosted or otherwise-altered lines, and the resulting lines and change in turtle position undone one the definition was finished. He did not think this very important though, perhaps (from his own comments) because his own spatial thinking was good, so he did not have much trouble working out procedure's defintions mentally without any visual feedback. A further proposal that undo should support “undo all actions since the previous line segment” and other logical, rather than numeric, division of steps was met favourably.

Overall, he was favourable about the system (“jolly good fun”), and about the use of the turtle to (re-)introduce the fundamental ideas of procedural programming, but saw no benefit there from the use of 3D. He was even more favourable about the geometry aspect (thanks to roughly an hour spent using the system to think about tetrahedra, and the angles they involve). He said that the session had left him more interested in using/playing with a (2D) turtle in his free time, and that the use of 3D made it more fun thus increasing motivation (but was adamant that the turtle needed to be more like a turtle, particularly having seen other complex objects in Second Life by chance during the evaluation).

Regarding the quantitative data below, he further commented that the view rotation controls were initially difficult to use/understand, but very useful once he had got the hang of them. He liked the inclusion of an avatar for the user primarily for the fun/novelty aspect rather than usefulness, though also said it was indispensable for moving between different instances of the turtle (which is not strictly true). On the animation of the turtle and of line creation he was positive, but strongly negative about a bug in the system at that time where the creating of lines would get ahead of the turtle's movements (subsequently fixed by adding explicit delays into the code to match those imposed by Second Life on certain function calls to avoid excessive server resource usage). While he did not give a specific score for the possibility of multiple users/avatars or for the use of the chat system, he was positive about the former idea, but felt access control mechanisms would be essential to prevent bored students' pranks (particularly from those already familiar with programming, and thus with considerable spare time). He felt the use of the chat system to control the turtle was natural due to expectations from prior use of turtles, and did not particularly want a code editing window. He did want a better log though (without timestamps), as he had at one point copied a series of commands used while trying to draw a tetrahedron into an external text editor to tweak and reuse, and found remove the timestamps that the existing chat log window had to be rather tedious.

Quantitative Data

CriteriaMark (1-10)
The view rotation controls 8
The ability to create a second turtle to try out something else 9
The presence of an avatar 9
The use of animation when drawing lines with the turtle 8
The shiny graphics 7
You can have multiple user's avatars present and use the turtle together *
The use of SL's chat system to control the turtle *

* no rating provided, though there was qualtitative feedback, included above