Tag practice exercises with practices and prerequisites - #1036
Tag practice exercises with practices and prerequisites#1036pablo-miralles wants to merge 1 commit into
Conversation
Wire the existing syllabus concepts into config.json without adding exercises, respecting the max-10 practices-per-concept limit and only using taught concepts as prerequisites. Co-authored-by: Cursor <cursoragent@cursor.com>
|
@pablo-miralles Thank you for wanting to help! I'm sorry, this is actually wasted effort here: The issue #324 you worked on is labelled "paused" for a reason. Prerequisites hide exercises from students, until they have solved a concept exercise. We decided to wait with this, until we have enough exercises:
Please come up with a plan for discussion first, especially for this task. A pull request made with assumptions you have never discussed is like to cause a lot of frustration on both of our sides. Thanks again for offering your help! |
|
@mk-mxp Thank you for the clear explanation, and sorry for the wasted review time :') This was my first PR ever. I noticed that other tracks in the website lock many practice exercises and unlock them as you learn concepts, so seeing PHP without that surprised me and I jumped straight into this PR. I didn’t notice that #324 was already open. My bad! Just to make sure I understand the workflow going forward: I should start from the issues (find a related one, or open a new issue referencing existing discussion), get agreement on a plan there, and only then open a PR. Is that correct? I’d like to help with concept exercises next, until we have enough to start tagging. I already opened #1035. Should I check #578, ask which exercises are needed there, and only then work on a PR linked to that issue? Thanks again for your time, really appreciated! |
|
The workflow usually is relaxed, but syllabus and concepts need a lot of discussion. So I prefer opening an issue with the suggestions, have the discussions there and then go on to implement what's agreed on with a PR. For a general discussion on the tracks concept exercises we can use #578. The former maintainer suggested drawing a mermaid graph (integrated in GitHub markdown) with suggestions like this of the Odin track - I think that would be a good starting point. Then we should first solve the "multiple concepts with one exercise" problem we have by adding more low level concept exercises. Then we urgently need basic conditionals (if-control-structures) and the plain functions (user-defined-functions) we use a lot. |
Summary
practicesandprerequisitesfor all 108 active practice exercises inconfig.json(deprecated ones stay empty).practicesat most 10 timesprerequisitesonly use concepts already taught by a concept exercisehello-worldkeeps empty prerequisitesApproach
practices: one primary concept per exercise, distributed so common skills (strings,arrays,loops,class-basics, …) stay ≤10.prerequisites: unlock using currently taught concepts (basic-syntax,strings,integers,arrays,class-basics, …).foreach-loops,match-expression) can still appear inpractices; they will unlock more naturally once their concept exercises land.Gaps after tagging (0 practice links)
These concepts still have no practice exercise tagged (need future exercises and/or concept exercises first):
class-visibility,constructor-promotion,covariance-and-contravariance,readonly-properties,scope-resolution-operator,type-juggling,union-types,variable-functions,variable-length-arguments,variable-scopeNote:
type-jugglingandvariable-length-argumentsare taught by concept exercises, but were not used as primarypracticestags to stay under the per-concept cap / avoid stretch mappings.Test plan
bin/configlet lintbreak-continue-keywordsonkiller-sudoku-helper,match-expressiononsay/yacht/robot-simulator)Made with Cursor