English
Related papers

Related papers: On Designing Better Tools for Learning APIs

200 papers

Large language models (LLMs) are rapidly transforming knowledge work by improving the quality and efficiency of tasks such as writing, coding, and data analysis. However, their growing use in education has exposed a learning-performance…

Understanding the correct API usage sequences is one of the most important tasks for programmers when they work with unfamiliar libraries. However, programmers often encounter obstacles to finding the appropriate information due to either…

Software Engineering · Computer Science 2022-05-04 James Martin , Jin L. C. Guo

In recent years, large language models (LLMs) have seen rapid advancements, significantly impacting various fields such as computer vision, natural language processing, and software engineering. These LLMs, exemplified by OpenAI's ChatGPT,…

Software Engineering · Computer Science 2025-02-19 Xiang Chen , Chaoyang Gao , Chunyang Chen , Guangbei Zhang , Yong Liu

Software architecture education remains challenging for instructors, students, and software industry professionals. Several initiatives have been proposed to mitigate the inherent challenges, including games, supporting tools, collaborative…

Computers and Society · Computer Science 2022-10-11 Brauner R. N. Oliveira , Elisa Y. Nakagawa

While learning programming languages is crucial for software engineers, mastering the necessary tools is equally important. To facilitate this, JetBrains recently released the JetBrains Academy plugin, which customizes the IDE for learners,…

Software Engineering · Computer Science 2025-11-19 Anastasiia Birillo , Ilya Vlasov , Katsiaryna Dzialets , Hieke Keuning , Timofey Bryksin

Based on developer needs and usage scenarios, API (Application Programming Interface) recommendation is the process of assisting developers in finding the required API among numerous candidate APIs. Previous studies mainly modeled API…

Software Engineering · Computer Science 2023-09-14 Yafeng Gu , Yiheng Shen , Xiang Chen , Shaoyu Yang , Yiling Huang , Zhixiang Cao

Highly customized graphical user interfaces play a major role in today's software applications. There exist many technologies that support developing them. But these technologies demand writing a significant amount of unintuitive code to…

Software Engineering · Computer Science 2023-02-09 Samiyuru Menik , Sriyal Jayasinghe

While revolutionary AI-powered code generation tools have been rising rapidly, we know little about how and how to help software developers form appropriate trust in those AI tools. Through a two-phase formative study, we investigate how…

Human-Computer Interaction · Computer Science 2023-03-30 Ruijia Cheng , Ruotong Wang , Thomas Zimmermann , Denae Ford

Large language models (LLMs), pre-trained or fine-tuned on large code corpora, have shown effectiveness in generating code completions. However, in LLM-based code completion, LLMs may struggle to use correct and up-to-date Application…

Software Engineering · Computer Science 2025-02-14 Chong Wang , Kaifeng Huang , Jian Zhang , Yebo Feng , Lyuye Zhang , Yang Liu , Xin Peng

AI-based systems leverage recent advances in the field of AI/ML by combining traditional software systems with AI components. Applications are increasingly being developed in this way. Software engineers can usually rely on a plethora of…

Software Engineering · Computer Science 2024-07-29 Simon Schneider , Ananya Saha , Emanuele Mezzi , Katja Tuma , Riccardo Scandariato

Various studies have studied the impact of Generative AI on Computing Education. However, they have focused on the implications for novice programmers. In this experience report, we analyze the use of GenAI as a support tool for learning,…

Computers and Society · Computer Science 2025-03-21 Isaac Alpizar-Chacon , Hieke Keuning

An essential part of software maintenance and evolution, refactoring is performed by developers, regardless of technology or domain, to improve the internal quality of the system, and reduce its technical debt. However, choosing the…

Software Engineering · Computer Science 2021-10-26 Anthony Peruma , Steven Simmons , Eman Abdullah AlOmar , Christian D. Newman , Mohamed Wiem Mkaouer , Ali Ouni

Context: Application Programming Interface (API) code examples are an essential knowledge resource for learning APIs. However, a few user studies have explored how the structural characteristics of the source code in code examples impact…

Software Engineering · Computer Science 2024-04-04 Seham Alharbi , Dimitris Kolovos

In today's world, we need to ensure that AI systems are fair and unbiased. Our study looked at tools designed to test the fairness of software to see if they are practical and easy for software developers to use. We found that while some…

Software Engineering · Computer Science 2024-09-05 Thanh Nguyen , Luiz Fernando de Lima , Maria Teresa Badassarre , Ronnie de Souza Santos

The design process of user interfaces (UIs) often begins with articulating high-level design goals. Translating these high-level design goals into concrete design mock-ups, however, requires extensive effort and UI design expertise. To…

Human-Computer Interaction · Computer Science 2021-10-18 Forrest Huang , Gang Li , Xin Zhou , John F. Canny , Yang Li

Deep Learning experiments have critical requirements regarding the careful handling of their datasets as well as the efficient and correct usage of APIs that interact with hardware accelerators. On the one hand, software mistakes during…

Programming Languages · Computer Science 2025-01-03 Nick Papoulias

Developers often wonder how to implement a certain functionality (e.g., how to parse XML files) using APIs. Obtaining an API usage sequence based on an API-related natural language query is very helpful in this regard. Given a query,…

Software Engineering · Computer Science 2017-07-17 Xiaodong Gu , Hongyu Zhang , Dongmei Zhang , Sunghun Kim

Machine learning is now used in many applications thanks to its ability to predict, generate, or discover patterns from large quantities of data. However, the process of collecting and transforming data for practical use is intricate. Even…

As artificial intelligence (AI) increasingly shapes decision-making across domains, there is a growing need to support AI literacy among learners beyond computer science. However, many current approaches rely on programming-heavy tools or…

Computers and Society · Computer Science 2025-11-10 Aparna Maya Warrier , Arav Agarwal , Jaromir Savelka , Christopher Bogart , Heather Burte

Population aging and the ubiquity of technology in everyday life have made designing solutions for older adults a necessity. User-centered and participatory design approaches include elderly users in the software development process to some…