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.
%0 Generic
%1 citeulike:12298090
%A Hansen, Michael
%A Goldstone, Robert L.
%A Lumsdaine, Andrew
%D 2013
%K citeulike code, codigo, desarrollo, programacion
%T What Makes Code Hard to Understand?
%U http://arxiv.org/abs/1304.5257
%X 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.
@misc{citeulike:12298090,
abstract = {{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.}},
added-at = {2017-09-08T10:52:59.000+0200},
archiveprefix = {arXiv},
author = {Hansen, Michael and Goldstone, Robert L. and Lumsdaine, Andrew},
biburl = {https://www.bibsonomy.org/bibtex/2d31a7f72701e7b63b1d81ef95f8eca31/fernand0},
citeulike-article-id = {12298090},
citeulike-linkout-0 = {http://arxiv.org/abs/1304.5257},
citeulike-linkout-1 = {http://arxiv.org/pdf/1304.5257},
day = 26,
eprint = {1304.5257},
interhash = {950f0999c4fd11a92c733b0d1432566e},
intrahash = {d31a7f72701e7b63b1d81ef95f8eca31},
keywords = {citeulike code, codigo, desarrollo, programacion},
month = apr,
posted-at = {2013-05-07 15:34:45},
priority = {2},
timestamp = {2017-09-08T10:53:23.000+0200},
title = {{What Makes Code Hard to Understand?}},
url = {http://arxiv.org/abs/1304.5257},
year = 2013
}