Digging deeper into approaches

Since the bash track does not have a representer nor a syllabus, and mentoring requests are seemingly few and far between, I’m thinking that adding approaches to bash exercises will allow us to add our collective knowledge for students at a relatively low cost.

The julia track has added mentor notes into the exercise .approaches directory (example leap exercise)

The C# track has a different approach to approaches: show various implementations (example leap exercise)

In my own mentor notes, I don’t have some of exercise specific stuff, but I could fairly easily come up with a few different implementations to talk about. Unfortunately my exercism time is consumed on the jq track these days.

Does anyone want to get started? Say for the two-fer exercise?

1 Like

I’m pretty booked up for the next 2.5 days. If no one else jumps on this, I may give this a try on Sunday or Monday evening.

2 Likes

To be clear, this is the “official” way of doing things. But the Julia way is fine as a starting point if it’s quicker to do! But the C# way is more student-friendly from a quick-discover perspective.

I’m giving this a go. Hopefully I’ll have a PR within a day or two.

1 Like

I like it, but that wasn’t a day or two. ;)

Approved, with a comment that the reference link sources should be at the bottom of the file.

Thanks for the reviews! Fixed, merged, and now live.

Is it worth splitting this into a per-approach file? Each section is pretty simple and short and there isn’t a ton of details to delve into.

There is something to be said for consistency. If the “normal” is a file per approach, then it is good not to see deviations (especially when we move on and others are learning to maintain the track).

Based on the linked C# docs, it looks like the “intro” doc should provide a brief high level of all the approaches and then a per-approach doc can dive deeper into each approach. That’s fine when there’s more details to dive into; when it’s as simple at two-fer, I’m not sure there is a “deeper”.

For Ruby, there is, as it is a practice exercise, and a lot of things to discuss for strings. And as things relate to “fluency”.

I am not sure this is applicable for all languages, and in some languages “strings” are a fairly complex topic.