rust icon indicating copy to clipboard operation
rust copied to clipboard

✨ (concepts) Add concept exercise `bird-watcher`

Open devkabiir opened this issue 1 year ago • 4 comments

This is inspired by the same in csharp track. Provides introduction to for loops, arrays and a bit of iterators.

devkabiir avatar Apr 10 '23 13:04 devkabiir

Provides introduction to for loops, arrays and a bit of iterators.

I've only briefly looked at the code, but I feel like this might be a bit much to introduce. My hunch would be to see if we can introduce iterators later on. Note that it is perfectly fine for this exercise to expect the student to write things in a somewhat cumbersome, less idiomatic way simply because they don't yet know all the concepts (like iterators here).

ErikSchierboom avatar Apr 11 '23 10:04 ErikSchierboom

Provides introduction to for loops, arrays and a bit of iterators.

I've only briefly looked at the code, but I feel like this might be a bit much to introduce. My hunch would be to see if we can introduce iterators later on. Note that it is perfectly fine for this exercise to expect the student to write things in a somewhat cumbersome, less idiomatic way simply because they don't yet know all the concepts (like iterators here).

I agree which is why I did not include everything about iterators. Iterators would be a next logical concept to go through since they get introduced here. From my limited knowledge of Rust, I understand that you have to use either ranges or iterators in for loops. So I had to introduce a bit about both.

What would you suggest here to simply things further?

P.S.: In the concepts I have implemented so far I have messaging along the lines of "For now, you only need to know ABC about X. More in depth about it in later concepts." Because I expected myself to work on that concept immediately afterwards.

Update: Removed Iterators completely.

devkabiir avatar Apr 14 '23 20:04 devkabiir

Provides introduction to for loops, arrays and a bit of iterators. I understand that you have to use either ranges or iterators in for loops.

Update: Removed Iterators completely.

I like the way this ended up, matching pages 57-58 in The Book. Introducing how to, without going too deep into how does it work.

noah-clements avatar Apr 27 '23 14:04 noah-clements

The author of this PR has stopped responding in the discussions planning the work on the syllabus. But there's been work put into reviews already, so I'm keeping it open in case it can be salvaged in a future attempt to create a good syllabus.

senekor avatar Dec 14 '23 23:12 senekor