You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've been thinking of exercises that fall at two ends of the spectrum; when I saw the linked-list exercise, it got me thinking: the majority of the exercises fall into the "clever puzzle" category or the "project euler" category, both of which are great.
But I'd love to see more fundamental CS type exercises, as they're both critical to understanding data structures, algorithms, Big O complexity, etc. - for instance, "implement insertion sort" or quicksort, maybe Dijkstra's shortest-path algorithm.
Then I started thinking about knapsacks. Do we want NP-complete problems in the exercise set? Obviously a chess solver would be out of bounds as chess is in EXP, but what about problems in NP?
What about writing tests that are smart enough to determine the space/time complexity of the solution? (Easier in languages with reflection, I know, but just spitballing here.)
What's the lower-bound (I think linked-list sets it pretty low) and what's the upper bound (NP-hard, NP-complete, beyond?), or is it just "try it, people can skip it?"
The text was updated successfully, but these errors were encountered:
IMO, the problems on exercism aren't designed to teach you anything in particular. It's the conversations about the resulting solution that we are after. Exercism isn't about teaching you computer science, or even teaching you how to program. (It is assumed you already know how to program in the language for any exercism language track.) Rather, it is about comparing, contrasting and discussing the solutions that different people make to the same exercise.
I think that introducing exercises that are about more fundamental CS-type subjects would probably lead to really interesting conversations.
If we move forward with #63 then perhaps it would be easier to create an exercise flow that is more flexible, and people could opt in or opt out to certain types of problems.
I've been thinking of exercises that fall at two ends of the spectrum; when I saw the linked-list exercise, it got me thinking: the majority of the exercises fall into the "clever puzzle" category or the "project euler" category, both of which are great.
But I'd love to see more fundamental CS type exercises, as they're both critical to understanding data structures, algorithms, Big O complexity, etc. - for instance, "implement insertion sort" or quicksort, maybe Dijkstra's shortest-path algorithm.
Then I started thinking about knapsacks. Do we want NP-complete problems in the exercise set? Obviously a chess solver would be out of bounds as chess is in EXP, but what about problems in NP?
What about writing tests that are smart enough to determine the space/time complexity of the solution? (Easier in languages with reflection, I know, but just spitballing here.)
What's the lower-bound (I think linked-list sets it pretty low) and what's the upper bound (NP-hard, NP-complete, beyond?), or is it just "try it, people can skip it?"
The text was updated successfully, but these errors were encountered: