2. IMPROVING CODE HYGIENE INCREMENTALLY
THE SITUATION
▸ We have large codebases & many date back close to a
decade (a lifetime in tech)
▸ Open source hygiene tools yell at us and generate large
reports that are overwhelming
▸ Started to look for a way to enforce good hygiene in an
incremental way
3. IMPROVING CODE HYGIENE INCREMENTALLY
WHAT DOES CODECLIMATE DO?
▸ Provides a way to use the great open source hygiene tools,
in an incremental way
▸ Integrates with GitHub, Stash, Jira, and many other tools
▸ Checks the code of each pull request and will only fail the
“build” if there are new issues
▸ Allows developers to run the same checks on their own
machine
4. IMPROVING CODE HYGIENE INCREMENTALLY
HOW DOES CODECLIMATE WORK?
WEB UICOMMAND LINE OR
ENGINES
PHPCS PHPMD CSSLINT ESLINT FIXME SCSS LINT
5. IMPROVING CODE HYGIENE INCREMENTALLY
OVERVIEW OF ENGINES
▸ All engines are open source and on GitHub
▸ Run as docker images
▸ Engines can be easily created / modified
▸ Barracuda has contributed a few improvements
▸ CodeClimate is using Barracuda’s PHP forking library
▸ Improves speed of PHPCS and PHPMD
6. IMPROVING CODE HYGIENE INCREMENTALLY
CONFIGURING A REPO TO USE CODECLIMATE
.codeclimate.yml