The react exercise should probably be classified as Hard instead of Medium

If you look at this exercise for some other languages like Java and JavaScript, it is classified as “Hard” but for “Go” it is classified as “Medium”. I understand that difficulty can vary between languages for a particular exercise but I found this one to be difficult (close in difficulty to the Forth exercise which is “Hard”) as my solution involved mapping compute cells to their dependencies.

Other shorter solutions from other community members take advantage of the fact that you can capture the dependency cells of compute cells in a closure so you don’t need to store them in a data structure and they take advantage of the fact that compute cells are created after their dependencies but these solutions often have the drawback of iterating through all compute cells ever created on each update.

If the difficulty of this exercise is set algorithmically, it may skewed (pure speculation on my part as I have not looked at any statistics) by interest in solving this problem (due to the popularity of reactive frameworks like React).

Setting difficulties is hard. Difficulty is extremely subjective and needs to somehow encompass a whole bunch of criteria. Based on the student’s prior experience and background, what is hard to one person might be trivial to another. Updating a single exercise difficulty in isolation tends to be really tricky. To get any meaningful signal, it’s helpful to get people to go through all the exercises on a track and suggest a difficulty for all of them. Without that slightly richer data, it’s hard to adjust difficulties. See also the dozen or so prior discussions about calibrating difficulties.

1 Like