Anthony Peruma
YOU?
Author Swipe
View article: Understanding Computer Science Students' Career Fair Experiences: Goals, Preparation, and Outcomes
Understanding Computer Science Students' Career Fair Experiences: Goals, Preparation, and Outcomes Open
The technology industry offers exciting and diverse career opportunities, ranging from traditional software development to emerging fields such as artificial intelligence, cybersecurity, and data science. Career fairs play a crucial role i…
View article: ChatGPT for Code Refactoring: Analyzing Topics, Interaction, and Effective Prompts
ChatGPT for Code Refactoring: Analyzing Topics, Interaction, and Effective Prompts Open
Large Language Models (LLMs), such as ChatGPT, have become widely popular and widely used in various software engineering tasks such as refactoring, testing, code review, and program comprehension. Although recent studies have examined the…
View article: Identifier Name Similarities: An Exploratory Study
Identifier Name Similarities: An Exploratory Study Open
Identifier names, which comprise a significant portion of the codebase, are the cornerstone of effective program comprehension. However, research has shown that poorly chosen names can significantly increase cognitive load and hinder colla…
View article: On the structure and semantics of identifier names containing closed syntactic category words
On the structure and semantics of identifier names containing closed syntactic category words Open
Identifier names are crucial components of code, serving as primary clues for developers to understand program behavior. This paper investigates the linguistic structure of identifier names by extending the concept of grammar patterns, whi…
View article: Exploring Large Language Models for Analyzing and Improving Method Names in Scientific Code
Exploring Large Language Models for Analyzing and Improving Method Names in Scientific Code Open
Research scientists increasingly rely on implementing software to support their research. While previous research has examined the impact of identifier names on program comprehension in traditional programming environments, limited work ha…
View article: Method Names in Jupyter Notebooks: An Exploratory Study
Method Names in Jupyter Notebooks: An Exploratory Study Open
Method names play an important role in communicating the purpose and behavior of their functionality. Research has shown that high-quality names significantly improve code comprehension and the overall maintainability of software. However,…
View article: SCALAR: A Part-of-speech Tagger for Identifiers
SCALAR: A Part-of-speech Tagger for Identifiers Open
The paper presents the Source Code Analysis and Lexical Annotation Runtime (SCALAR), a tool specialized for mapping (annotating) source code identifier names to their corresponding part-of-speech tag sequence (grammar pattern). SCALAR's in…
View article: Exploring Code Comprehension in Scientific Programming: Preliminary Insights from Research Scientists
Exploring Code Comprehension in Scientific Programming: Preliminary Insights from Research Scientists Open
Scientific software-defined as computer programs, scripts, or code used in scientific research, data analysis, modeling, or simulation-has become central to modern research. However, there is limited research on the readability and underst…
View article: Exploring Accessibility Trends and Challenges in Mobile App Development: A Study of Stack Overflow Questions
Exploring Accessibility Trends and Challenges in Mobile App Development: A Study of Stack Overflow Questions Open
The proliferation of mobile applications (apps) has made it crucial to ensure their accessibility for users with disabilities. However, there is a lack of research on the real-world challenges developers face in implementing mobile accessi…
View article: Mobile App Security Trends and Topics: An Examination of Questions From Stack Overflow
Mobile App Security Trends and Topics: An Examination of Questions From Stack Overflow Open
The widespread use of smartphones and tablets has made society heavily reliant on mobile applications (apps) for accessing various resources and services. These apps often handle sensitive personal, financial, and health data, making app s…
View article: Exploring Accessibility Trends and Challenges in Mobile App Development: A Study of Stack Overflow Questions
Exploring Accessibility Trends and Challenges in Mobile App Development: A Study of Stack Overflow Questions Open
The proliferation of mobile applications (apps) has made it crucial to ensure their accessibility for users with disabilities. However, there is a lack of research on the real-world challenges developers face in implementing mobile accessi…
View article: The Impact of Generative AI-Powered Code Generation Tools on Software Engineer Hiring: Recruiters' Experiences, Perceptions, and Strategies
The Impact of Generative AI-Powered Code Generation Tools on Software Engineer Hiring: Recruiters' Experiences, Perceptions, and Strategies Open
The rapid advancements in Generative AI (GenAI) tools, such as ChatGPT and GitHub Copilot, are transforming software engineering by automating code generation tasks. While these tools improve developer productivity, they also present chall…
View article: A Developer-Centric Study Exploring Mobile Application Security Practices and Challenges
A Developer-Centric Study Exploring Mobile Application Security Practices and Challenges Open
Mobile applications (apps) have become an essential part of everyday life, offering convenient access to services such as banking, healthcare, and shopping. With these apps handling sensitive personal and financial data, ensuring their sec…
View article: On the Rationale and Use of Assertion Messages in Test Code: Insights from Software Practitioners
On the Rationale and Use of Assertion Messages in Test Code: Insights from Software Practitioners Open
Unit testing is an important practice that helps ensure the quality of a software system by validating its behavior through a series of test cases. Core to these test cases are assertion statements, which enable software practitioners to v…
View article: Impostor Syndrome in Final Year Computer Science Students: An Eye Tracking and Biometrics Study
Impostor Syndrome in Final Year Computer Science Students: An Eye Tracking and Biometrics Study Open
Imposter syndrome is a psychological phenomenon that affects individuals who doubt their skills and abilities, despite possessing the necessary competencies. This can lead to a lack of confidence and poor performance. While research has ex…
View article: Insights from the Field: Exploring Students' Perspectives on Bad Unit Testing Practices
Insights from the Field: Exploring Students' Perspectives on Bad Unit Testing Practices Open
Educating students about software testing practices is integral to the curricula of many computer science-related courses and typically involves students writing unit tests. Similar to production/source code, students might inadvertently d…
View article: How is Software Reuse Discussed in Stack Overflow?
How is Software Reuse Discussed in Stack Overflow? Open
Software reuse is a crucial external quality attribute targeted by open-source and commercial projects. Despite that software reuse has experienced an increased adoption throughout the years, little is known about what aspects of code reus…
View article: Do the Test Smells Assertion Roulette and Eager Test Impact Students' Troubleshooting and Debugging Capabilities?
Do the Test Smells Assertion Roulette and Eager Test Impact Students' Troubleshooting and Debugging Capabilities? Open
To ensure the quality of a software system, developers perform an activity known as unit testing, where they write code (known as test cases) that verifies the individual software units that make up the system. Like production code, test c…
View article: An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps
An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps Open
Technical debt describes situations where developers write less-than-optimal code to meet project milestones. However, this debt accumulation often results in future developer effort to live with or fix these quality issues. To better mana…
View article: Performance Comparison of Binary Machine Learning Classifiers in Identifying Code Comment Types: An Exploratory Study
Performance Comparison of Binary Machine Learning Classifiers in Identifying Code Comment Types: An Exploratory Study Open
Code comments are vital to source code as they help developers with program comprehension tasks. Written in natural language (usually English), code comments convey a variety of different information, which are grouped into specific catego…
View article: An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps
An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps Open
This is the code and dataset that accompanies the study: "An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps." This study has been accepted for publication at the 2023 International Conference on Technic…
View article: An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases
An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases Open
Unit testing is a vital part of the software development process and involves developers writing code to verify or assert production code. Furthermore, to help comprehend the test case and troubleshoot issues, developers have the option to…
View article: An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases
An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases Open
This is the code and dataset that accompanies the study: "An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases." This study has been accepted for publication at the 2023 International Worksho…
View article: An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases
An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases Open
This is the code and dataset that accompanies the study: "An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases." This study has been accepted for publication at the 2023 International Worksho…
View article: An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps
An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps Open
This is the code and dataset that accompanies the study: "An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps." This study has been accepted for publication at the 2023 International Conference on Technic…
View article: Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings
Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings Open
This is the dataset that accompanies the study: "Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings." This study has been accepted for publication at the 2022 Internationa…
View article: Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings
Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings Open
This is the dataset that accompanies the study: "Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings." This study has been accepted for publication at the 2022 Internationa…