Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Concept Exercise "Fruit Picker": Add Concept arrow-functions #1340

Closed
Tracked by #1415
junedev opened this issue Sep 11, 2021 · 1 comment · Fixed by #1414
Closed
Tracked by #1415

Improve Concept Exercise "Fruit Picker": Add Concept arrow-functions #1340

junedev opened this issue Sep 11, 2021 · 1 comment · Fixed by #1414
Assignees
Labels
x:action/improve Improve existing functionality/content x:knowledge/elementary Little Exercism knowledge required x:module/concept Work on Concepts x:size/medium Medium amount of work x:status/claimed Someone is working on this issue x:type/content Work on content (e.g. exercises, concepts)

Comments

@junedev
Copy link
Member

junedev commented Sep 11, 2021

Getting Started

Here you can read about what Concept Exercises are and how they are structured:

If you have not done so yet, it is probably also helpful to do a couple of "Learning Exercises" (this is how they are called on the site) yourself. You can also look at the code of an existing concept exercise like bird-watcher (concept for-loops) for reference.

See the documentation above (general documentation), as well as How to implement a Concept Exercise in JavaScript.

Main Task

Currently, the exercise only associated with the concept callbacks. Arrow functions are only mentioned briefly at the end of that concept. Since being able to read and write arrow functions properly is important, they should get their own concept arrow-functions. So after this change the fruit picker exercise will unlock 2 concepts, callbacks and arrow-functions.

The new concept should explain the most important syntax variants. The introduction.md should not explain the details of what happens to this as there will be a separate concept later.

Possible resources that might help:

The exercise could probably stay as is but if you have a good idea how to improve it so it incorporates the new content even better, feel free to do changes.

Don't forget to adjust the design.md file to incorporate the new content and to add the new concept in the global config.json file.
Also remove arrow functions from the callbacks concept and make sure the introduction.md of the exercise includes both concepts.

Bonus Tasks

  • Fix the JSDoc/typing errors that show in the test file.
  • Proof-read the existing concepts, exercise docs etc.
  • Note down potential analyzer comments in the design.md file, see design.md in Amusement Park for an example

How to proceed

  1. First accept this issue by saying "I'd like to work on this" (no need to wait for a response, just go ahead).
  2. Use this issue to discuss any questions you have, what should be included in the content and what not and to collect reference material.
  3. Create a PR and set "exercism/javascript" as reviewers. Additionally you can write in #maintaining-javascript on Slack that your PR is ready for review. Once you incorporated any critical feedback that the reviewer might give you and the PR is approved, it will be merged by a maintainer.
@junedev junedev added x:action/improve Improve existing functionality/content x:knowledge/elementary Little Exercism knowledge required x:module/concept Work on Concepts x:type/content Work on content (e.g. exercises, concepts) x:size/medium Medium amount of work labels Sep 11, 2021
@junedev junedev changed the title Improve Concept Exercise "Fruit Picker" (Concept callbacks) Improve Concept Exercise "Fruit Picker": Add Concept arrow-functions Sep 11, 2021
@pertrai1
Copy link
Contributor

pertrai1 commented Oct 2, 2021

I'd like to work on this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
x:action/improve Improve existing functionality/content x:knowledge/elementary Little Exercism knowledge required x:module/concept Work on Concepts x:size/medium Medium amount of work x:status/claimed Someone is working on this issue x:type/content Work on content (e.g. exercises, concepts)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants