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.
Goal
The goal of this issue is to extend the existing concept exercise Freelancer Rates that teaches the numbers concept.
The exercise is already in good shape but currently only explicitly introduces numbers as a concept. Additionally it should also introduce arithmetic operators incl. shorthand assignment operators.
See this list for details on the learning curve we are aiming for.
Additional Learning Objectives
- How to do perform the following 6 arithmetic operations: addition, subtraction, multiplication, division, remainder, exponentiation
- What are shorthand assignment operators for those 6 operations and how to use them
(To avoid too many tiny concepts, both of these will be combined in one additional concept called arithmetic-operators.)
ToDos
Add Concept
Adjust the Concept Exercise
Fixes for the Existing Content
This part is optional polishing "while you are at it" but can also be tackled in another issue/PR later.
Ideas for About.md of the New Concept
/ does not perform integer division like in some other languages
- behavior of
% if one operand is negative, see MDN docs below the demo box
- typical use of
% for keeping a value inside a range/ "if you reach the end while iterating, start from the beginning" (not sure how to describe this well but explanation should also be understandable for someone who does not know ring theory)
** does the same as the older Math.pow()
Help
You can choose to do this solo-style, or collaborate with multiple people on this. The suggested approach is to
- First accept this issue by saying "I'd like to work on this" (no need to wait for a response, just go with it) and optionally request that someone works with you (and wait for a second person to accept your request).
- Use this issue to discuss any questions you have, what should be included in the content and what not and to collect reference material.
- Create a PR and set "exercism/javascript" as reviewers. Additionally you can write in #maintaining-javascript 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.
Credit
This contribution grants you an author slot. Add your username to the authors key in the config file.
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.
Goal
The goal of this issue is to extend the existing concept exercise Freelancer Rates that teaches the
numbersconcept.The exercise is already in good shape but currently only explicitly introduces numbers as a concept. Additionally it should also introduce arithmetic operators incl. shorthand assignment operators.
See this list for details on the learning curve we are aiming for.
Additional Learning Objectives
(To avoid too many tiny concepts, both of these will be combined in one additional concept called
arithmetic-operators.)ToDos
Add Concept
arithmetic-operatorsinconceptsand add the concept to the general config.json file (incl. adding it toconceptsfor thefreelancer-ratesexercise there)Adjust the Concept Exercise
%or**) and one sensible use of a shorthand assignment operator. You can add new additional tasks but you can also consider replacing/adjusting an existing task that might currently not teach much more than the other tasks already do. Updating the tasks includes the following filesFixes for the Existing Content
This part is optional polishing "while you are at it" but can also be tackled in another issue/PR later.
Ideas for About.md of the New Concept
/does not perform integer division like in some other languages%if one operand is negative, see MDN docs below the demo box%for keeping a value inside a range/ "if you reach the end while iterating, start from the beginning" (not sure how to describe this well but explanation should also be understandable for someone who does not know ring theory)**does the same as the olderMath.pow()Help
You can choose to do this solo-style, or collaborate with multiple people on this. The suggested approach is to
Credit
This contribution grants you an author slot. Add your username to the
authorskey in the config file.