Static code analysis
Here are the tools CodinGame currently uses to find readability issues in candidates’ code:
C/C++ | Cppcheck | http://cppcheck.sourceforge.net/ |
C# | Gendarme | https://github.com/JAD-SVK/Gendarme |
Go | Vet | https://golang.org/cmd/vet/ |
Java | PMD | https://pmd.github.io/ |
Javascript | JSHint | https://jshint.com/ |
PHP | PHP_CodeSniffer | https://github.com/squizlabs/PHP_CodeSniffer |
Python | Pylint | https://www.pylint.org/ |
Swift | SwiftLint | https://github.com/realm/SwiftLint |
They are called “static” because they scan candidates’ source code. CodinGame has set these tools up by selecting the most judicious and consensual verification rules for each programming language.