(Note: there’s a lot of preamble you can read at Becoming maintainer of the Rust track but you can also skip that and start here :))
This issue is going to be a tracking issue for what we’re doing to get a new Rust Syllabus built. I’m really excited about getting the it launch and also about trying a more collaborative approach to syllabus building at Exercism! Rather than adding too much noise to this issue, please consider opening new issues for specific questions.
Here are a few key points to note:
- The Exercism staff (specifically me, @ErikSchierboom and @jonathanmiddleton) are going to lead this project, but try and avoid doing any actual coding/writing/reviewing. We want to empower and knowledge-share with the people involved.
- We’re going to loosely follow the syllabus of the Rust Book,
- Someone should be able to learn Rust through this syllabus.
- We want to get people writing Rust code as quickly as possible using their existing knowledge, so the first set of exercises won’t have too much Rust-specific stuff in.
- When a student gets to Rust-specific exercises, they should be able learn in bitesized chunks and feel confident without needing to read other websites.
The project is going to be structured like this:
- Build out the first few exercises that don’t require Rust-specific concepts (effectively chapter 3 of the Rust book). A lot of this work has already been done by @isDineshHere - we now need to go through and get those merged.
- For each Rust-specific topic, discuss in a dedicated thread: firstly agreeing an exemplar exercise, then agreeing (in bullet points) the topics to cover in the introduction and the about, then agreeing the exercise/tasks. Then someone will go and turn that into an Exercise and Concepts.
- Connect the right Practice Exercises to each Concept
- Do a refinement pass on everything
We’re going to take an optimistic merging approach, where if something is pretty much there, we merge it, then in the final phase, we’ll tidy things up.
This is a list of the official forum topics for each of the steps above (WIP):