Open milesfrain opened 4 years ago
I'm fine with adding exercises to this repo and their recommended solutions. There's a few concerns to keep in mind:
So, perhaps this is the route we should take?
src
(e.g. exercises
)src/ -- folder for storing normal tutorial stuff
exercises/ -- folder for storing exercises
section/ -- name corresponds to section it covers
exercise-name/
problem.purs
solution.purs
ReadMe.md -- overviews the problem and the goal the learner has
Thoughts?
The exercises will certainly be opt-in for readers of the guide. I'm envisioning that the exercises will only be suggested things to add to each example, so there's no risk of incomplete exercises failing to compile. The additional maintenance burden is a major concern. So now I'm thinking that it may be best to track the solutions as a separate branch, where the changes are made directly to the existing example files. (See sample exercises and solutions-branch).
Pros and Cons of the solutions-as-branch strategy are:
Pros:
Cons:
I'm against the solutions-as-a-branch strategy.
I like the "suggestions of what to add to a pre-existing example as an exercise" idea.
How about we just stick to the "suggested additions" approach for now, since that only involves a small change to each readme, and closely matches the solution-less strategy of the official purescript book.
A decision on if and where to track solutions can be made later, with no solutions being the choice for now.
One solution-management possibility is to encourage readers to fork this repo and fill in their own solutions. When all of their solutions are complete, they could add an entry to a readme table in this repo that points to their fork along with the release tag that their solutions were made against.
That sounds good to me!
Nice!
How do you feel about adding a section with one or more exercises to each example? I'm happy to contribute exercises as I work through each section.
It may also be helpful to have exercise solutions. To include those, should I just shift the numbering prefixes?