Contributing to a practice exercise for the JS track

Hey Exercism Community,

I have loved using Exercism in this past month. My coding abilities have grown exponentially by putting it to practice and use every day. I was inspired to create a jazz chord generator that uses methods in a class object similar to the scale-generator exercise in the javascript track. I would love to add this as a practice exercise but wanted to hear your thoughts on:

  • if it makes sense / if it is needed?
  • how an exercise is approved to be added to the javascript track?
  • if you like the code that I have written?

Let me know what you all think. Here is the github link:


1 Like

We would like more exercises that are really suited to be solved using classes. The example code you’ve linked doesn’t look very stateful though. Is there a particular reason why you feel that people would be driven towards a classed based approach?

Hey SleeplessByte, I wanted to say it’s been a joy looking at your solutions to many of the exercises I have been completing! You’re very gifted.

That’s a good question. Honestly the main reason I took a class-based approach was to:

  • practice my own ability of using classes and methods therein (I need all the practice I can get with classes)
  • the scale generator exercise used this approach which was my inspiration to create this

Otherwise I would have just used regular functions instead.

I think this exercise would have a draw to a lot of musicians like myself who are discovering the close link between math and music. My favorite feature of it is that I can have it spit out several different chord voicings in both notes and numbers!

This is something that will be very useful to people and would also show what all you can do with code. The scale generator is very helpful in creating scales if you can remember all the formulas of how to create a major, minor, mixolydian, etc scale. But having a program give you all the chord voicings with just a few simple inputs is really exhilarating (to me at least ) :slight_smile: