exercism / bash

Exercism exercises in Bash.
https://exercism.org/tracks/bash
MIT License
106 stars 87 forks source link

We need a rough estimate of difficulty for each exercise #75

Closed kytrinyx closed 6 years ago

kytrinyx commented 7 years ago

We've never really taken a pass through this track to figure out the relative difficulties of each exercise on a scale from 1 - 10 (1 == easy, 10 == hard).

If we could order the exercises so that the difficulty ramps up more gently, we can provide a better experience to those who are working through the exercises.

These are the exercises that we have

Note that hello-world was pretty difficult, and we've fixed this by simplifying hello world and adding a new exercise, two-fer, which is equivalent to the old one.

/cc @patbl, @dantiel, @mkrehbs, @deepbsd, @canel-rom1, @rpalo, @ConstantlyLost, @fwten, @fbi1714, @timmyjose, @mattj-io, @nielssorensen You have all done at least some of these. Do you have any ideas about relative difficulties?

fbi1714 commented 7 years ago

@kytrinyx here is my review for the two Exercism that I tried to solve. The bash exercises at Exercisms appear to be a bit difficult for the beginners. I've been using the CommandLine Challenge website and in my opinion, it presents a better way to learn BASH. Their exercises are organised in a more gradual way and the user is challenged to evolve through small steps. In my case, this is really crucial as it helps me to keep trying to solve the challenges instead of desisting. Another website that gave me interesting learning insights is the Vim Valley Course, although it isn't related to BASH. I'm mentioning it to you because in pedagogical terms it's proportionate a really good experience. After I finished the course, I still could remember and use most of the topics covered by it.

hello-world = 1 word-count = 8

rpalo commented 7 years ago

I've got some suggestions for topics and difficulties. Would it be better for me to leave comments on each of the relevant issues? Or, I can put together a pull request with all of my suggested tweaks to config.json to be evaluated all in one place. Whatever you think is best.

In the meantime: hello-world = 1 gigasecond = 3 bob = 3 leap = 1 raindrops = 1 difference-of-squares = 1 pangram = 2 anagram = 4 hamming = 2 rna-transcription = 2 two-fer = 1 nucleotide-count = 2 word-count = 3 phone-number = 2 error-handling = 1 atbash-cipher = 5

I tried to pitch these numbers a little low, because I've seen other problems on other language tracks that haven't been ported over (yet 😀 ), and I know there's much harder problems yet to come.

Anyways, let me know if a pull request with updated/modified difficulties and topics would be useful or if I should get to work commenting on each separate issue 👍

budmc29 commented 7 years ago

I've got some suggestions for topics and difficulties. Would it be better for me to leave comments on each of the relevant issues?

I think that's a very good idea if you have the time, it would help to explain why you gave each exercise a different rating.

I can put together a pull request with all of my suggested tweaks to config.json to be evaluated all in one place

That can be done after we have more opinions about the difficulty of each exercise from various developers.

ltrainpr commented 6 years ago

Looking to learn quite a bit more about bash shell scripting in 2018. Poked at Bash track yesterday. Hello World exercise was easy enough. Currently stuck on first test of gigasecond exercise as it requires specific time [ "$output" == 'Thu Jan 1 01:46:40 UTC 2043' ] even though what's being passed in is '2011-04-25Z'. Is this on purpose?

Let me know if you'd like me to provide feedback for exercise difficulty given that I'm new at bash scripting.

rpalo commented 6 years ago

@ltrainpr I just double-checked to make sure nothing was funky. It looks like, since you're adding seconds to things, you need to pick some time for the initial date, even if none is provided. So your script should default to midnight of the date provided if none is given. When you default the time to midnight, that first test ends up at the correct time of 1:46:40. It's possible that this should be documented better in the prompt. I'm not sure. I'll take a look.

Either way, if you get hung up on this or any of the other Bash challenges, let me know and I'd be happy to try and provide some help :smile:

ltrainpr commented 6 years ago

Thank you for your help @rpalo. I was able to solve the problem with the additional info (setting default time to midnight) you provided. The only other obstacle I faced was syntax. See this stack overflow question regarding my syntax problem.

My suggestion is to include in the README that the default time needs to be set to midnight.

kytrinyx commented 6 years ago

We can have a hints.md file for the exercise that includes this information, then regenerate the README using the configlet binary.

See https://github.com/exercism/docs/blob/master/language-tracks/exercises/anatomy/readmes.md for details

sjwarner-bp commented 6 years ago

Closed via #128