exercism/request-new-language-track

Name: request-new-language-track

Owner: exercism

Description: null

Created: 2016-03-15 21:19:07.0

Updated: 2017-12-23 14:29:54.0

Pushed: 2017-12-30 18:34:23.0

Homepage: null

Size: 54

Language: Ruby

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Request a new Exercism language track

How to request support for a new language track

Does Exercism already support the language?

Check this list, which contains both the active and inactive tracks on the site.

If you find the language, follow the links from that list to view the repository. The config.json file has an active key, which will be true or false.

Has someone else asked for it?

Do a search in this repository for the name of the language. Remember to check both open and closed issues.

How to improve the process for the next new maintainer

It's crucial that we improve the documentation and instructions for launching a track. The best people to discover issues with our current process are new maintainers, launching a track for the first time. Unfortunately, that's the worst possible time for them to fix the documentation, because they've got the least amount of knowledge about how Exercism is put together.

The files in this repository serve as a template for a new track. Some files get edited and added to the track, others are used to create new issues in the track, but are not added to the new repository. If new maintainers have questions, it will often be because these files are confusing or missing information.

When that happens we should tweak the documentation for clarity in a new pull request to the request-new-language-track repository (not their repository) and tag the maintainer to review it. If it's still confusing, they'll know, and figuring out how to explain it will help us fix it.

In some cases, we might discover that we're missing high-level documentation that should live in the docs repo, in which case we should open an issue or pull request there, proposing the new documentation. Tag the new maintainer there, as well, to get their input on the new docs.

How to bootstrap a new track

Only owners of the organization can create new repositories.

One-time setup
  1. Install hub.
  2. Clone the request-new-language-track repository.
  3. Clone the tools repository.
  4. Follow the instructions in the tools README to clone all the existing tracks.
  5. Create a saved reply with the following checklist:
] Run bootstrap script
RACK_ID=<id> LANGUAGE=<language> bin/bootstrap`
] Turn on [Travis CI][travis]
] If Windows-specific language, turn on [AppVeyor][appveyor]
] If Mac-specific language, turn on [Circle CI][circle]
d it as a Linux project, then switch it to OS X in _Project Settings -> Build Environment_
] Add as a submodule to [trackler][]
RACK_ID=<id>; git submodule add https://github.com/exercism/$TRACK_ID tracks/$TRACK_ID`
] Create [new team][new-team] for language
] Add bootstrapped repository to team **with write access**
] Invite maintainer to team
Bootstrap a Track
  1. Add the “new track” label.
  2. Confirm maintainer
  3. If the requestor is volunteering, that's fine.
  4. If the requestor is volunteering someone else for the job, confirm with that person.
  5. If there is no maintainer, label with “needs maintainer”
  6. Once a maintainer is confirmed, add the “new track” checklist as a reply.
  7. Once the checklist is complete, let the requestor/maintainer know that the repo is ready for them, and point them to the launch checklist issue.

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.