Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleJanuary 2025
Non-Linear Software Documentation with Interactive Code Examples
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 34, Issue 2Article No.: 54, Pages 1–32https://doi.org/10.1145/3702976Documentation enables sharing knowledge between the developers of a technology and its users. Creating quality documents, however, is challenging: Documents must satisfy the needs of a large audience without being overwhelming for individuals. We address ...
- posterMay 2024
Authoring Worked Examples for JAVA Programming with Human AI Collaboration
SAC '24: Proceedings of the 39th ACM/SIGAPP Symposium on Applied ComputingPages 101–103https://doi.org/10.1145/3605098.3636160Worked examples are among the most popular types of learning content in programming classes. However, instructors rarely have time to provide line-by-line explanations for a large number of examples typically used in a programming class. In this paper, ...
- research-articleSeptember 2023
Investigating the Impact of On-Demand Code Examples on Novices' Open-Ended Programming Experience
- Wengran Wang,
- John Bacher,
- Amy Isvik,
- Ally Limke,
- Sandeep Sthapit,
- Yang Shi,
- Benyamin T. Tabarsi,
- Keith Tran,
- Veronica Cateté,
- Tiffany Barnes,
- Chris Martens,
- Thomas Price
ICER '23: Proceedings of the 2023 ACM Conference on International Computing Education Research - Volume 1Pages 464–475https://doi.org/10.1145/3568813.3600141Background and Context: Open-ended programming projects encourage novice students to choose and pursue projects based on their own ideas and interests, and are widely used in many introductory programming courses. However, novice programmers encounter ...
- research-articleJune 2023
A Case Study on When and How Novices Use Code Examples in Open-Ended Programming
- Wengran Wang,
- Yudong Rao,
- Archit Kwatra,
- Alexandra Milliken,
- Yihuan Dong,
- Neeloy Gomes,
- Sarah Martin,
- Veronica Catété,
- Amy Isvik,
- Tiffany Barnes,
- Chris Martens,
- Thomas Price
ITiCSE 2023: Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 1Pages 82–88https://doi.org/10.1145/3587102.3588774Many students rely on examples when learning to program, but they often face barriers when incorporating these examples into their own code and learning the concepts they present. As a step towards designing effective example interfaces that can support ...
- Work in ProgressApril 2023
A Field Study of Developer Documentation Format
CHI EA '23: Extended Abstracts of the 2023 CHI Conference on Human Factors in Computing SystemsArticle No.: 7, Pages 1–7https://doi.org/10.1145/3544549.3585767Documentation facilitates the transfer of knowledge among programmers and helps them become familiar with new technologies. However, the effectiveness with which a reader can find information in a document depends on its presentation format. In a prior ...
- short-paperOctober 2022
Casdoc: unobtrusive explanations in code examples
ICPC '22: Proceedings of the 30th IEEE/ACM International Conference on Program ComprehensionPages 631–635https://doi.org/10.1145/3524610.3527875Code examples are of great value to programmers trying to learn an unfamiliar API. Effective code examples are often surrounded with plain text explanations of the relevant concepts, techniques, and API elements involved in the example. However, ...
- research-articleFebruary 2022Best Paper
Exploring Design Choices to Support Novices' Example Use During Creative Open-Ended Programming
SIGCSE 2022: Proceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 1Pages 619–625https://doi.org/10.1145/3478431.3499374Open-ended programming engages students by connecting computing with their real-world experience and personal interest. However, such open-ended programming tasks can be challenging, as they require students to implement features that they may be ...
- research-articleJune 2021
Novices' Learning Barriers When Using Code Examples in Open-Ended Programming
- Wengran Wang,
- Archit Kwatra,
- James Skripchuk,
- Neeloy Gomes,
- Alexandra Milliken,
- Chris Martens,
- Tiffany Barnes,
- Thomas Price
ITiCSE '21: Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1Pages 394–400https://doi.org/10.1145/3430665.3456370Open-ended programming increases students' motivation by allowing them to solve authentic problems and connect programming to their own interests. However, such open-ended projects are also challenging, as they often encourage students to explore new ...
- research-articleNovember 2021
COSTER: a tool for finding fully qualified names of API elements in online code snippets
ICSE '21: Proceedings of the 43rd International Conference on Software Engineering: Companion ProceedingsPages 73–76https://doi.org/10.1109/ICSE-Companion52605.2021.00039Code snippets available on question answering sites (e.g., Stack Overflow) are a great source of information for learning how to use APIs. However, it is difficult to determine which APIs are discussed in those code snippets because they often suffer ...
- research-articleMay 2021Honorable Mention
Visualizing Examples of Deep Neural Networks at Scale
CHI '21: Proceedings of the 2021 CHI Conference on Human Factors in Computing SystemsArticle No.: 313, Pages 1–14https://doi.org/10.1145/3411764.3445654Many programmers want to use deep learning due to its superior accuracy in many challenging domains. Yet our formative study with ten programmers indicated that, when constructing their own deep neural networks (DNNs), they often had a difficult time ...
- short-paperJune 2018
Semi-automatic suggestion generation for young novice programmers in an open-ended context
IDC '18: Proceedings of the 17th ACM Conference on Interaction Design and ChildrenPages 405–412https://doi.org/10.1145/3202185.3202762Independent novice programmers in open-ended contexts rely on help systems to support their learning. These help systems are often laboriously hand-authored by experts. This paper describes a semi-automatic process for the creation of a suggestion-based ...
- research-articleApril 2018
Visualizing API Usage Examples at Scale
CHI '18: Proceedings of the 2018 CHI Conference on Human Factors in Computing SystemsPaper No.: 580, Pages 1–12https://doi.org/10.1145/3173574.3174154Using existing APIs properly is a key challenge in programming, given that libraries and APIs are increasing in number and complexity. Programmers often search for online code examples in Q&A forums and read tutorials and blog posts to learn how to use a ...
- posterJuly 2016
A Comparative Study of Visual Cues for Adaptive Navigation Support
HT '16: Proceedings of the 27th ACM Conference on Hypertext and Social MediaPages 323–325https://doi.org/10.1145/2914586.2914615Past work in the area of adaptive navigation support assumed no difference between different interface implementations of personalization approaches that are conceptually the same. The goal of this paper was to compare the impact of different ...
- research-articleFebruary 2016
Animated Examples as Practice Content in a Java Programming Course
SIGCSE '16: Proceedings of the 47th ACM Technical Symposium on Computing Science EducationPages 540–545https://doi.org/10.1145/2839509.2844639Code examples are commonly used learning resources that help students grasp various programming structures and concepts. However, example code usually requires explanations about what each line or part of the code does. Otherwise, students may find it ...
- ArticleMay 2015
Framework Instantiation Using Cookbooks Constructed with Static and Dynamic Analysis
ICPC '15: Proceedings of the 2015 IEEE 23rd International Conference on Program ComprehensionPages 125–128https://doi.org/10.1109/ICPC.2015.21Software reuse is one of the major goals in software engineering. Frameworks promote the reuse of not only individual building blocks, but also of system design. However, framework instantiation requires a substantial understanding effort. High quality ...
- ArticleSeptember 2014
Extracting Code Examples from Unit Test Cases
ICSME '14: Proceedings of the 2014 IEEE International Conference on Software Maintenance and EvolutionPage 667https://doi.org/10.1109/ICSME.2014.122Understanding how to properly use APIs of large libraries is difficult, error prone, and time consuming. Software developers resort to study to learn APIs. Several approaches have been proposed to mine these examples, but the sources from which they ...
- research-articleNovember 2009
What Makes APIs Hard to Learn? Answers from Developers
Most software projects reuse components exposed through APIs, which provide developers access to implemented functionality. APIs have grown large and diverse, which raises questions regarding their usability. This article reports on a study of the ...
- research-articleNovember 2007
Parseweb: a programmer assistant for reusing open source code on the web
ASE '07: Proceedings of the 22nd IEEE/ACM International Conference on Automated Software EngineeringPages 204–213https://doi.org/10.1145/1321631.1321663Programmers commonly reuse existing frameworks or libraries to reduce software development efforts. One common problem in reusing the existing frameworks or libraries is that the programmers know what type of object that they need, but do not know how ...
- ArticleOctober 2007
Exploiting code search engines to improve programmer productivity
OOPSLA '07: Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companionPages 921–922https://doi.org/10.1145/1297846.1297946Code Search Engines (CSE) can serve as powerful resources of open source code, as they can search in billions of lines of open source code available on the web. The strength of CSEs can be used for several tasks like searching relevant code samples, ...