Khan Academy is looking for contractors to improve the JS challenges in their Natural Simulations course. Ideal contractors are both skilled in JS (loops/logic/architecture) and have experience with helping students learn (like teaching/TAing). Contractors are paid $30/hour, up to 20 hours per week. If you’re interested, read the role description and email pamela@khanacademy.org
Coding Challenges Editor
In the Khan Academy Natural Simulations course, we have JS coding challenges that give students the opportunity to practice a new skill/concept (e.g. Speed Bumps).
A coding challenge is often multiple steps. In each step, the student sees a description of the goal for that step, hint code (which is often mostly blanks, depending on desired difficulty of challenge), and the code editing environment. As the student is typing, we check their code to see if they have passed the step, or if they have made a common mistake. In the latter case, we present a message to them that gives them some hint or guidance to improve their code. There are often multiple possible solutions for a challenge step, and many possible mistakes as well.
To do the checking, we have tests that compare the student’s code against “structures”, using the StructuredJS library developed for this goal. Those structures can contain placeholders, so that there can be variation in answers (for example, we often don’t care what color they’ve picked for a fill). Those placeholders can also be inspected, and messages prepared based on their values (so that we can say things like “okay, you almost got it, but the y value is a little too high”).
The hardest part about creating the challenges is to make sure that we accommodate for:
1) all the possible valid solutions that a student can come up with.
2) all the ways that a student can get confused and led astray.
We provide students with the ability to “Report a problem” on challenges, and they often do when they feel like the grader is too strict or the messages too confusing. We go through that feedback to decide how to improve each challenge.
We are looking for someone that can help triage challenge feedback and improve challenges. There is both a highly technical aspect to this role, as you’ll be coming up with structures and logic in the graders, but there is also a pedagogical aspect, as you’ll be thinking about how to reword descriptions and messages to be more helpful.
If you are interested, we will set you up for a sample challenge and student feedback, and you will improve the challenge based on that feedback.