An Exploratory Study of Sharing Strategic Programming Knowledge
Authors
Open-Source Collaboration & Code ReviewKnowledge Worker Tools & WorkflowsPrototyping & User TestingSoftware Engineers & DevelopersHCI Researchers
Title of the Paper
An Exploratory Study of Sharing Strategic Programming Knowledge
Paper Information
- Subject Area: Knowledge sharing and programming strategies in software engineering
- Keywords: Programming strategies, knowledge sharing, software engineering, human-computer interaction design, strategy feedback platform
Research Background and Issues
- Identified Problems or Challenges: Software engineers generally lack shared "strategic knowledge" for solving programming problems, despite its critical importance for productivity and success. Current knowledge sharing primarily focuses on code examples, configuration tips, or tutorials for new technologies, without addressing the specific steps for problem-solving.
- Significance: Strategic knowledge can effectively enhance development efficiency, task success rates, reduce errors, and structure the development process. However, this type of knowledge often resides in the expertise of individuals, making it difficult to externalize or systematize.
- Research Motivation and Related Work: Other fields, such as healthcare, military, and civil engineering, have achieved significant benefits by externalizing strategic knowledge. However, the programming field lacks such systematic sharing, either due to the implicit nature of the knowledge or the absence of suitable platform support. Existing research indicates that explicit programming strategies can help developers become more efficient, but sharing this knowledge faces numerous obstacles.
Solution
- Proposed Method or Solution: A research method was proposed to simulate a platform for sharing programming strategy knowledge. Participants included experienced developers writing strategies, other developers using these strategies and providing feedback, and the authors refining the strategies based on the feedback.
- Innovations:
- Validating whether programming strategies can be externalized through tasks and experiments.
- Introducing a structured strategy language, Roboto, to help developers express strategies in a clear and systematic manner.
- Collecting user feedback to explore ways to improve the strategies.
- Implementation Steps and Techniques:
- Task Design: Selecting common frontend development tasks, such as performance optimization, error handling, CSS debugging, etc.
- Strategy Creation: Developers use the Roboto language to write clear, step-by-step programming strategies.
- Strategy Testing: Other developers use the strategies to complete specified tasks and provide feedback on their usage.
- Feedback Improvement: The authors analyze user feedback and adjust the strategy language and content accordingly.
Research Findings
- Specific Results Achieved:
- All participants were able to externalize programming strategies, with an average strategy length of 34 lines.
- Strategies helped developers solve problems more systematically, though challenges such as user misunderstanding and insufficient information were identified.
- Comparison with Existing Solutions and Advantages: Programming strategies can be externalized into clear steps, differing from typical code sharing by being closer to the problem-solving process of developers. However, this requires significant effort from authors and substantial user feedback.
- Experimental or Evaluation Results:
- Authors encountered 22 challenges in strategy creation (scope, user perspective, language usage, etc.).
- Users faced 11 difficulties in using the strategies (unclear steps, tool usage issues, etc.).
- Authors faced 7 challenges when reviewing feedback during strategy refinement.
- Limitations and Future Directions:
- The experiment was limited to a simulated platform, and real-world knowledge-sharing scenarios may be more complex.
- The Roboto language requires further improvement to provide stronger expressive capabilities and tool support.
- The strategy creation workflow needs optimization to reduce the burden on authors.
- The study suggests involving supervisory teams and teaching experience to enhance the creation process.
- Future work may include developing better strategy search or linking systems to personalize matches to users' knowledge levels and needs.
This study highlights the potential of sharing programming strategy knowledge and provides important insights for designing supportive mechanisms and platforms.
Research Questions / Practical Problems
Question signals indexed for this paper.
help
Research Questions
3- Can programming strategy knowledge be effectively externalized through tasks and experiments?Category: AI Code Translation and Error Repair SupportSimilar questionsarrow_forward
- How can a clear strategy language (e.g., Roboto) help developers express programming strategies?Category: AI Code Translation and Error Repair SupportSimilar questionsarrow_forward
- How can user feedback optimize externalization and sharing of programming strategies?Category: AI Code Translation and Error Repair SupportSimilar questionsarrow_forward
lightbulb
Practical Problems
1- Software engineers lack shared strategic knowledge for problem-solving in program design.Category: AI Code Translation and Error Repair SupportSimilar questionsarrow_forward
- 80%
CFar: A Tool to Increase Communication, Productivity, and Review Quality in Collaborative Code Review
CHI '18· Open-Source Collaboration & Code Review +1
- 80%
Understanding Documentation Use Through Log Analysis: A Case Study of Four Cloud Services
CHI '24· Knowledge Worker Tools & Workflows +1
- 80%
Concept-Labeled Examples for Library Comparison
UIST '22· Knowledge Worker Tools & Workflows +1
- 67%
Misty: UI Prototyping Through Interactive Conceptual Blending
CHI '25· Knowledge Worker Tools & Workflows +1
- 67%
Fuse: In-Situ Sensemaking Support in the Browser
UIST '22· Knowledge Worker Tools & Workflows +1
Based on Jaccard similarity of research subtopics & professions (≥60%)
Quick Actions
AdRecommended
Learn AI Coding at CodeNow
open_in_newOpen DOI Link
DOI: https://dl.acm.org/doi/abs/10.1145/3491102.3502070
At a Glance
fact_checkPaper Snapshot
dataset
Source
CHI
calendar_month
Year
2022
emoji_events
Award
No award tagged
group
Authors
4 authors
sell
Subtopics
Open-Source Collaboration & Code Review, Knowledge Worker Tools & Workflows, Prototyping & User Testing
work
Professions
Software Engineers & Developers, HCI Researchers
article
Content Status
Full text indexed
hub
Related Papers
5 related papers