Human Attention During Localization of Memory Bugs in C Programs Article Swipe
YOU?
·
· 2025
· Open Access
·
· DOI: https://doi.org/10.48550/arxiv.2506.00693
This paper presents a study of human visual attention during localization of memory bugs in C. Human visual attention refers to the mechanical processes by which we selectively process and prioritize information. Visual attention is important to study because it is central to what information people (who are sighted) use to solve a particular problem. Meanwhile, memory bugs are among the most common types of bugs in C programs that manifest as a variety of program faults. In this paper, we study human visual attention while people attempt to locate memory bugs in code. We recruit 21 programmers to locate between one and eight memory bugs in three C programs for 1.5-2 hours each. In total we collected observations of 31 hours of programmer effort. The bugs in our study cover memory leaks, overflows, and double frees, which are among the most common memory bugs. We analyze the task outcomes in terms of success rate and related factors, patterns of visual attention overall such as what lines and functions are read, and finally we explore differences of visual attention patterns during success versus failure cases.
Related Topics
- Type
- preprint
- Language
- en
- Landing Page
- http://arxiv.org/abs/2506.00693
- https://arxiv.org/pdf/2506.00693
- OA Status
- green
- OpenAlex ID
- https://openalex.org/W4414891761
Raw OpenAlex JSON
- OpenAlex ID
-
https://openalex.org/W4414891761Canonical identifier for this work in OpenAlex
- DOI
-
https://doi.org/10.48550/arxiv.2506.00693Digital Object Identifier
- Title
-
Human Attention During Localization of Memory Bugs in C ProgramsWork title
- Type
-
preprintOpenAlex work type
- Language
-
enPrimary language
- Publication year
-
2025Year of publication
- Publication date
-
2025-05-31Full publication date if available
- Authors
-
Earl Smith, Robert Wallace, Matthew K. Robison, Yuhao Huang, Collin McMillanList of authors in order
- Landing page
-
https://arxiv.org/abs/2506.00693Publisher landing page
- PDF URL
-
https://arxiv.org/pdf/2506.00693Direct link to full text PDF
- Open access
-
YesWhether a free full text is available
- OA status
-
greenOpen access status per OpenAlex
- OA URL
-
https://arxiv.org/pdf/2506.00693Direct OA link when available
- Cited by
-
0Total citation count in OpenAlex
Full payload
| id | https://openalex.org/W4414891761 |
|---|---|
| doi | https://doi.org/10.48550/arxiv.2506.00693 |
| ids.doi | https://doi.org/10.48550/arxiv.2506.00693 |
| ids.openalex | https://openalex.org/W4414891761 |
| fwci | |
| type | preprint |
| title | Human Attention During Localization of Memory Bugs in C Programs |
| biblio.issue | |
| biblio.volume | |
| biblio.last_page | |
| biblio.first_page | |
| topics[0].id | https://openalex.org/T10743 |
| topics[0].field.id | https://openalex.org/fields/17 |
| topics[0].field.display_name | Computer Science |
| topics[0].score | 0.991100013256073 |
| topics[0].domain.id | https://openalex.org/domains/3 |
| topics[0].domain.display_name | Physical Sciences |
| topics[0].subfield.id | https://openalex.org/subfields/1712 |
| topics[0].subfield.display_name | Software |
| topics[0].display_name | Software Testing and Debugging Techniques |
| topics[1].id | https://openalex.org/T11005 |
| topics[1].field.id | https://openalex.org/fields/22 |
| topics[1].field.display_name | Engineering |
| topics[1].score | 0.9904000163078308 |
| topics[1].domain.id | https://openalex.org/domains/3 |
| topics[1].domain.display_name | Physical Sciences |
| topics[1].subfield.id | https://openalex.org/subfields/2208 |
| topics[1].subfield.display_name | Electrical and Electronic Engineering |
| topics[1].display_name | Radiation Effects in Electronics |
| topics[2].id | https://openalex.org/T10054 |
| topics[2].field.id | https://openalex.org/fields/17 |
| topics[2].field.display_name | Computer Science |
| topics[2].score | 0.9840999841690063 |
| topics[2].domain.id | https://openalex.org/domains/3 |
| topics[2].domain.display_name | Physical Sciences |
| topics[2].subfield.id | https://openalex.org/subfields/1708 |
| topics[2].subfield.display_name | Hardware and Architecture |
| topics[2].display_name | Parallel Computing and Optimization Techniques |
| is_xpac | False |
| apc_list | |
| apc_paid | |
| language | en |
| locations[0].id | pmh:oai:arXiv.org:2506.00693 |
| locations[0].is_oa | True |
| locations[0].source.id | https://openalex.org/S4306400194 |
| locations[0].source.issn | |
| locations[0].source.type | repository |
| locations[0].source.is_oa | True |
| locations[0].source.issn_l | |
| locations[0].source.is_core | False |
| locations[0].source.is_in_doaj | False |
| locations[0].source.display_name | arXiv (Cornell University) |
| locations[0].source.host_organization | https://openalex.org/I205783295 |
| locations[0].source.host_organization_name | Cornell University |
| locations[0].source.host_organization_lineage | https://openalex.org/I205783295 |
| locations[0].license | |
| locations[0].pdf_url | https://arxiv.org/pdf/2506.00693 |
| locations[0].version | submittedVersion |
| locations[0].raw_type | text |
| locations[0].license_id | |
| locations[0].is_accepted | False |
| locations[0].is_published | False |
| locations[0].raw_source_name | |
| locations[0].landing_page_url | http://arxiv.org/abs/2506.00693 |
| locations[1].id | doi:10.48550/arxiv.2506.00693 |
| locations[1].is_oa | True |
| locations[1].source.id | https://openalex.org/S4306400194 |
| locations[1].source.issn | |
| locations[1].source.type | repository |
| locations[1].source.is_oa | True |
| locations[1].source.issn_l | |
| locations[1].source.is_core | False |
| locations[1].source.is_in_doaj | False |
| locations[1].source.display_name | arXiv (Cornell University) |
| locations[1].source.host_organization | https://openalex.org/I205783295 |
| locations[1].source.host_organization_name | Cornell University |
| locations[1].source.host_organization_lineage | https://openalex.org/I205783295 |
| locations[1].license | |
| locations[1].pdf_url | |
| locations[1].version | |
| locations[1].raw_type | article |
| locations[1].license_id | |
| locations[1].is_accepted | False |
| locations[1].is_published | |
| locations[1].raw_source_name | |
| locations[1].landing_page_url | https://doi.org/10.48550/arxiv.2506.00693 |
| indexed_in | arxiv, datacite |
| authorships[0].author.id | https://openalex.org/A5033821452 |
| authorships[0].author.orcid | https://orcid.org/0000-0002-0000-7996 |
| authorships[0].author.display_name | Earl Smith |
| authorships[0].author_position | first |
| authorships[0].raw_author_name | Smith, Emory |
| authorships[0].is_corresponding | False |
| authorships[1].author.id | https://openalex.org/A5051726121 |
| authorships[1].author.orcid | |
| authorships[1].author.display_name | Robert Wallace |
| authorships[1].author_position | middle |
| authorships[1].raw_author_name | Wallace, Robert |
| authorships[1].is_corresponding | False |
| authorships[2].author.id | https://openalex.org/A5001761072 |
| authorships[2].author.orcid | https://orcid.org/0000-0003-3565-6002 |
| authorships[2].author.display_name | Matthew K. Robison |
| authorships[2].author_position | middle |
| authorships[2].raw_author_name | Robison, Matthew |
| authorships[2].is_corresponding | False |
| authorships[3].author.id | https://openalex.org/A5050075955 |
| authorships[3].author.orcid | https://orcid.org/0000-0003-4893-135X |
| authorships[3].author.display_name | Yuhao Huang |
| authorships[3].author_position | middle |
| authorships[3].raw_author_name | Huang, Yu |
| authorships[3].is_corresponding | False |
| authorships[4].author.id | https://openalex.org/A5084874990 |
| authorships[4].author.orcid | https://orcid.org/0009-0005-0887-1083 |
| authorships[4].author.display_name | Collin McMillan |
| authorships[4].author_position | last |
| authorships[4].raw_author_name | McMillan, Collin |
| authorships[4].is_corresponding | False |
| has_content.pdf | False |
| has_content.grobid_xml | False |
| is_paratext | False |
| open_access.is_oa | True |
| open_access.oa_url | https://arxiv.org/pdf/2506.00693 |
| open_access.oa_status | green |
| open_access.any_repository_has_fulltext | False |
| created_date | 2025-10-10T00:00:00 |
| display_name | Human Attention During Localization of Memory Bugs in C Programs |
| has_fulltext | False |
| is_retracted | False |
| updated_date | 2025-12-13T23:11:00.310470 |
| primary_topic.id | https://openalex.org/T10743 |
| primary_topic.field.id | https://openalex.org/fields/17 |
| primary_topic.field.display_name | Computer Science |
| primary_topic.score | 0.991100013256073 |
| primary_topic.domain.id | https://openalex.org/domains/3 |
| primary_topic.domain.display_name | Physical Sciences |
| primary_topic.subfield.id | https://openalex.org/subfields/1712 |
| primary_topic.subfield.display_name | Software |
| primary_topic.display_name | Software Testing and Debugging Techniques |
| cited_by_count | 0 |
| locations_count | 2 |
| best_oa_location.id | pmh:oai:arXiv.org:2506.00693 |
| best_oa_location.is_oa | True |
| best_oa_location.source.id | https://openalex.org/S4306400194 |
| best_oa_location.source.issn | |
| best_oa_location.source.type | repository |
| best_oa_location.source.is_oa | True |
| best_oa_location.source.issn_l | |
| best_oa_location.source.is_core | False |
| best_oa_location.source.is_in_doaj | False |
| best_oa_location.source.display_name | arXiv (Cornell University) |
| best_oa_location.source.host_organization | https://openalex.org/I205783295 |
| best_oa_location.source.host_organization_name | Cornell University |
| best_oa_location.source.host_organization_lineage | https://openalex.org/I205783295 |
| best_oa_location.license | |
| best_oa_location.pdf_url | https://arxiv.org/pdf/2506.00693 |
| best_oa_location.version | submittedVersion |
| best_oa_location.raw_type | text |
| best_oa_location.license_id | |
| best_oa_location.is_accepted | False |
| best_oa_location.is_published | False |
| best_oa_location.raw_source_name | |
| best_oa_location.landing_page_url | http://arxiv.org/abs/2506.00693 |
| primary_location.id | pmh:oai:arXiv.org:2506.00693 |
| primary_location.is_oa | True |
| primary_location.source.id | https://openalex.org/S4306400194 |
| primary_location.source.issn | |
| primary_location.source.type | repository |
| primary_location.source.is_oa | True |
| primary_location.source.issn_l | |
| primary_location.source.is_core | False |
| primary_location.source.is_in_doaj | False |
| primary_location.source.display_name | arXiv (Cornell University) |
| primary_location.source.host_organization | https://openalex.org/I205783295 |
| primary_location.source.host_organization_name | Cornell University |
| primary_location.source.host_organization_lineage | https://openalex.org/I205783295 |
| primary_location.license | |
| primary_location.pdf_url | https://arxiv.org/pdf/2506.00693 |
| primary_location.version | submittedVersion |
| primary_location.raw_type | text |
| primary_location.license_id | |
| primary_location.is_accepted | False |
| primary_location.is_published | False |
| primary_location.raw_source_name | |
| primary_location.landing_page_url | http://arxiv.org/abs/2506.00693 |
| publication_date | 2025-05-31 |
| publication_year | 2025 |
| referenced_works_count | 0 |
| abstract_inverted_index.C | 67, 108 |
| abstract_inverted_index.a | 3, 52, 72 |
| abstract_inverted_index.21 | 96 |
| abstract_inverted_index.31 | 120 |
| abstract_inverted_index.C. | 15 |
| abstract_inverted_index.In | 77, 114 |
| abstract_inverted_index.We | 94, 145 |
| abstract_inverted_index.as | 71, 164 |
| abstract_inverted_index.by | 24 |
| abstract_inverted_index.in | 14, 66, 92, 106, 127, 150 |
| abstract_inverted_index.is | 34, 40 |
| abstract_inverted_index.it | 39 |
| abstract_inverted_index.of | 5, 11, 64, 74, 119, 122, 152, 159, 176 |
| abstract_inverted_index.to | 20, 36, 42, 50, 88, 98 |
| abstract_inverted_index.we | 26, 80, 116, 173 |
| abstract_inverted_index.The | 125 |
| abstract_inverted_index.and | 29, 102, 134, 155, 167, 171 |
| abstract_inverted_index.are | 47, 58, 138, 169 |
| abstract_inverted_index.for | 110 |
| abstract_inverted_index.one | 101 |
| abstract_inverted_index.our | 128 |
| abstract_inverted_index.the | 21, 60, 140, 147 |
| abstract_inverted_index.use | 49 |
| abstract_inverted_index.(who | 46 |
| abstract_inverted_index.This | 0 |
| abstract_inverted_index.bugs | 13, 57, 65, 91, 105, 126 |
| abstract_inverted_index.most | 61, 141 |
| abstract_inverted_index.rate | 154 |
| abstract_inverted_index.such | 163 |
| abstract_inverted_index.task | 148 |
| abstract_inverted_index.that | 69 |
| abstract_inverted_index.this | 78 |
| abstract_inverted_index.what | 43, 165 |
| abstract_inverted_index.1.5-2 | 111 |
| abstract_inverted_index.Human | 16 |
| abstract_inverted_index.among | 59, 139 |
| abstract_inverted_index.bugs. | 144 |
| abstract_inverted_index.code. | 93 |
| abstract_inverted_index.cover | 130 |
| abstract_inverted_index.each. | 113 |
| abstract_inverted_index.eight | 103 |
| abstract_inverted_index.hours | 112, 121 |
| abstract_inverted_index.human | 6, 82 |
| abstract_inverted_index.lines | 166 |
| abstract_inverted_index.paper | 1 |
| abstract_inverted_index.read, | 170 |
| abstract_inverted_index.solve | 51 |
| abstract_inverted_index.study | 4, 37, 81, 129 |
| abstract_inverted_index.terms | 151 |
| abstract_inverted_index.three | 107 |
| abstract_inverted_index.total | 115 |
| abstract_inverted_index.types | 63 |
| abstract_inverted_index.which | 25, 137 |
| abstract_inverted_index.while | 85 |
| abstract_inverted_index.Visual | 32 |
| abstract_inverted_index.cases. | 184 |
| abstract_inverted_index.common | 62, 142 |
| abstract_inverted_index.double | 135 |
| abstract_inverted_index.during | 9, 180 |
| abstract_inverted_index.frees, | 136 |
| abstract_inverted_index.leaks, | 132 |
| abstract_inverted_index.locate | 89, 99 |
| abstract_inverted_index.memory | 12, 56, 90, 104, 131, 143 |
| abstract_inverted_index.paper, | 79 |
| abstract_inverted_index.people | 45, 86 |
| abstract_inverted_index.refers | 19 |
| abstract_inverted_index.versus | 182 |
| abstract_inverted_index.visual | 7, 17, 83, 160, 177 |
| abstract_inverted_index.analyze | 146 |
| abstract_inverted_index.attempt | 87 |
| abstract_inverted_index.because | 38 |
| abstract_inverted_index.between | 100 |
| abstract_inverted_index.central | 41 |
| abstract_inverted_index.effort. | 124 |
| abstract_inverted_index.explore | 174 |
| abstract_inverted_index.failure | 183 |
| abstract_inverted_index.faults. | 76 |
| abstract_inverted_index.finally | 172 |
| abstract_inverted_index.overall | 162 |
| abstract_inverted_index.process | 28 |
| abstract_inverted_index.program | 75 |
| abstract_inverted_index.recruit | 95 |
| abstract_inverted_index.related | 156 |
| abstract_inverted_index.success | 153, 181 |
| abstract_inverted_index.variety | 73 |
| abstract_inverted_index.factors, | 157 |
| abstract_inverted_index.manifest | 70 |
| abstract_inverted_index.outcomes | 149 |
| abstract_inverted_index.patterns | 158, 179 |
| abstract_inverted_index.presents | 2 |
| abstract_inverted_index.problem. | 54 |
| abstract_inverted_index.programs | 68, 109 |
| abstract_inverted_index.sighted) | 48 |
| abstract_inverted_index.attention | 8, 18, 33, 84, 161, 178 |
| abstract_inverted_index.collected | 117 |
| abstract_inverted_index.functions | 168 |
| abstract_inverted_index.important | 35 |
| abstract_inverted_index.processes | 23 |
| abstract_inverted_index.Meanwhile, | 55 |
| abstract_inverted_index.mechanical | 22 |
| abstract_inverted_index.overflows, | 133 |
| abstract_inverted_index.particular | 53 |
| abstract_inverted_index.prioritize | 30 |
| abstract_inverted_index.programmer | 123 |
| abstract_inverted_index.differences | 175 |
| abstract_inverted_index.information | 44 |
| abstract_inverted_index.programmers | 97 |
| abstract_inverted_index.selectively | 27 |
| abstract_inverted_index.information. | 31 |
| abstract_inverted_index.localization | 10 |
| abstract_inverted_index.observations | 118 |
| cited_by_percentile_year | |
| countries_distinct_count | 0 |
| institutions_distinct_count | 5 |
| citation_normalized_percentile |