Here we have collated a list of the questions asked frequently by mentors. If you have a question that hasn't been answered here, please post it on the #questions channel on Slack.
Once you've become a mentor via the become a mentor page, you can access your mentor dashboard at any time. When you joined you should have received an invitation to our Slack Room. You can find more instructions in the start-here channel on Slack.
The purpose of Exercism is to improve programming language fluency rather than proficiency. In this sense, fluency is the ability to "speak" the language, to read and write code in it that communicates with other programmers and the machine. Our goal is to teach someone to write code in that language like a "native" programmer in that language would. Proficiency is the ability to write real-world programs using a language - e.g. understanding the standard library, the ecosystem, displaying technical rigor or algorithmic competency.
Each exercise on Exercism touches upon several programming concepts. A learner should touch on 2/3 concepts as they work through their iterations whilst taking on board mentor feedback and improving their solution through each iteration. If a student has done this, you could ask them if they would like to move onto the next exercise or if they'd like to learn how to improve their solution further to allow them to choose their own pace and depth of learning.
Ideally within a week of a learner submitting their solution to help maintain their motivation and enthusiasm for the exercise. We will be implementing a "Leave of Absence" notification button for mentors soon that you can use if don't feel like you'll be able to respond to solutions within this timeframe. This button will pass the solutions you're mentoring onto another mentor.
If you're not sure what feedback to give, paste a link to the solution (e.g. https://exercism.io/mentor/solutions/...
) on the relevant language channel on Slack and brainstorm some ideas with other mentors.
This is something we're extremely passionate about helping you with and we are in the process of writing some awesome guides on giving great feedback with lots of examples. Eventually we hope to have a guide for each track.
In the meantime, here are some recommended resources:
- The Science and Art of Receiving Feedback Well
- Unlearning Toxic Behaviours in a Code Review Culture - Conference talk by Sandya Sankarram and related Blog Post
- How Positive and Negative Feedback Motivate Goal Pursuit
- The #mentor-the-mentor channel on Slack, where you can learn to be an amazing mentor from other amazing mentors.
In general, behaviours to avoid:
- stating opinion as fact
- avalanche of comments
- judgmental questions
- sarcasm
The Recurse Center has a simple but effective list of social rules that can guide both your mentoring and personal interactions.
Examples:
Unhelpful: “Why didn’t you just do ___?” (asking judgmental questions)
Helpful: “You can also do ___, which has the benefit of ___”
Unhelpful: “Did you even test this code before you submitted it?” (being sarcastic)
Helpful: “Your code breaks during “x, y, and z” edge cases, can you please address those cases?”
We appreciate this is a rough guide and we are working on creating documentation for each exercise to help with this.
Please check our Code of Conduct for more information about our expectations of conduct. If you would like to report something, please reach out to us at abuse@exercism.io and we will try to fix or resolve the issue respecting both you and your privacy.
We had 1,000 submissions per day on the original Exercism site, of which fewer than 20% received feedback. Our key launch-targets are to achieve >95% feedback-rate. We have based our mentor recruitment numbers on mentors offering 1hr/week on average. If you can offer more than that then that's great!
Yes! To mentor another language go to https://exercism.io/mentor/configure and select the languages you want to mentor.
Yes! We have this logged as an issue on GitHub (see exercism/exercism#3922) and will be implementing a Leave of Absence notification soon.
If you would like to stop mentoring a track, please revert the pull request (PR) you (may have) made to add yourself to the list of mentors on the website for that track. You can find all website copy PRs on the website copy repository. Filter with the Author dropdown to find yours and select the PR for the right track (if you made more than one). Near the bottom of the PR, click Revert. If you made multiple updates with a single PR then create a new PR reverting the specific track addition.
Go back to https://exercism.io/mentor/configure and check that you have clicked the “Save” button at the bottom of the screen. Some people have missed this step and then been understandably confused by why they can't see the Mentor Dashboard. This should fix the issue.
The tests are marked as skipped to encourage people to use the TDD approach of doing one test at a time. When people submit their solution and you view it in the UI, you're seeing the original tests that the user was sent, not their final tests file.
If you have a question rather than an issue, use the #questions channel on Slack. If you believe it is a genuine issue, be sure to check the relevant GitHub issue tracker first to see if it has already been reported or addressed:
- The Exercism Website or Product
- Exercises - Select your language and then look at the issues tab
You can search through issues (remove the is:open
filter to include closed/resolved issues). Try a few different keywords.
If your problem hasn't been reported, then create a report in the appropriate repository by selecting the green New issue button.
Make sure to include the following information:
- Details on the issue you are experiencing
- Instructions on how to reproduce the issue
- If applicable, reference to any related issue using its issue number (formatted like #1203)
If you have spotted a typo or if you have a suggestion for clearer language or instructions, then create an issue for Exercism Website Copy with the following information:
- Link to the page where the issue is
- Explanation of what the mistake is or what is unclear
- Your proposed change