exercism / website-copy Goto Github PK
View Code? Open in Web Editor NEWA repository for exercism's website's copy
A repository for exercism's website's copy
Text in the page says:
The READMEs are generated, and all the details are explained here.
With the "here" being a link to https://exercism.io/language-tracks/exercises/anatomy/readmes.md, which is a 404.
There is this test in the rake test
task:
https://github.com/exercism/website-copy/blob/master/Rakefile#L23-L26
It does check if the link_url
of a mentor is the empty string.
But the README states, that one should put an empty string for "no entry". Instead the test wants to see null
here. Which according to the README means to use whatever GitHub has as link_url
.
Side exercise. Great to step up from basic loops and Enumerable#each to more powerful Enumberable methods.
There is no method called each
on Enumerable module, it is a dependency to the Enumerable module, similar to <=>
for Comparable module.
It is easy to miss this check when manually checking mentor bio JSON updates. Sometimes people grab the wrong file and sometimes those reviewing forget to check that the first letter of their name agrees with the name of the JSON file.
I would like to see a test added to Rakefile that will confirm that first letter and filename agree.
Create some mentor notes for the java/flatten-array exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
Seems that this didn't compile as expected. Here's the rendering I get:
website-copy/walkthrough/index.html
Line 156 in e04726b
To have the exercism executable available everywhere on the command line you need to make sure ~/bin is in your $PATH.
There is a chance it’s there already; let’s see whether it is:
<a href="javascript:void(0)" data-passage=" ":$PATH:" == *":$HOME/bin:"* "> ":$PATH:" == *":$HOME/bin:"* </a> && echo "~/bin is in PATH" || echo "~/bin is not in PATH"
If the above prints ~/bin is not in PATH let’s add ~/bin to $PATH and reload Bash configuration:
I see in one entry about uninstalling cli that there are other issues that describe how to do that, but I can't find them. Can you point me there or tell me how to uninstall the CLI? The FAQs do not provide any discussion I can find.
Update with: The mentor notes are in the dashboard.
The Mentor FAQ has what appears to be out of date links to https://github.com/exercism/v2-feedback/issues and others in that repo; post-migration does this make any sense? The contributing.md file in that repo has been updated to reflect deprecation.
For some reason when I submit an exercise and later make a modification prior to a mentor viewing it, and sometimes after a mentor has viewed it, it will allow me to submit the exercies but does not update the code shown.
Create some mentor notes for the java/robot-name exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
Create some mentor notes for the java/matrix exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
There is no content on the page for transitioning from Version 1 to Version 2 of the command line interface.
What is happening is sometimes people are branching off of these branches (instead of master) in order to create their PR for their bio notes. Which creates some difficulty later when it is time to merge. A lot of the new mentors appear to be new to git and so it becomes difficult to work through this; the process of on-boarding their bio just became extra complicated.
To combat this it would be helpful that after a branch has served its purpose that it be deleted from this repo. If you can do your work in a branch in a fork, that would be even more helpful.
I periodically have been removing branches that I find are no longer associated with a PR and I can see that their changes have been merged into master.
Create some mentor notes for the java/bank-account exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
I reviewed submission
https://exercism.io/mentor/solutions/e659f656d83242a0a1d73688c6ce805f
and asked for revs. Student replied, agreed to refactor, but has not resubmitted.
The submission is listed in my Dashboard under the Requires Action label.
Additional Information: I've been away from Exercism for about 10 days: I may have missed something that was entered and deleted.
Okay, this is a bit odd.
On my environment, the suggested "arrow function" flavor of solution for two-fer
is this:
export const twoFer = (name = 'you') => `One for ${name}, one for me.`
However, that solution doesn't actually pass for me. The default value 'you' is not set successfully, and I get, in the failure:
Expected value to equal:
"One for you, one for me."
Received:
"One for , one for me."
When using arrow functions, it only works if I use ${name = 'you'} in the template string.
I've been Googling -- can I not use default values in arrow functions? and I can't really get a clear answer:
https://stackoverflow.com/questions/34354105/default-parameter-value-in-arrow-function
So I think one of these things are the case:
Any thoughts?
I have gone through all of the core exercises and made sure that we either
(1) already have mentor notes or
(2) have an issue to create them
It would be best if we had a bug for all of them, but the manual work makes me want to take a breather and get back to it once we finish getting mentor notes for all of the core exercises (since that takes priority).
After we have finished up creating mentor notes for the core exercises, we should move onto the side exercises and this issue should stand as a reminder of that intention until someone (possibly a later version of myself) has time to add issues for the rest of them.
Create some mentor notes for the java/linked-list exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
Backfilling an issue for this. There is already a pull request: #1006
Backfilling an issue for this. There is already a pull request: #1023
For discussion, improvements and filling the gaps in #875
This requests stems from an open issue on the CLI exercism/cli#680 (comment)
A lot of students ask for help with setting up the CLI on Gitter. Many of them also post their token as part of the command they're stuck at. @NobbZ is usally pretty fast at telling them to reset it and to not share it again, but it happens so often that perhaps there should be a hint on the website itself that the token is like a password and should not be shared.
The commit history of the walkthrough file makes me think that it's compiled with some tool and not edited directly in the HTML, is that correct? Otherwise I'll just add the hint myself, if it only requires editing the HTML.
There are also other places on the website where the token appears, but I can't find them in this repo.
During today's Automated Mentoring Project discussion on Slack a few important things were brought up regarding the mentor's role in addressing stylistic issues, like sub-optional variable names:
I think we should add a section on the Mentoring FAQ explaining how a mentor should focus on fluency and how stylistic tweaks in general shouldn't be the sole reason to disapprove a submission.
I'm not submitting a PR because I was only made aware to this different perspective today. Maybe @iHiD or @kytrinyx have a better understanding of all the nuances to add that section.
Here we have collated a list of the questions asked frequently by mentors.
Join the "start-here" channel on Slack and you will see some step-by-step instructions that will guide you through the process.
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.
In the mean time, here's some recommended reading on the subject: https://www.amazon.com/Thanks-Feedback-Science-Receiving-Well-ebook/dp/B00DMCV0XE/
Behaviours to avoid:
Read full blog post on this here: https://medium.freecodecamp.org/unlearning-toxic-behaviors-in-a-code-review-culture-b7c295452a3c
Examples:
Unhelpful: “Why didn’t you just do ___?” (asking judgemental
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?”
These have been taken from conference talk by Sandya Sankarram on Unlearning Toxic Behaviours in a Code Review Culture https://drive.google.com/file/d/1ROZA9yKpEa8suiqVXtPO0IJtqa95SOjE/view.
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.
We appreciate this is a rough guide and we are working on creating documentation for each exercise to help with this.
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.
Yes! We have this logged as an issue on GitHub (see exercism/DEPRECATED.v2-feedback#162) and will be implementing a Leave of Absence notification soon.
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!
If you find anything that's broken, first see if it is listed here and if not please add it https://github.com/exercism/v2-feedback/issues
Please reach out to us at [email protected] and we will try to fix or resolve the issue respecting both you and your privacy.
If you'd like to stop mentoring a track please email us at [email protected] and let us know.
Yes! To mentor another language go to the "Configure your mentor settings" page via the main menu and select the languages you want to mentor.
If you have a question that hasn't been answered here, please post if on the "questions" channel on Slack.
I added the comments to the go-analyzer
repo in the comments
branch and /comments
folder. Feel free to move them to this repository whenever you are ready.
https://github.com/exercism/go-analyzer/tree/comments/comments
I used a directory structure that can be directly derived from the comment handle itself:
go.general.strings_trim_space_used
=> go/general/strings_trim_space_used.md
go.two_fer.missing_share_with_function
=> go/two_fer/missing_share_with_function.md
go.hamming.mixture_of_runes_and_bytes
=> go/hamming/mixture_of_runes_and_bytes.md
I added the comments to the python-analyzer
repo in the comments
folder. Any feedback is welcome.
https://github.com/exercism/python-analyzer/tree/master/comments
I followed the same structure as the Go and Ruby analyzers and made each comment an individual MD file. The Two Fer analyzer isn't using these files yet since I wanted to get feedback first. I will fix any issues with the comments and integrate them with the Two Fer analyzer so they can be moved to this repository later.
We recently added the Grep exercise as a side-exercise on the Ruby track. See: exercism/ruby#948
Let's create the mentor notes for it 👍
cc @exercism/website-copy-ruby
https://exercism.io/tracks/python/installation
This page has an unordered list at the bottom with more python resources. The top link is is a link to the current page. All it does is refresh the page.
Hi,
I'm talking about https://github.com/exercism/website-copy/blob/master/tracks/haskell/exercises/leap/mentoring.md
The last code block has isDivisibleBy
but it's never used.
Should it stay the same and the main code would be
isLeapYear :: Integer -> Bool
isLeapYear year
| not $ year `isDivisibleBy` 4 = False
| not $ year `isDivisibleBy` 100 = True
| not $ year `isDivisibleBy` 400 = False
| otherwise = True
isDivisibleBy :: Integer -> Integer -> Bool
isDivisibleBy x n = x `rem` n == 0
Or alternative, use a negative form:
isLeapYear :: Integer -> Bool
isLeapYear year
| year `isNotDivisibleBy` 4 = False
| year `isNotDivisibleBy` 100 = True
| year `isNotDivisibleBy` 400 = False
| otherwise = True
isNotDivisibleBy :: Integer -> Integer -> Bool
isNotDivisibleBy x n = x `rem` n /= 0
?
There is nothing on the page about uninstalling the CLI even though Google searches indicate that there are uninstall instructions on the page.
The copy says "see step 8" but the numbered lists restart under each heading, so there is no step 8.
Screenshot from https://exercism.io/getting-started
Hello!
As both a mentor, and learner, I find the current .../exercises/.../solutions/
pages a bit strange. The solutions are ordered by number of comments, right?
I'm not sure whether sorting by likes, loves or geniuses is better, and would therefore like to suggest a clustering approach. Many solutions are similar, so it doesn't really matter whose version I select. I feel that the most instructive comparison is the one between differently structured solutions. Might these different structures be determined automatically somehow?
If yes, how about some kind of iPhoto-like visualisation of the "solution approaches" then? With one thumbnail per cluster that highlights that structure's main features (and maybe the comment, like, etc. stats of all individual solutions in that group summed up). And the thumbnails could be aligned like on a Pinterest-board: longer and shorter code-thumbnails tiled.
That latter display style could be used even without clustering, as an MVP so to speak for more informative solutions pages.
What do you think? Are there any other plans to update those pages?
Create some mentor notes for the java/saddle-points exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
Create some mentor notes for the java/rotational-cipher exercise.
Most importantly it should include one or more reasonable solutions (at least the general structure of a reasonable solution).
Text from the site reads:
If you are still having trouble open an issue in exercism/cli on GitHub with the output of the debug command.
exercism debug
however the cli does not recognize debug
and instead uses troubleshoot
as the command for this function.
To get started with mentoring, log into your Exercism account and click on “Mentor Dashboard” in the main menu.
You will see you Mentor Dashboard which lists solutions that have been submitted by learners and are ready for mentor feedback. Here you can filter the solutions by Status, Track (language) or Exercise. We recommend using the “Exercise” filter so you can give feedback on multiple solutions while a particular exercise is fresh in your mind.
The right hand side shows how many solutions you’ve mentored so far so you can see how your hard work if you’re helping out the community.
Click on one of the solutions to start giving feedback. This will take you to the mentor feedback interface where you can write and submit your feedback.
You can click the the “Instructions” tab to remind yourself of what the exercise is about. These are the same instructions given to the learner.
The "Test Suite" tab shows the tests that the user has made pass in order to solve the exercise.
The “Solution” tab is the code the learner has submitted for feedback. The iteration number is shown in the top right corner.
We recommend taking a look at the learners previous iterations so you can see their progress and give helpful feedback which considers their journey.
Under "Mentor Discussion" you will see two tabs where you can write your feedback and preview what you've written.
Once you're happy with the feedback you've written, click "Comment". 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.
If you come across a solution you don't want to give feedback to, you can click the "I'll pass, thanks" button and you won't ever see the solution in your Mentor Dashboard queue again.
When you think a learner has learnt enough from the exercise (i.e. they've touched upon a couple of concepts and made good process with each iteration based on the feedback given), you can allow the learner to progress by clicking on the the "Approve and comment" button (appears when you type). You will need to add a comment before hitting this button, for example "It looks like you've learnt enough from this exercise, great work."
Once you have submitted your comment you can go back to the Mentor Dashboard and choose another solution to give feedback on.
For example: https://exercism.io/become-a-maintainer
This might depends on OS + Browser combination (as exercism uses system-fonts (yay!)), but the current way the headings are set up makes it hard to know where the header ends and the text start and which paragraphs belong where:
Consider increasing the margin between a paragraph and the next heading, or easier, upping the font-weight by a hundred:
Further more, the h2
and h3
have the same size:
Whereas these are actually supposed to look something like this:
#generic-page h2 {
font-size: 22px;
}
#generic-page h3 {
font-size: 18px;
}
#generic-page h2, #generic-page h3 {
line-height: 18px;
font-weight: 500;
margin: 30px 0 10px 0
}
The links in the footer are not legible. It's below normal-size and the color combination #aaaaaa
/#fafafa
has a contrast ratio of 2.23, which is not sufficient. At this size, it needs a ratio of at least 4.5.
Consider using the #737373
on top of the background of #fafafa
which has a contrast ratio of 4.54
footer .legal .copyright,footer .legal a,footer .legal .created-by {
color: #737373;
font-size: 13px;
line-height: 15px;
display: inline-block
}
On the 'Mentoring workflow' page the references and screenshots to the "I'll pass, thanks" button need updating to "Leave conversation".
On the page https://exercism.io/tracks/elm/resources
the link 'More at the official language site.' points to a relative path, instead of to the real site
Some example links are broken, for example: http://elm-lang.org/examples/zip
which redirects to http://try.elm-lang.org/examples/zip which cannot be resolved.
This is not the fault of the exercism team but you might want to replace the links with something else or update the text. I just wanted to point out that they don't work atm.
I think the correct place to raise this is probably the website project, but there's no Issues tab visible there.
Pages like https://exercism.io/tracks/kotlin/installation have links on them like https://exercism.io/tracks/kotlin/installation#macos (just under "Choose your operating system"). These links do not work as there is no anchor tag called #macos on the page.
If you view the doc markdown file that contains the page information on github https://github.com/exercism/kotlin/blob/master/docs/INSTALLATION.md the links do work.
Presumably there is a problem converting the markdown to HTML for the main site.
Probably relatedly, the styling of the H1 tags on the website doesn't look right to me, but I guess that might be deliberate.
Current text on the site reads:
exercism configure --key=YOUR\_API\_KEY
but the cli flag is actually --token=
and the account settings page presents it as CLI token
, so the site should be edited to read:
exercism configure --token=YOUR\CLI\TOKEN
After reviewing the become a maintainer page, it appears that all links with '/you-can-help' are broken.
(ex. a link for triage-issues (https://exercism.io/you-can-help/triage-issues.md) as found on the become a maintainer page)
When clicking on any link that is backed by a markdown file located in you-can-help/
, the file does not exist.
ex.
Triaging issues
A great issue is detailed and actionable. When they're not, you can help ask the questions to make them so.
For more detailed suggestions about things to keep in mind when triaging, check out this documentation.
when clicking on this documentation
you are met with this screen:
when clicking on the link through github, you are met with the 404 page.
Is there a place where the files now live? If so I would be happy to update!
Cheers
The MIT and CC-BY-SA-4.0 pages do not have the license text on them right now.
I think, based on this part of the website code, that the pages_controller
is looking for these in the "pages" directory of this repo, but the license markdown files are in the "licenses" folder instead.
I am happy to make a PR to move those files into the "pages" directory, but I wasn't sure if it would be better to adjust things on the website side instead.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.