After writing up the responses I received from the testers, I did a quick brainstorm about how I could solve the various recommendations and problems that arose through testing.
Problem - Difficult and confusing for learners
Solution - Create a gentler learning curve for beginners. With multiple testers making comments concerning the difficulty I knew I would have to change the way I used written language through out the experience and making sure that the learner had multiple options for points of reference and support through out the experience. Another possible solution was to create an introduction to the experience that serves two purposes: to teach the learner code but also to serve as a way of introducing the learner to how the experience works.
Suggestion - more colours, less text heavy
Solution - Use colours associated with a text editor to create familiarity. With the full intent of eventually moving the learner on from the experience to be working in text editors, creating this familiarity early would be important for making users feel confident they make the move. To give myself colours to work with, I used the text editor Sublime Text as an inspiration.
Suggestion - Add definitions to hints
Solution - Add an "In case you've forgotten..." button/tab/feature to the hints. This would allow users to gain more information if they are unsatisfied with the level of help they are receiving from hints or need more of a nudge in the right direction. Alternatively a reference button could be added to the list of available help options that learners would direct access to the reference list instead of them requesting a hint each time they need to access to the list.
Suggestion - Add code to an off screen editor as you complete the experience.
Solution - As users select code options, move it to an off screen editor to see how the code all fits together at the end. While users are not directly working with code through out the experience, it's important to build their confidence when they will eventually deal with code on text editors.
Suggestion - Give the user justification for why the action they choose is the best course of action.
Solution - After the user has selected their answer, a notification window could appear to explain to the user at the end of each task why the action is chosen is the best choice. The help features could also be expanded with an emphasis on making the help features more social. Through this method, users could create learning opportunities for themselves by sharing knowledge over the platform and also tie in the social aspect of learning from research.
Suggestion - More emphasis on showing the code on flip. More prominent tooltip?
Solution - When desired course of action is chosen, the bubble should auto flip to show you the code. This should be partnered up with the justification of the best course to reinforce learning. The more confidence built during the experiencer, the easier the transition will be for users to move on to working with actual code.
Suggestion - The means to toggle on or off help as dictated by the user
Solution - Creating a Guided version vs Unguided version or incorporating a help button somewhere on the screen for the user to access when or if they need to access the help options. Depending on the user's confidence level, the user could make use of a guided version which would work to build the user's confidence by encouraging the learner at every opportunity and making sure to explain everything that the learner is coming across during the experience. When users are feeling more confident they can choose the unguided mode which would allow them to opt out of hints. Either way, the key is to build the learner's confidence.
Suggestion - Make sure to consider the order of learning - when should learners be introduced to this topic.
Solution - Following examples set by established websites such as w3schools or Codecademy. This again is another reason why linear learning journeys are more suited as learning experiences as learners shouldn't really be learning anything that should make them feel out of their depths.