I am happy to announce that the powershell track is now live: PowerShell exercises on Exercism
The track has new exercises and a brand new test runner.
If any issue is found please open a forum post, and I will take a look at it.
I am happy to announce that the powershell track is now live: PowerShell exercises on Exercism
The track has new exercises and a brand new test runner.
If any issue is found please open a forum post, and I will take a look at it.
The test runner isn’t completing (for me). I updated both hello-world and bob, and the iterations are still Processing.
It seems to be a site wide outage at the moment, likely unrelated to the track, the issue has been reported.
Congratulations!
I have a question relating to the track : will there be some “exclusive” exercises to this track that leverage its unique feature like cmdlet? Or some that teach basic scripting tricks like mass creating/renaming files?
Well short answer: maybe
I think having “exclusive” exercises is something that would suit the track really well. And I think that is possible although if I would start on that I would have to talk to Erik or Jeremy, since that would require a bit of a special setup.
What is the main thing, is that the exercise would require a story and a lot of thinking on implementation, which takes quite a bit of time. And I work on quite a few tracks so it is always a time game on what should be prioritized. If I do one thing, then another thing won’t be done.
But now I know there is demand for it, so I will look at how such an exercise can be implemented. But again no promises of anything and if it goes forward it will likely take some time before it launches.
Hey @Meatball,
I tried to port one of the exercise from other track to powershell.
This is my first time doing this, and did it based on what i’ve seen from the github repo of powershell and other tracks (mainly python)
is this satisfactory ? if not how can i improve this?
I’m looking forward for feedback so I can help contribute properly
Alright so here is my first impression feedback:
The PowerShell files looks good, but here are some small nits:
Throw "Please implement this function"
And also the author section needs to be a github name, if you don’t like the credits you can just leave it blank.
I usually avoid talking about workflows and how something should be done, but since this isn’t a fork of the repo so will you have to move these files for example into a fork.
I will give you my workflow which I use on multiple tracks which will save time and reduce mistakes:
github clone <repo>.git
.fetch-configlet.ps1
or if you are on linux or mac: fetch-configlet
.Those above are the onetime setup requirements and only has to be done once on each track.
git checkout -b <branch_name>
. Make sure you are on main before doing this. {
"slug": "<lower-cased>",
"name": "<Upper Cased>",
"uuid": "<uuid>",
"practices": [],
"prerequisites": [],
"difficulty": <difficulty level>
},
./bin/configlet sync -u -e <slug>
(if you are using windows you may have to add .exe), it is the same slug as defined in the json file. Then in most cases you can just accept all changes so just press yes through them all..docs
with the a .md file and .meta
with config.json and a toml file.Throw "Please implement this function"
.This may seem like a lot of step but once you get used to it, these will go super fast. the ones which actually takes time is 10 and 11.
Alright, I made the PR.
This is actually painless than expected. I used github before but never contribute to a big project and do a PR so thank you very much for the workflow guide, I will keep this in mind for the future.
I also did a small change to the main config.json file due to your number 6 suggestion, collatz-conjecture has a difficulty of 1 but somehow stay at the bottom below 3
A small question regarding more update for the future : if i did multiple exercises, do i have to submit PR for each of them or can i do a “combo”?
Yeah I have thought about doing that config.json change, just never got my way there.
For the future, I say for new exercises, do 1 pr at a time. It makes things less complicated. When syncing to problem spec (or update if you like to call it that) and the changes aren’t huge. I say group the exercises in groups of 3-6.
PR for DnD Character exercise.
PR for Triangle exercise.
@Meatball based on my experience from other track, I made the triangle exercise to return an enum value.
In DnD I also change the modifier function into a static method inside the class, instead of a separate function outside of it. If you want any of these to be changed please let me know
Super excited for this track, many thanks to anyone that contributed to make it happen!
I’ll set some aside time to try it out.
@Meatball Hey meatball, I will try and port these exercises to powershell (in no particular order):
Sounds good, keep in mind that High scores likely fits best as an exercises that uses oop elements (likely a class)
Hey @Meatball , I will tackle on : sublist, square root, space age, simple cipher, matching bracket, meet up, tournament, kindergarten-garden, diamond, clock, all your base, allergies. Same as before, if you already working on any of them then please let me know.
Forum doesnt allow more than 3 consecutive posts from the same user, so im adding PR into this one
PR for space age @Meatball
Alright, this should allow you to write more messages.
I will review that pr, but it sounds good that you take on those exercises.
@Meatball PR for some small exercises.
Regarding the point about syllabus (I’m not sure if you would get notification if i reply on github so I just do it here), personally I do have time however I don’t have a lot of experience. I guess for the time being I will focus on porting as many exercises first and I will look into the process of creating a syllabus later if I feel that I’m up to it.
@Meatball PRs for : All your base, Tournament, Clock, Kindergarten, Allergies and Matching brackets.
I will just link the first one so it won’t make the thread too long to scroll, you can check out the rest on github.
Also we hit 50 exercises mark, yay! I wonder what it would do for the “Next goal: Implement at least 50 practice exercises” in Build status?