- Java
- Maven {Binary zip archive}
- EclipseIDE
- MySQL
- MySQL-Windows (mysql-installer-web-community-8.0.21.0.msi)
- Python 3 (install the following via
pip install -r scraper/requirements.txt)
node -v
v12.18.8npm -v
6.14.6git --version
2.28.0java --version
java 10.0.2mvn --version
Apache Maven 3.6.3pip freeze
lxml==4.5.2
mysql-connector-python==8.0.21
requests==2.24.0
SQLAlchemy==1.3.19
Get Started Contributing Here
| What | Notes | score 0..4 (0=no, 2=ok, 4=wow!) |
|---|---|---|
| Misc | Group members attended tutorial sessions | 4 |
| Distrbuted dev model: | decisions made by unanimous vote | 4 |
| group meetings had a round robin speaking order | 4 | |
| group meetings had a moderator that managed the round robin | 4 | |
| group meeting moderator rotated among the group | 4 | |
| code conforms to some packaging standard | 4 | |
| code has can be downloaded from some standard package manager | 4 | |
| workload is spread over the whole team (one team member is often Xtimes more productive than the others... but nevertheless, here is a track record that everyone is contributing a lot) | 4 | |
| Number of commits | 4 | |
| Number of commits: by different people | 4 | |
| Issues reports: there are many | 4 | |
| issues are being closed | 4 | |
| License: exists | 4 | |
| DOI badge: exists | 4 | |
| Docs: doco generated , format not ugly | 4 | |
| Docs: what: point descriptions of each class/function (in isolation) | 2 | |
| Docs: how: for common use cases X,Y,Z mini-tutorials showing worked examples on how to do X,Y,Z | 4 | |
| Docs: why: docs tell a story, motivate the whole thing, deliver a punchline that makes you want to rush out and use the thing | 4 | |
| Docs: 3 minute video, posted to YouTube. That convinces people why they want to work on your code. | 4 | |
| (hard) code conforms to some known patterns | 4 | |
| Tools Matter | Use of version control tools | 4 |
| Extensive use of version control tools | 4 | |
| Repo has an up-to-date requirements.txt file | 4 | |
| Repo does not have "ignore" files. | 4 | |
| Use of style checkers | 4 | |
| Extensive Use of style checkers | 4 | |
| Use of code formatters. | 4 | |
| Extensive Use of code formatters. | 4 | |
| Use of syntax checkers. | 4 | |
| Extensive use of syntax checkers. | 4 | |
| Use of code coverage | 4 | |
| Extensive use of code coverage | 4 | |
| other automated analysis tools | 4 | |
| Extensive use of other automated analysis tools | 4 | |
| test cases exist | 4 | |
| test cases are routinely executed | 4 | |
| consensus-oriented model | the files CONTRIBUTING.md and CODEOFCONDUCT.md has have multiple edits by multiple people | 2 |
| the files CONTRIBUTING.md lists coding standards and lots of tips on how to extend the system without screwing things up | 4 | |
| multiple people contribute to discussions | 4 | |
| issues are discussed before they are closed | 4 | |
| Chat channel: exists | 4 | |
| Chat channel: is active | 4 | |
| test cases: a large proportion of the issues related to handling failing cases. | 2 | |
| zero internal boundaries | evidence that the whole team is using the same tools: everyone can get to all tools and files | 4 |
| evidence that the whole team is using the same tools (e.g. config files in the repo, updated by lots of different people) | 4 | |
| evidence that the whole team is using the same tools (e.g. tutor can ask anyone to share screen, they demonstrate the system running on their computer) | 4 | |
| evidence that the members of the team are working across multiple places in the code base | 4 | |
| low-regressions rule | (hard to judge) features released are not subsequently removed | 4 |
| short release cycles | (hard to see in short projects) project members are committing often enough so that everyone can get your work | 4 |
