探索程序综合工具对初学者的可学习性

大语言模型(LLM)的人机协作编程教育与计算思维中小学教师(K-12)大学教授与研究人员职业培训师与教练软件工程师与开发者

文献标题

Exploring the Learnability of Program Synthesizers by Novice Programmers

文献信息

  • 主题领域: 用户界面、人机交互、程序合成
  • 关键词: 可学习性, 程序合成, 初学程序员, 定性研究, 主题分析

研究背景与问题

  • 发现问题: 尽管现代程序合成工具在自动生成代码方面有很大进展,但很少有研究探讨这些工具对初学程序员的学习友好性(可学习性)。
  • 问题重要性: 针对初学者设计可学习的程序合成工具有助于将其广泛应用于教育环境以及面向新手开发者的工具中。
  • 研究动机与相关工作: 部分研究探讨了程序合成工具的可用性,但从初学者的角度评估这些工具的可学习性仍是一个研究空白。通过填补这一空白,可以改善合成工具的设计,使其更适合初学者。

解决方案

  • 提出方法: 作者观察了22名初学程序员如何与5种现有程序合成工具(Blue-Pencil, Copilot, Flash Fill, Regae和SnipPy)交互,并通过半结构化访谈收集反馈意见。
  • 创新之处: 开创性地梳理了程序合成工具设计中影响可学习性的多个维度,包括:
    1. 合成工具要求的规格说明类型。
    2. 触发合成过程及反馈展示的方式。
    3. 规格说明的复杂性和大小对学习的影响。
  • 实施步骤:
    1. 确定5种具有代表性的程序合成工具。
    2. 定义并分配与工具相关的任务。
    3. 参与者在研究过程中思考,并通过访谈分享他们的理解、感受和困惑。
    4. 使用主题分析方法识别导致工具可学习性问题的主要设计维度。

研究成果

  • 具体成果:
    1. 梳理了影响程序合成工具可学习性的多项关键设计维度:
      • 自愿式规格说明(用户必须主动输入的规格说明)比附带的规格说明(通过正常的用户行为隐式生成的规格说明)更难学习。
      • 工具是否允许用户触发合成过程和结果展示会显著影响用户体验——自动触发功能对初学者更友好。
      • 与期待不同的是,规格说明的大小(复杂性)相较于其他因素对可学习性的影响较小。
    2. 识别了常见初学者误区:
      • 认为规格说明越大越完整,合成效果越好。
      • 未清楚如何产生有意义的进展或改写有价值的规格说明。
    3. 观察到初学者与合成程序自然产生更深的“代码交互”行为,例如调试和追踪程序逻辑,这些有助于学习。
  • 优势:
    • 初次评估从用户角度分析了多种设计选择的优缺点,提供了广泛的适应性和洞察。
    • 提出了一些可行的、基于用户行为的设计建议。
  • 实验结果:
    • 自带规格说明工具(例如Copilot和Flash Fill)受到参与者的好评,更易引导初学者探索。
    • 需要用户明确触发的工具(如SnipPy和Regae)则通常引起混淆。
  • 局限性与未来方向:
    • 当前研究无法验证每一设计变量对可学习性影响的因果关系,未来可通过随机对照试验进一步剖析。
    • 本研究仅在特定任务和人群(大学数据结构课程学生)中验证,适用面需验证。
    • 作者未明确研究合成工具对初学者编程能力或概念学习的长期影响,未来可尝试纵向研究。

设计建议

  1. 自愿 vs 附带规格说明: 插入式隐性收集用户行为形成规格说明的工具对初学者更友好且有高学习潜力。
  2. 触发机制: 鼓励采用自动触发合成过程和结果的方式。
  3. 错误反馈: 提供合成失败的详细反馈机制,让用户理解问题所在。
  4. 规格说明引导: 高频情境下为用户提供明确的规格说明模板或推荐。
  5. 互动学习模型: 允许用户进一步探索和手动改进生成代码,这有助于深度学习。

总结

本文提供了关于如何设计面向初学程序员的程序合成工具的启示性指导,强调了用户需求、行为模式和正确引导在合成工具设计中的重要性,为未来针对初学者的技术开发奠定了理论基础。

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/papers/uist/85051/2022

广告推荐

学习 AI 编程到 CodeNow

open_in_new打开DOI链接
DOI: https://doi.org/10.1145/3526113.3545659
一眼看懂

论文快照

fact_check
dataset
来源
UIST
calendar_month
年份
2022
emoji_events
奖项
未标记奖项
group
作者
3 位作者
sell
研究子方向
大语言模型(LLM)的人机协作、编程教育与计算思维
work
职业/产业
中小学教师(K-12)、大学教授与研究人员、职业培训师与教练、软件工程师与开发者
article
内容状态
已索引正文
hub
相关论文
6 篇相关论文