exercism / java

Exercism exercises in Java.
https://exercism.org/tracks/java
MIT License
695 stars 675 forks source link

Ensure Java track is ready for v2 launch #1481

Closed kytrinyx closed 6 years ago

kytrinyx commented 6 years ago

There are a number of things we're going to want to check before the v2 site goes live. There are notes below that flesh out all the checklist items.

Track landing page

The v2 site has a landing page for each track, which should make people want to join it. If the track page is missing, ping @kytrinyx to get it added.

Blurb

If the header of the page starts with TODO, then submit a pull request to https://github.com/exercism/java/blob/master/config.json with a blurb key. Remember to get configlet and run configlet fmt . from the root of the track before submitting.

About section

If the "About" section feels a bit dry, then submit a pull request to https://github.com/exercism/java/blob/master/docs/ABOUT.md with suggested tweaks.

Formatting guidelines

In order to work well with the design of the new site, we're restricting the formatting of the ABOUT.md. It can use:

Additionally:

Code example

If the code example is too short or too wide or too long or too uninteresting, submit a pull request to https://github.com/exercism/ocaml/blob/master/docs/SNIPPET.txt with a suggested replacement.

Exercise metadata

Where the v1 site has a long, linear list of exercises, the v2 site has organized exercises into a small set of required exercises ("core").

If you update the track config, remember to get configlet and run configlet fmt . from the root of the track before submitting.

Topic and difficulty

Core exercises unlock optional additional exercises, which can be filtered by topic an difficulty, however that will only work if we add topics and difficulties to the exercises in the track config, which is in https://github.com/exercism/java/blob/master/config.json

Auto-approval

We've currently made any hello-world exercises auto-approved in the backend of v2. This means that you don't need mentor approval in order to move forward when you've completed that exercise.

Not all tracks have a hello-world, and some tracks might want to auto approve other (or additional) exercises.

Track mentors

There are no bullet points for this one :)

As we move towards the launch of the new version of Exercism we are going to be ramping up on actively recruiting people to help provide feedback. Our goal is to get to 100%: everyone who submits a solution and wants feedback should get feedback. Good feedback.

If you're interested in helping mentor the track, check out http://mentoring.exercism.io/

# When all of the boxes are ticked off, please close the issue.

Tracking progress in https://github.com/exercism/meta/issues/104

sjwarner-bp commented 6 years ago

I think we are already compliant with a handful of these bullet points :slightly_smiling_face:

I think we're all good on the following:

The track has a page on the v2 site: https://v2.exercism.io/tracks/java The track page has a short description under the name (not starting with TODO) The "About" section is a friendly, colloquial, compelling introduction The "About" section follows the formatting guidelines The code example gives a good taste of the language and fits within the boundaries of the background image There are exercises marked as core Exercises have rough estimates of difficulty Exercises have topics associated with them

On a side note, I've also signed up for mentoring :fireworks:

What do we think @exercism/java @FridaTveit? Are we happy to tick these off?

FridaTveit commented 6 years ago

Yup, I agree that those can be ticked off πŸ™‚ The only one I think we might be missing is

The first exercise is auto_approve: true

@kytrinyx do we need to add this to config.json for hello-world since that's our first core exercise? Or do we not need to add it since it's hello-world so it'll be auto approved anyway?

kytrinyx commented 6 years ago

I'd prefer if we set it to auto-approve here, so that we can remove the special handling in the code (eventually).

FridaTveit commented 6 years ago

Sure, will open a PR now πŸ™‚

sjwarner-bp commented 6 years ago

Change has been merged in πŸŽ†

sjwarner-bp commented 6 years ago

Probably related to this, I'm surprised to see that we have a couple of (active) exercises that are:

"core": false,
"unlocked_by": null

I'm going to open individual issues per exercise, but probably worth noting it here as it would be useful to have this done by v2 (unless I've completely forgotten and there is a reason we have left these as is).

The exercises are: armstrong-numbers, rna-transcription, pangram, space-age and acronym. I'll leave the deprecated ones as is, no point in specifying unlocked_by for those! πŸ™‚

kytrinyx commented 6 years ago

I believe that core: false, unlocked_by: null is the definition of "bonus exercises" -- where they will be accessible immediately without having done any exercises first. @iHiD do you recall the details around this?

FridaTveit commented 6 years ago

Yes, we added these intentially so that there would be some exercises that are always available @sjwarner-bp πŸ™‚

FridaTveit commented 6 years ago

I think this can be closed now. Do you agree @sjwarner-bp? πŸ™‚

sjwarner-bp commented 6 years ago

Sure thing @FridaTveit - this completely slipped my mind! Thanks for explaining, I'll close them :slightly_smiling_face:

iHiD commented 6 years ago

I believe that core: false, unlocked_by: null is the definition of "bonus exercises"

You could also do unlocked_by: hello-world if hello-world is auto-approve. It might be nice to do that for a handful of exercises so the person feels like they've unlocked something at the end of hello-world. But more than about 8 will look bad in the modal.

FridaTveit commented 6 years ago

This should all be sorted now πŸ™‚