-
-
Notifications
You must be signed in to change notification settings - Fork 23
Prepare for 3.8.0 release #121
Comments
I typically script these with github/hub. Want to give it a go? Or shall I take this one? |
I was just going to go through these manually but if you have an automated way to handle that would be great. If, in the future, you wanted to share how you've automated these that would be pretty cool too. Heads up some tracks live go, java, and ecmascript have some exercises locked by non core exercises, and some core exercises locked by other core exercises so we might need to have the track maintainers to rethink their dependencies. |
Ah https://hub.github.com - I'll give it a shot and report back if I get stuck. |
Yes! Here's what I generally do:
|
Thanks @kytrinyx that was helpful. I managed to script things up, but have yet to officially create the issues. I should have things wrapped up in a day. |
This sounds odd. What’s the point of progression then? Why’s should we care about making some excercises non core if they have to be unlocked by a core one? This seems to be pushing down the complexity to the maintainers. Can we just have a blessed list of core problems? |
@masters3d thanks for the feedback. Generally, speaking core exercises are meant to teach key concepts around a particular language (e.g looping, control-flow, string manipulation). That, if completed would prepare the user for any of the exercises unlocked by it. Whereas optional, non-core, exercises are there to help build on, strengthen, those core concepts. Having a non-core unlocked by another unlocked by another non-core exercise can lead to a situation where a user tries to work on a new exercise, with concepts they have not yet learned or completed. Possibly resulting in frustration or a feeling of not being properly prepared. Completing core exercises is key to the new curriculum, progression, model in Nextercism. Which is why each track should have 8-20 core exercises.
This is something we should discuss further in exercism/discussions. Would you mind opening a new issue? To my knowledge, there are some exercises across all tracks that are considered core (hello-world, hamming, bob, two-fer), but they are not enforced as it has been left to the language maintainers to best select exercises that highlight the key concepts, fundamentals, for learning the language at hand. Here is a recent thread by the Python group exercism/python#1099 |
But the core exercises are apparently not suppose to be ordered. So how if core exercises are not unlocked in a certain order, then as a maintainer I have no idea what path a given student is learning the language through the exercises. I would prefer to define in the config, this core exercise unlocks this core exercise and so on. |
Are the Core's ordered by how they are placed in config.json or by their difficulty rating? I am assuming the latter. |
@nywilken does |
It's hard to verify lot of exercises without the update for configlet being released. Dart only has 11 exercises, but other repos may have much more. If you want to ensure everyone gets it right, I recommend releasing 3.8.0. Though my previous questions remain. @rpottsoh It looks like the exercises are ordered by the order in which they appear in the config. I had one exercise at the bottom and it had a difficulty of 1. So difficulty doesn't seem to be a factor. |
Thanks for researching this @Stargator, seems like it ought to be by difficulty and not by order of appearance; or at least by difficulty then by order of appearance. |
@rpottsoh @Stargator my apologies for not being able to respond earlier.
@Stargator thanks for getting to this ask. Just for completeness, the
@Stargator this is a good point and I agree that this would help. I haven't released 3.8.0 because it will automatically break the build for each of the tracks, as Travis downloads the latest release at build time. I wanted to make a draft release but I don't think that everyone would have access to it since it is only visible to members with write access to the repository. I might be able to release it out of band for testing. But it wont be until later tonight, tomorrow.
If its okay with you I am going to refer you to a previous issue where @tleen spoke about this same ask for the Go track. exercism/go#1082 (comment) The core exercises are not meant to be done in order as they are more of a stepping stone to one or more concepts for a given language. However, the point that you make is sound and I think would be good for the discussion repo so that it can be discussed further with other members who can speak more to the progression model. |
I went ahead and pre-released v3.8.0 for validation purposes. You can find the release here. Thanks again for the help in pushing these issues forward and for the feedback. |
Windows 64 bit pre-release v3.8.0 appears to be working OK for me. Tried |
@rpottsoh thanks for testing. In hindsight I should’ve pre-released a |
Sorry for MIA I can take a look tomorrow, and appreciate the heads up on the Go track. |
When all is finished it may be useful to document somewhere this process for creating the repo-side issues via hub. I've often wondered about it myself. Seems like something we would do via this project here and there. |
@rpottsoh @Stargator difficulty is noted (if --with-difficulty is flagged) but not taken into account anywhere. The ordering is the ordering by which the exercise data is unpacked from the JSON which IIRC is in listing order. |
@masters3d I believe it was determined that it was not possible to create a blessed list because of large differences in languages and exercise implementations. |
| @exercism/go should also generate, a couple of READMEs are out-of-date. Thanks for the heads up @rpottsoh I just PRd that update via the latest configlet. So |
Sorry I've missed this entire discussion—I've been heads down at work for the past 2 weeks. To clarify: The core exercises are meant to be done in order. Each core exercise unlocks the next. This happens implicitly by virtue of being "core". You have to complete the core exercise you are working on, in order to start on the next one. The order is decided by the array in config.json. The difficulty should inform the order. If maintainers see that core exercise number 3 has a difficulty of 7 whereas number 5 has a difficulty of 2, then the maintainers should tweak the order of the core exercises. The difficulties and topics will appear on the exercise on the website, which will let people do filtering and selecting. It looks like this has all been resolved, but if you have any open questions about core/non-core, would you please open up an issue in the v2-feedback repository? FYI @iHiD for visibility |
|
@rpottsoh thanks for testing!!!! |
|
In preparation for the next release of Configlet, which contains an upgrade command and a new set of enhanced lint checks, we need to create PRs for each of the tracks that have unlocked_by violations and document the
configlet upgrade
command.Tracks
The text was updated successfully, but these errors were encountered: