Call for Contributors - WCA Software Team

2020-09-13 01:03 Tianyu Zhao

The WCA Software Team (WST) is looking for new contributors!

The WST plays a central role in the WCA by developing, scaling, and maintaining the software solutions that help the organization handle the continuous community growth.
Some examples of such software solutions are:

  • The WCA website, that you are probably browsing on a regular basis.
  • TNoodle, the scrambles library and its frontend, used by all Delegates during competitions.
  • WCA Live, which is the main platform for score taking and getting live results during competitions.

All WST projects are open source and hosted on the organization's GitHub: https://github.com/thewca/.
As such, anyone willing to help can do so: it is not a requirement to hold a current position in the WCA to be contributing.

Most of the WST projects are web-oriented, which is reflected by the technologies used:

  • The website is written on top of the Ruby on Rails framework (using an SQL database), with some front-end components written in React. We're looking to move forward with its redesign process by migrating more heavily used parts to React.
    • This is by far the most understaffed project, as we constantly receive new feature requests by the various growing WCA teams and committees.
    • You can have a relatively high level idea of website-related projects by taking a look here.
  • WCA Live is written in React for the front-end (checkout its high level documentation). Currently the project undergoes significant changes, but it will happily accept contributors once that's finished.
  • TNoodle is split into a scrambling library written in java (tnoodle-lib), and a server (tnoodle) that contains a Kotlin back-end+React front-end.

All our projects labelled with "good first issue" are those that you could take a look at to get an idea of what we expect from first time contributors. These are good even for inexperienced developers: the programming involved with these issues should be almost trivial, as they are meant to be a way to learn our tools and infrastructure. Do not be afraid to ask for help when figuring out the project layout!

The WST membership is slightly different from the other WCA teams and committees: we expect contributors to first do some work and prove that they are not going to disappear from completing WST projects. Once trust in your reliability has been established, you should expect an invitation to join the team!

Thank you for your contributions and support!