


Chris Akritidis
Chief Operations Officer
“Codacy ensures that we have a quality code base, for an open source project that is invaluable. The fact that you can get that immediate feedback while you are trying to commit your changes saves a lot of time.”
About Netdata
Netdata is a powerful open-source monitoring and troubleshooting tool for developers, system administrators and DevOps engineering teams. It is used by hundreds of thousands including those at leading tech companies such as IBM, Slack, Amazon and more. Netdata uses JavaScript for its front-end. C, Python, Go and ShellScript are the primary programming languages for its backend. Its Continuous Integration/Continuous Delivery (CI/CD) pipeline is in Travis.
Challenge
Over the last six years an extensive community of developers, systems administrators and DevOps engineers of all skills volunteered time and expertise to grow Netdata’s open source product. Netdata needed an automated code review tool that spanned across multiple programming languages and one that provided immediate feedback to ensure quality code.
Why Codacy
Codacy quickly scans code and gives immediate feedback, saving time and helping developers produce higher quality code. Setup is an independent, autonomous process. Engineers can review errors on their own and figure out if they need a manager.
Also, Codacy runs immediately after a pull request is submitted. With other tools Netdata tried, the team experienced delays, even waiting overnight for feedback. Codacy supports Netdata’s scale quickly approach, without compromising code quality.
Other Benefits
Historical feedback: In addition to immediate feedback, Codacy provides an overall view of past code quality.
Insights: Netdata uses Codacy’s insights to identify poor quality code that needs refactoring. For instance, the Netdata team refactored their front-end JavaScript after warnings and failed tests helped them realize how many things were disabled.
Security: Codacy’s security checks alert Netdata users immediately that there’s something wrong with their code.
Works well with other tools for test suite integration: Since Netdata already used Coverity and LGTM in its CI/CD pipeline Codacy’s compatibility with these tools was a selling point. The three tools co-exist in the Netdata’s workflow in order to test and discern errors. According to COO Chris Akritidis:
“Definitely for this modern automated pipeline having all of the tests executed automatically and part of your overall test suite is key. You definitely need Codacy to be a part of your CI/CD infra - as we said we use 3 different tools, it’s really bad if one of them can’t run in the pipeline, really good practice to have tools like that in your day to day flow everytime you try to merge something into your branch, even if it’s for testing ensure that you have it early.”
Netdata incorporates Codacy as a tool to use in its day-to-day workflow as it is able to test for errors each time developers merge something into a branch, unlike other tools it uses. Also, Codacy takes less time to run so can be used more than once per day.
Build Trust: Security checks are among Codacy’s numerous benefits that help Netdata build trust from internal engineers and from the community that contribute to their open source projects. It’s key that those building the project have the code right checks enabled and go through a quality code review process. If Netdata can’t find errors in its code someone else will. “Open Source is based on trust and you expect you can trust them [contributors] that they have the right checks enabled,” according to Netdata’s COO.
Future
Netdata will continue using Codacy for its open source projects. The team may also look into using Codacy for its local language specific linters to potentially replace some of the linters it’s currently using.
More stories from Codacy customers

Go / TypeScript
How Stim uses Codacy to achieve high-quality code

Go / Python / Java / JavaScript / Swift / Unity
How Mobile Premier League (MPL) uses Codacy to improve development efficiency

Python / AngularJS
How Green Flag (Direct Line Group) uses Codacy for PCI DSS compliance

C# / JavaScript / Swift / Kotlin
How Bliss Applications uses Codacy to achieve engineering excellence

Kotlin / Java
How Vevo uses Codacy to replace legacy systems while guaranteeing code coverage

.NET (C#) / JSON / JS / Shell / Markdown / Dockerfile / CSS / SQL
How LOGEX uses Codacy for ISO/IEC 27001:2013 compliance