The props involved in this project are our webpage, visuals embedded in the webpage, the internet, and the user’s laptop or phone. We also include Read-Eval-Print-Loop (REPLs) for the languages involved because research shows that a REPL plays an important pedagogical role in learning a programming language as seen in the DrJava and DrScheme projects designed for teaching beginners Java and Scheme respectively [9], [10].
The process the user will go through when using the guide includes a quiz designed to match the user with the appropriate programming language. The quiz will be designed for usability and efficiency, incorporating good survey quiz such as radio buttons to avoid missing answers and provide a comprehensive evaluation of user needs [11]. The survey questions will be presented clearly and concisely in order to avoid user confusion and generate useful answers [12]. From there, they will be provided with links to external resources to actually start learning how to program.
The people involved are the creators of the project, the users who are inexperienced or new programmers, and the benefactors. People who benefit are not only the users but also instructors who may recommend the guide to their students or anyone interested in learning how to code.
The service blueprint diagram (seen above) visualizes the direct interactions between each of the components from the service ecology diagram in the user’s journey. The frontstage contains the components that the users will directly interact with, including our webpage built through Google Sites, interactive coding examples hosted through REPLs, and a quiz hosted through Typeform. The users will primarily interact with our webpage through our coding examples and quiz. The quiz will give a suggestion to the user on a good first programming language based on their previous technical experiences and desired programming outcomes. From there, users are able to learn more about this suggested programming language on its own page and interact with our embedded coding examples. After exploring our coding examples, users are able to start learning more of the language using our links to vetted external tutorials. From the backstage perspective, we need the back end code to support the website, REPLs to host the interactive coding examples, and logic for the quiz to compute the user’s suggested first programming language.