mlsanityData to 7 Oct 2026

Follow Your Nose -- Which Code Smells are Worth Chasing?

arXiv 2103.01861 ↗First posted 2 Mar 2021cs.SE cs.LGcited by 4

Not on the map. Why?

Abstract (arXiv)

The common use case of code smells assumes causality: Identify a smell, remove it, and by doing so improve the code. We empirically investigate their fitness to this use. We present a list of properties that code smells should have if they indeed cause lower quality. We evaluated the smells in 31,687 Java files from 677 GitHub repositories, all the repositories with 200+ commits in 2019. We measured the influence of smells on four metrics for quality, productivity, and bug detection efficiency. Out of 151 code smells computed by the CheckStyle smell detector, less than 20% were found to be potentially causal, and only a handful are rather robust. The strongest smells deal with simplicity, defensive programming, and abstraction. Files without the potentially causal smells are 50% more likely to be of high quality. Unfortunately, most smells are not removed, and developers tend to remove the easy ones and not the effective ones.

Key facts. Cited by 4 papers in the map (data through 7 Oct 2026). Builds on 13 of its 103 references that are in the map. First posted on arXiv 2 Mar 2021.

Builds on

13 of 103 references.

References · 13

  1. 2017A Closer Look at Memorization in Deep Networkscited by 936
  2. 2016Data Programming: Creating Large Training Sets, Quicklycited by 246
  3. 2020A Selective Review of Negative Control Methods in Epidemiologycited by 15
  4. 2016A deep learning model for estimating story pointscited by 10
  5. 2019Does Code Quality Affect Pull Request Acceptance? An empirical studycited by 9
  6. 2021A Critical Comparison on Six Static Analysis Tools: Detection, Agreement, and Precisioncited by 9
  7. 2019On the Impact of Programming Languages on Code Qualitycited by 6
  8. 2018Machine Learning in Cyber-Security - Problems, Challenges and Data Setscited by 5
  9. 2019Are SonarQube Rules Inducing Bugs?cited by 4
  10. 2020Learning to Recognize Actionable Static Code Warnings (is Intrinsically Easy)cited by 4
  11. 2019A Longitudinal Study of Static Analysis Warning Evolution and the Effects of PMD on Software Quality in Apache Open Source Projectscited by 2
  12. 2018Too Trivial To Test? An Inverse View on Defect Prediction to Identify Methods with Low Fault Riskcited by 1
1 more
  1. 2020The Corrective Commit Probability Code Quality Metriccited by 1

Built on by

Cited by year (2026 to 7 Oct)

Citing papers per year: 2021: 2; 2022: 0; 2023: 0; 2024: 1; 2025: 0; 2026: 1.

4 papers.