Omnicode: A Novice-Oriented Live Programming Environment with Always-On Run-Time Value Visualizations

Omnicode: A Novice-Oriented Live Programming Environment with Always-On Run-Time Value Visualizations
复制标题

Omnicode:面向新手的实时编程环境,具有始终在线的运行时价值可视化

DOI:
10.1145/3126594.3126632
复制
发表时间:
2017
期刊:
Proceedings of the 30th Annual ACM Symposium on User Interface Software and Technology
影响因子:
--
通讯作者:
Philip J. Guo
Philip J. Guo
中科院分区:
--
文献类型:
--
作者:
Hyeonsu B Kang;Philip J. Guo

文献摘要

参考文献

被引文献

相似文献

运行时计划的可视化措施有助于新手形成适当的心理模型并调试其代码。我们通过提出以下问题将这种技术推向极端:如果命令式语言的实时编程环境始终显示所有程序变量的所有运行时值的整个历史记录,该怎么办?为了探讨这个问题,我们构建了一个名为omnicode(“无声音代码”)的原型实时IDE,该IDE不断运行用户的Python代码,并使用sctateplot矩阵可视化其所有数值的整个历史记录,以及从其他有意义的数字中衍生出的有意义的数字数据类型。为了过滤可视化并在特定关注点上进行磨练,用户可以通过散点图或选择代码的部分刷新和链接。他们还可以放大,以在每个执行步骤中查看详细的堆栈和堆可视化。一项对10名新手程序员的探索性研究发现,他们发现Omnicode可用于调试,形成心理模型,向他人解释其代码以及发现不可能在普通IDE中的偶然性时刻。
Visualizations of run-time program state help novices form proper mental models and debug their code. We push this technique to the extreme by posing the following question: What if a live programming environment for an imperative language always displays the entire history of all run-time values for all program variables all the time? To explore this question, we built a prototype live IDE called Omnicode ("Omniscient Code") that continually runs the user's Python code and uses a scatterplot matrix to visualize the entire history of all of its numerical values, along with meaningful numbers derived from other data types. To filter the visualizations and hone in on specific points of interest, the user can brush and link over the scatterplots or select portions of code. They can also zoom in to view detailed stack and heap visualizations at each execution step. An exploratory study on 10 novice programmers discovered that they found Omnicode to be useful for debugging, forming mental models, explaining their code to others, and discovering moments of serendipity that would not have been likely within an ordinary IDE.
理解第一:评估用于 CS1 程序跟踪的新颖教学法和辅导系统
DOI: 10.1145/3105726.3106178
发表时间: 2017
期刊: ACM International Computing Education Research Conference
影响因子: --
作者:
Nelson, Greg L.;Xie, Benjamin;Ko, Andrew J.
通讯作者: Ko, Andrew J.