SEApr 18, 2013

What Makes Code Hard to Understand?

arXiv:1304.5257v228 citations
Originality Synthesis-oriented
AI Analysis

This research addresses code readability for programmers, but it is incremental as it builds on prior work about expectation-congruent programs.

The study investigated how notational changes in Python programs affect code comprehensibility, finding that subtle differences significantly impact correctness and response times, with experience sometimes hurting performance when assumptions are violated.

What factors impact the comprehensibility of code? Previous research suggests that expectation-congruent programs should take less time to understand and be less prone to errors. We present an experiment in which participants with programming experience predict the exact output of ten small Python programs. We use subtle differences between program versions to demonstrate that seemingly insignificant notational changes can have profound effects on correctness and response times. Our results show that experience increases performance in most cases, but may hurt performance significantly when underlying assumptions about related code statements are violated.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes