AI-powered code assistants, such as Copilot, are quickly becoming a ubiquitous component of contemporary coding contexts. Among these environments, computational notebooks, such as Jupyter, are of particular interest as they provide rich interface affordances that interleave code and output in a manner that allows for both exploratory and presentational work. Despite their popularity, little is known about the appropriate design of code assistants in notebooks. We investigate the potential of code assistants in computational notebooks by creating a design space (reified from a survey of extant tools) and through an interview-design study (with 15 practicing data scientists). Through this work, we identify challenges and opportunities for future systems in this space, such as the value of disambiguation for tasks like data visualization, the potential of tightly scoped domain-specific tools (like linters), and the importance of polite assistants.
翻译:AI辅助代码工具(例如Copilot)正迅速成为当代编程场景中无处不在的组成部分。在这些环境中,计算笔记本(如Jupyter)因其独特的界面特性而备受关注——它们通过交错展示代码与输出结果,同时支持探索性工作和演示性工作。尽管这类工具广受欢迎,但关于笔记本中代码辅助工具的合理设计仍知之甚少。我们通过构建设计空间(基于对现有工具的调研提炼而来)并开展一项包含15位实践数据科学家的访谈-设计研究,探索了计算笔记本中代码辅助工具的潜力。通过本工作,我们识别了该领域未来系统面临的挑战与机遇,例如:为数据可视化等任务提供消歧能力的价值、高度限定领域专用工具(如代码检查器)的潜在用途,以及礼貌性辅助工具的重要性。