-
-
Notifications
You must be signed in to change notification settings - Fork 546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Divide Basic Acronym and Advanced Acronym #1463
Comments
This is part of a bigger conversation about the learning purpose of exercises and the learning purpose of tests. Previously, exercise's didn't have learning purposes and nor did tests, they were purely interesting problems to solve. I think the key thing is defining what each exercism aims to achieve from a learning POV, and effectively writing a "learning" spec for it. Each test can then be cross-referenced with that spec to see whether the test adds clarity or complexity to an exercise. I think the same should be true of adding exercises as well. If we want to add a more complex acronym, then we have to answer the question of "why do we want to add it?" in the context of what someone is learning or practicing. For clarity, I'm not in any way against complex or multi-dimensional exercises, but I feel that they shouldn't be on the core track, and that that should sort of be encoded into their spec. |
Also, FWIW I've mentored a lot of Acroynm's on Ruby and not had a single situation where the learner hasn't been able to get to the optimal solution and learn some stuff along the way. The key to that is providing them with the regexp (which I always do if they've not got it on their first go) because that opens up their eyes to lots of possibilities. I've found that exercise to be good for teaching block shorthand in Ruby ( |
If people want to learn Regexp I'd rather they use https://regexcrossword.com/ than Exercism. If we have exercises that only seem useful with regexen, then I think it's worth considering deprecating them, or leaving them as a side exercise and pointing people to regexcrossword. |
Aha, but I think there is an interesting exercise hidden in a more advanced Acronym - but not by adding randomly more characters to tests to build up to a more complex regex . My thinking was that an advanced Acronym would require a different approach, and that would be interesting. In regard to the simple/current Acronym: I'm not against having a simple regex in an exercise, as long as it's a means to a goal (in Acronym: by giving the regex away for free, students discover how choosing a different method can improve their code dramatically). But yeah, maybe a series is not such a good idea. Another option would be to have a Simple Acronym and a Power Acronym, so that tracks can choose which one fits best. |
@F3PiX rather than have two acronym exercises, I'd like to explore what the two different core things that people are learning or practicing are, and then see if we can come up with a new exercise that addresses one of them. I think it would make sense to keep the current Acronym as simple as possible, as you suggest. What is it about the more powerful one that is interesting, do you think? |
I agree with the original premise - It seems rather sad that an early (and quite fun) exercise has to dip into regex. Its interesting that some languages treat characters as objects and I think you learn a lot from that without jumping straight to regex (or at least complicated regex): e.g.
|
=> Proposal:
It would be another series of exercises, like the recently introduced Resistor series, with advancing complexity.
The text was updated successfully, but these errors were encountered: