Skip to content
OpenTrain AIFor AI Companies

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

Idan Amit, Nili Ben Ezra, Dror G. FeitelsonPublished Mar 2, 2021
arXiv PDF
Researcher verdict
Starting point
Use as implementation starting point
Benchmark evidence
Missing
Not verified yet
Time to first repro
A few days
Plan setup time
Risk flags
1
Review before use

Abstract

Domain fit: AI-adjacent · Paper appears method- or tooling-adjacent to AI workflows with partial ecosystem coverage.

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.

Results and benchmarks

Freshness tier: cold
The common use case of code smells assumes causality: Identify a smell, remove it, and by doing so improve the code.

Implementation

Historical official implementation (not recommended for new builds)

Why this implementation
Confidence: low

Only historical official repository was found (evidencebp/analysis_utils).

Open evidencebp/analysis_utils
Reproduction risks
  • Only historical official implementation is available
  • No direct maintained implementation is currently verified.
  • Only historical official repository was found: evidencebp/analysis_utils.
  • No maintained paper-verified implementation met reliability thresholds.

Compare implementation paths

Compare maintenance quality, reproducibility coverage, and evidence confidence before choosing a reproduction baseline.

evidencebp/analysis_utils
historical official
Maintenance
Recently updated
Confidence
High
Reproducibility
Limited
Stars
2
Last push
May 4, 2026 (113d)

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata

  • No CI pipeline detected
  • No Docker setup
  • Dependency manifest missing
Maintenance
Stale
Confidence
High
Reproducibility
Limited
Stars
1
Last push
Feb 5, 2024 (932d)

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata

  • No push in 12+ months
  • No CI pipeline detected
  • No Docker setup
Maintenance
Stale
Confidence
High
Reproducibility
Limited
Stars
1
Last push
May 23, 2023 (1190d)

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata

  • No push in 12+ months
  • No CI pipeline detected
  • No tagged releases

Reproduction readiness

Time to first repro: days
Last checked: Aug 23, 2026

Major work

No dependency manifest, manual reconstruction required

  • evidencebp/analysis_utils has no requirements.txt, environment.yml, pyproject.toml, or Dockerfile.
  • You will need to reverse-engineer dependencies from import statements in the source code.
Open evidencebp/analysis_utils

Hardware requirements

  • Expect multi-day setup/compute for meaningful reproduction based on current guidance.

Repositories and ecosystem

Official

Community

No additional community repositories detected yet.

Hugging Face artifacts

No trustworthy direct or curated related Hugging Face artifacts were found yet. Use targeted searches to quickly locate candidate models, datasets, and demos.

Tip: start with models, then check datasets and spaces if you need evaluation data or demos.

Research context

Evaluation and human feedback data

Open this paper in HFEPX to review benchmark signals, evaluation modes, and human-feedback protocol context.

Open in HFEPX

Data includes links from Papers with Code ( CC-BY-SA-4.0 ).