[Rust Syllabus] Overview + Tracking

To update: Dinesh will not be working on this anymore.

I know an incredible proficient Rust developer. Would it make sense to ask if he want to contribute? Or are here bigger issues in the process?

(Didn’t follow much things about the Rust track.)

Syllabuses are rather difficult to create and take a bunch of time. And more or less always need a person who is stubborn and has time to manage the development of the syllabus.

Yeah, I know. Working on my first contributions to the Go track and new concepts for a while. And all those different files still drive me crazy. :worried:

Hi Sebastian, sorry, I forgot to reply.

I think that’s a good idea, regardless of whether or not we actually get around to the syllabus!

Is it just me, or is the team being silent on this?

I will ping him. Don’t know if this could be something for him. Pretty busy, too. And it’s really not so easy to contribute (on a syllabus). I still didn’t provide any progress for my Go track contributions, since it was so hard to find my way through all the documentation and different files. Pretty frustrating. So I did way more mentoring, since this “just work”. I will give feedback.

Hi. Potential novice volunteer here.

I am getting started with Rustlings, which probably means there is not anything I can do to assist (I’ve looked at the 5 Issues tagged Good First Issues, which seems to confirm this).

I could be wrong, but I don’t see an opening to (say), iterate going through lessons (easily set up) and flag problems or gaps.

Probably all I can do now is level up my Rust, and follow this thread.

slightly OT: I recently did the Golang Concept tree, alongside a Go book…

…I actually had to STOP reading the book because it was slowing me down.
(now, I’m still going catching-up on the book, which shouldn’t be skipped, but it’s now so much easier thanks to Exercism). That would be amazing for Rust.

Hi @sprive, thanks for expressing interest.

I wouldn’t bother going through what’s currently present in terms of a syllabus in the repo. I think for the work on it to continue, there needs to be a new comprehensive vision for it. Which means what’s present right now would be reworked significantly. I’m the only active maintainer on the Rust track right now and I don’t have immediate plans to work on the syllabus. I have plenty of maintenance-type work I wanna do first.

The Good First Issues are probably mostly outdated, I’ll have to cleanup the backlog of issues from the maintainers who preceded me to close what doesn’t make sense anymore.

I do hope you stay in the loop. Consider subscribing to the topic Rust, and posting about your experience on the track and ideas to improve it. As a maintainer, I’m further removed from student’s experiences than I would like. Don’t hesitate to tag me, here or on discord.

And most importantly, I hope you have fun learning Rust!

Thanks @senekor for your reply. Even from what little I know, it’s apparent this is a ton of work. So, double thanks for maintaining :smiley:

I’m now subscribed to Rust, and follow this thread. If this is the canonical thread, it might help to “bump” it every few months with some kind of status. Just for outside observers.

I will post about the Rust track (but not for a while… since I need to use enough outside material to meet the bar for practice).

Yup, having fun. This whole site is amazing.

Hey all, I thought I might resurrect this old thing.

I’ve been looking at getting back into Rust lately, and getting more deeply involved generally. If there’s any interest for this I would be happy to do the research and writing and come up with a syllabus from scratch? (from reading the discussion, that seems to be the course we recommend taking)

Please let me know if I should start working toward this! I wouldn’t want to step on the toes of someone else who has taken this up upon themselves.

I currently do not have time to help with this. That means I also cannot do the amount of reviews that would be required. If there are other people willing and able to do that work then feel free to do it without me. @iHiD probably has opinions on how the process would have to look like to have a chance at being successful.

I saw that Jeremy was advising to trust the Exercism template, and not stray too far off it. I don’t imagine he has the time to do reviews, but for what it’s worth I was inclined to follow his suggestions.

I’ll might try to do some work and see if it piques any interest on the topic, try and get enough eyes on it without having to take up even more of your time.

Unrelated to this thread, once I’m more intimately familiar with the exercism stack I might try for maintainer of the Rust track, lighten your load a little.

Sounds good! There is not much maintenance work to do, but I’m happy to onboard new maintainers. A different set of eyes might find a lot to improve.

I’d be very happy to see you do this. Thanks for offering! :slight_smile:

My strong suggestion would be to choose a track that’s got a similar structure to the one you’d like to follow for Rust and then fork their exercises and change the text/stubs/examplars to Rust. You might need some extra exercises early to explain some Rust things, but try to keep Rust-specific topics till after you’ve covered some basic topics that the student will already have a mental grasp of.

We want to glue Rust onto their existing Neurons. If they already know how to do arithmetic from another programming language, then showing them how to do arithmetic in Rust is a good way of them finding the commonalities in the languages. If you focus on those then the scary/exciting new bits won’t seem so overwhelming and a lot of them will sink in via osmosis. The more scary/unfamiliar the teaching topics are, the more they’ll run off. And also the more you’ll find yourself try to carve a totally new path through a syllabus, which will likely overwhelm you too!

1 Like

I was thinking of looking into Elixir. It seems to be something of a darling in Exercism and it (also) has a lot of idiosyncrasies.

I’ll bear in mind your advice for teaching commonalities first.

For now I’ll shut up and create a thread once I have something to show, hopefully within the next few weeks. Don’t want to waste your time and create work about doing work.

2 Likes

Hi everyone. Potential novice volunteer in the house.

Cross reference to potential Rust GoF pattern implementations: Add GoF design patterns? - #4 by senekor

Is there an overview about Rust concepts not contained in the track already?

That would be all of them, the current syllabus is planned to be scrapped entirely. I was planning to start work on a brand new syllabus a couple months ago but have not had the time.

1 Like

@ellnix GitHub - google/comprehensive-rust: This is the Rust course used by the Android team at Google. It provides you the material to quickly teach Rust. could be worth looking into as well. It is pretty famous and used in the Google Android team e.g.

1 Like

Hi,

i would really like to help rust get a syllabus and contribute back to exercism. It would also help me to get better in rust i guess.

So firsst i would like to sum up this thread:

  • Current syllabus should be dumped (backed up)
  • A syllabus from another track should be copied into Rust
  • This syllabus should be “rustified”

Am i right? Assuming i am right i would suggest the following:

  • Find a suited syllabus.
  • Back Up the old syllabus
  • Copy syllabus over
  • Create some documentation what has to be done and how it has to be done
  • Wait till we have the fundamental concepts
  • Beta test
  • Polysh
  • Publish
  • Include rust specific topics

This would split up the process in handle able chunks.