TweakIt:支持将代码变形的终端用户程序员

知识工作者工具与工作流原型设计与用户测试软件工程师与开发者UI/UX 设计师

文献标题

TweakIt: Supporting End-User Programmers Who Transmogrify Code

文献信息

  • 主题领域: 支持非专业程序员的编程工具设计,尤其是数据分析相关的代码复用与调整工具。
  • 关键词: 终端用户编程, 代码调整, 数据分析, 数据工作流, 代码复用, 实时编程, 表格工具, 用户体验, 代码可视化, 人机交互

研究背景与问题

  • 作者发现了哪些问题或挑战?

    1. 数据分析师等终端用户程序员需要在有限编程背景下完成复杂的数据操作任务。
    2. 他们常通过从同事或互联网获取的代码片段来满足需求,但通常这些代码不能直接运行,需要进行调整。
    3. 当前工具不能充分支持这些用户直观地理解代码逻辑,也无法嵌入到他们熟悉的环境(如表格应用)中。
  • 为什么这个问题很重要?

    1. 数据分析和科学研究中处理特定任务的灵活性越来越关键,代码复用是完成任务的重要手段。
    2. 现有工具的不足导致了低效且不直观的工作流,如频繁的代码导入导出和反复试验。
    3. 改进支持终端用户的工具设计能够提升生产效率,减少对编程知识的依赖。
  • 研究动机与相关工作

    1. 相关研究多集中于帮助终端用户编程活动(如代码调试或程序理解),但对代码调整过程的支持不足。
    2. 既有的代码复用工具侧重以专家为导向,忽视了非专业程序员的需求。
    3. 实时编程技术尽管有助于代码交互过程,但其可用性在非专业编程领域的应用仍有限。

解决方案

  • 作者提出了哪些方法或解决方案? 作者提出了一款名为 TweakIt 的原型工具,该工具旨在支持非专业程序员通过直观的实时代码预览和比较功能,在现有工作流中高效调整和复用代码。

  • 该解决方案的创新之处是什么?

    1. 将代码操作和预览嵌入到用户熟悉的表格应用(如 Excel)中,消除了工作流中断问题。
    2. 实现了基于抽象语法树(AST)的实时代码表达式预览,使用户无需完整运行代码即可理解其效果。
    3. 提供了代码输出的实时比较功能,帮助用户直观理解不同代码修改的影响。
  • 实施步骤是什么?使用了哪些关键技术?

    1. 工具设计实现:基于微软 Excel 和 Office JavaScript API,在浏览器环境中加载并运行 Python 代码。
    2. 代码解析:使用抽象语法树解析代码表达式,定位用户选择的代码块并提供即时的输出预览。
    3. 输出展示
      • 将 Python 的中间结果直接呈现在电子表格中,使用户能直观查看和比较。
      • 动态计算数据输入的范围,与 Excel 的表格数据相结合。
    4. 错误修复与包管理:自动检测并修复常见的语法错误(如缺少括号)以及安装缺失的Python包。

研究成果

  • 取得了哪些具体成果?

    1. 作者通过用户调研总结了终端用户程序员调整代码的典型挑战,并将这些洞察转化为 TweakIt 的设计目标。
    2. 在用户研究中,参与者认为该工具显著提高了对代码功能的理解能力。
    3. TweakIt 的输出预览和比较功能被认为能增强代码探索的信心,减少对"黑盒"代码的不确定性。
  • 与现有解决方案相比,它有哪些优势?

    1. 嵌入性强:无需额外的工具或导出数据,代码操作直接与电子表格工作流无缝衔接。
    2. 实时性强:支持对代码局部的实时预览而非整体执行,减少了试错时间。
    3. 非专业用户友好:设计重点在于降低编程技术门槛,而不是引诱用户掌握复杂的工具或概念。
  • 实验或评估结果是什么?

    1. 用户实验显示,相较于传统的代码复用流程,用户在理解代码功能和探索代码表现的过程中对 TweakIt 表现出更高的信任度。
    2. TweakIt 在某些方面未显著提升实验完成任务的数量,但用户报告其体验与信心均有显著提升。
    3. 用户更频繁地使用了 TweakIt 的代码预览功能,平均查看了 226 次代码输出,而对照组仅为 27.6 次。
  • 局限性与未来方向

    1. 当前局限性
      • 对于语法错误和运行错误的指示不够友好,无法帮助用户正确调整代码。
      • 工具尚未为大规模数据比较或高效视觉化输出提供支持。
    2. 未来研究方向
      • 开发更易于理解的错误提示系统。
      • 将代码建议和示例生成融入工具,进一步降低使用门槛。
      • 扩展应用场景,包括支持其他开发环境和用户群体。

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/papers/chi/47918/2021

广告推荐

学习 AI 编程到 CodeNow

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

论文快照

fact_check
dataset
来源
CHI
calendar_month
年份
2021
emoji_events
奖项
未标记奖项
group
作者
5 位作者
sell
研究子方向
知识工作者工具与工作流、原型设计与用户测试
work
职业/产业
软件工程师与开发者、UI/UX 设计师
article
内容状态
已索引正文
hub
相关论文
10 篇相关论文