How should I be using Exercism?

I’ve been working my way through the Syllabus on the JS track. But how do the exercises fit into this? should I do all the syllabus first then work through all the exercises? How do the exercises relate to each syllabus topic?

Basically I’m at the very last topic, ‘Promises’, and I have no idea about it. It feels like I’ve missed a load of information or something, so I wanted to check if I’m actually using this platform correctly

And are the exercises in any particular order? How should I progress through them? The difficulty level seems random. I would have thought each builds on the previous… but maybe not?


1 Like

Well there are no real correct answer. Although I can see that you don’t have to do the whole syllabus to do the practice exercises. You will repeat the concepts in the syllabus and if you request mentoring they can show how to use new or improve the usage of the concept to get a better hold of them.

You can request a mentor to reqeust them to explain it more deeply.

This is just my view, perhaps not the most correct answer.

Hey! Do you mean you have no idea about this exercises (e.g. promises are confusing) or you’re feeling that there’s loads of things that you should understand at this stage that you don’t understand yet?

In terms of “how to do it”, the challenge for JavaScript is that they haven’t assigned the practice exercises to each of the learning exercises. If you look at other tracks (e.g. Elixir key concepts on Exercism and Python key concepts on Exercism) you’ll see that there are clearly exercises to practice for each learning exercise as you get stuck.

Because of that, you’re wading through all the learning exercises, but then not being pushed in the right direction of things to practice, which is then probably causing you to feel a bit overwhelmed at the volume of information you need to take in.

Thanks, so there’s no real order to these exercises? I just pick and choose as I like? I would expect the exercises to relate somehow to the progress of the syllabus.

For example, it’s really useful to learn a concept in the syllabus and then be given multiple exercises related to that concept. Instead I’ve zoomed through the syllabus and probably not spent enough time exercising on each concept. I’m left with a big pool of unordered exercises and I don’t know where to start.

1 Like

I guess I feel like it was a sudden jump to a new topic I’ve not heard about before and don’t understand after reading through the instructions. But maybe I shouldn’t be relying on only Exercism’s explanations.

And yes! this is exactly what I mean about the learning concepts not relating to exercises. It is in the Python track you linked to. This is what I’d expect from any learning curriculum: you learn a concept and practice it with multiple exercises and from multiples angles. Then near the end maybe there’s exercises to bring multiple concepts together.

I went through the learning syllabus rather quickly but there wasn’t enough practice. I’m now looking at the pool of unsorted exercises wondering what to do now. It seems a bit strange, surely they should link to the concepts?


They should! But as our tracks are created by volunteers with limited time, it’s likely they haven’t had time to do that (it’s quite a lot of work) and have instead prioritised writing exercises, and the other plethora of stuff they do.

We’re currently trying to work out how to build our volunteer base to solve exactly this sort of issue, where certain critical things don’t get done because we don’t have enough people with enough time to get things all the way finished.

So Exercism needs to solve that, then get new people with more time to help get tracks like JS “finished”, but in the interim, we just have to be grateful for the work that people have put into building everything so far :slightly_smiling_face:

1 Like

Yes. Javascript is the language with the 3rd most exercises. You can see therefore that the number of exercises has been prioritized. I am personally working on a new exercise for javascript.

I have done in total 2 commits and unfortunately, it isn’t that easy to get started since there are not that many tasks which are marked as beginner friendly and are a language I know. I think I have got a good start on writing the exercise but my earlier contributions were more or less going through the documentation and finding old links which makes this a quite big step.

Although people on github is really helpful and I feel like I am getting good feedback and response to my questions so I feel confident that I can pull this off.

sorry if this is a bit off-topic

1 Like

Hey @MikeHud - I think you bring up some interesting questions about how a learner can most effectively utilise Exercism. We are always looking at ways to accelerate learning.

My experience was that when I first started the Go track, I felt similarly disorientated and struggled to build any momentum. I think I was struggling with learning as a whole and I found it difficult to connect the concepts with the instructions etc.

What really helped was buying ‘Headfirst Go’ and working through that systematically, and then concurrently doing an exercise in Exercism.

While I don’t think there is a set ‘best way’ to use the platform, I would continue to experiment with different approaches in using the platform and find a way that suits your learning style.

Final thought, there is some variation across tracks as has been mentioned in the thread but we’re hoping to refine that in the next couple months.

Great question though and let me know if you need anything else!

Thanks everyone for the good replies. I forget that the platform is a work in progress and some things are still in the pipeline.

For me, I feel that a carefully structured curriculum is one of the most important aspects of learning to code. With code/programming in particular, there’s just so much info out there. It is incredible, but totally overwhelming. The value in any course or learning program is having it fed to you in a way that minimises this somewhat, and in an order that makes sense.

This platform is great, the best I’ve found so far. I think I wouldn’t be as lost if the exercises related to the learning syllabus. I also wish I could help! maybe one day

I much appreciate everyone who’s contributed to this. Thank you :-)

1 Like

Hey @MikeHud - likewise, thanks so much for the measured and open posts you’ve facilitated. I specifically enjoyed considering how your experience could be used as a launch pad to improve the learning experience.

For what it’s worth, we tried running some learning cohorts earlier in the year (in Go and Elixir) which were really enjoyable and brilliant experiments in helping us understand how group learning could supplement where you’re currently at.

Will keep you posted with how we progress in helping people learn, but if you have any insights or tips that would help build Exercism into an even better learning experience, please don’t hesitate to reach out!

Maybe my perspective isn’t too relevant to the more typical Exercism users who are building resumes, or keeping their knowledge current, or learning a language for a specific, already designed project: I am here purely for the amusement; it’s my crossword puzzle, my cold winter night company because I haven’t the patience for what Netflix offers.
I like the ungrouped practice exercises. First, it encourages creativity. If you’re pointed in a certain direction you’ll probably go that way. But there are usually many ways to solve a problem, and with the new Go Deeper feature you will be able to see whether making use of alternative methods would have been better than what you found, or even better, yours wins. Remember too that a good practice exercise will involve more than one of the sets of concepts you’ve learned. The ungrouped format also reinforces concepts in your mind if you’re forced to retrieve them from memory yourself. I like to start with the ‘easy’ exercises and after a few of those take a chance on a ‘medium’.


Funny you should mention “crossword puzzle” because that is precisely how I approached exercism when I first discovered it (c. 3 years ago) !

For a few months I simply couldn’t wait to come home and dive into either an erlang or C (and an odd smattering of others) exercise just to unwind. Truly enjoyable times !

Changing circumstances saw me lose touch with exercism until a few months ago. This time, however, I’m hoping to do something more substantial in addition to the unwinding :slightly_smiling_face:.

Truly heartening to see how exercism has matured as a platform. V3 is fantastic !


I know I’ll super late to the party, but I had the exact same response to the JS track and I’ve been working at JS for 3+ years on my own.

I’ve been keeping track of where I’ve gotten really stuck and tried to figure out what might help solve that.

My hope is to be able to contribute to the track.

1 Like

@ajborla Thank you for saying this :blue_heart:

1 Like