HowToo: A Platform for Sharing, Finding, and Using Programming Strategies

Published: 2021, Last Modified: 13 Jan 2025VL/HCC 2021EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Developers rely heavily on resources to find technical insights on how to use languages, APIs, and platforms, seeking help from Stack Overflow, GitHub, meetups, blogs, live streams, forums, documentation, and more. However, there is one kind of knowledge for which resources are hard to find: strategic knowledge. In contrast to technical knowledge, strategic knowledge provides insight into how to approach problem-solving. Prior work has demonstrated that developers can make use of written strategies to improve their problem-solving. However, there is currently no way for developers to share, curate, and search for this knowledge at scale. To address this gap, we contribute HowToo, a platform for sharing, finding, and using programming strategies. Its key insight is that there are many different approaches to the same problem, and developers may need different strategies depending on their situation. In a longitudinal evaluation with more than 30 students in a project-based software engineering course, we found that: 1) students viewed HowToo as complementary to technical resources; 2) students viewed strategies as helping them be more systematic and complete in their work; 3) HowToo helped students be more confident in their problem solving; 4) when students were under time pressure, they were less inclined to use HowToo to structure their work, as being mindful required them to slow down.
Loading