Atoms of Confusion is a project to discover the fundamental causes of human error in programming.
Our investigation starts from the ground up, at the smallest pieces of code that cause confusion in programmers. We call these pieces of code atoms of confusion and we document their properties here.
For more information on our underlying motivation, please read our overview.
We are driven by the following principles:
- We group our hypotheses into a cohesive explanatory theory.
- We base our understanding on empirical evidence derived from experiments.
- We strive to help the community by openly sharing all of our data.
- We communicate our work through peer reviewed publications.
This project is managed by members of the
Secure Systems Lab at NYU.
Acknowledgements
This material is based upon work supported by the National Science Foundation under Grant No. 1444827. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.