Lowering the Barriers to Successful Programming
降低成功编程的障碍
基本信息
- 批准号:0329090
- 负责人:
- 金额:$ 120万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Continuing Grant
- 财政年份:2003
- 资助国家:美国
- 起止时间:2003-08-15 至 2007-07-31
- 项目状态:已结题
- 来源:
- 关键词:
项目摘要
Although computer programming has existed in its modern form for half a century, it remains accessible only to a small fraction of the population. While programming is an inherently difficult activity, there are currently many barriers that prevent large portions of the population from learning to program a computer. Some of these barriers can be overcome through new facilities in programming environments. Current advanced programming environments provide a number of tools to help programmers construct programs: direct manipulation facilities to set up user interface widgets, code editors with coloring and indenting, and various pop-up menus that help construct code. However, there is little support to help users write the code that handles the dynamic responses to events and high-level behaviors. Furthermore, the tools for debugging code when something goes wrong are not much different than what has been available for 60 years: print statements, break-points and inspecting the values of variables. This is in spite of the fact that research shows that debugging and specifying the dynamic behavior of code are some of the most difficult aspects of programming.In this project, Alice, a programming environment that makes it very easy to program interactive 3D graphics, will be augmented to provide significantly better tools to help both novice and expert programmers develop and debug their programs. A number of novel ideas that have not yet appeared in any system will be implemented, along with the best ideas from prior systems and research (which have never been combined into one system). Thorough formative and summative user testing of the ideas will provide an understanding of which of the features are most useful; this will guide further refinement of Alice so it does the best possible job of guiding programmers to create correctly working solutions.In addition to addressing the mechanical issues of programming, Alice provides an opportunity to address the fact that relatively few women learn to program, which can be called a sociological barrier. Many girls turn away from science and technology during their middle school years, usually never to return. Middle school girls represent a particularly difficult challenge, requiring a highly motivating system with tremendous mechanical support. The PIs' approach to lowering the social barriers is to provide programming as a means to other motivating ends, especially storytelling.The intellectual merit of the proposed research will be to discover new techniques to aide in the construction and debugging of programs, and to measure and validate the impact and effectiveness of these techniques with both novice and expert programmers. The techniques envisioned to help with code creation include: graphical and textual editors for storyboards that will help transition story ideas into code; demonstrational and direct manipulation techniques for specifying dynamic behaviors; check-pointing and undo facilities so programmers can more easily explore multiple solutions and backtrack to a known state when necessary; smart copy-and-paste that will help in transforming and reusing code; support for collaboration and sharing of code; tools that will suggest likely causes and fixes for run-time errors; and embedded special-purpose editors to help construct Boolean expressions and scientific formulas. Techniques to support understanding, testing and debugging include: providing easy inspection of data so programmers can tell what is happening; pausing or break-pointing on any program event including objects that are being changed, created, or deleted; changing values at run time to explore the effects; providing a time-line visualization to show important events and enabling programs to run forwards and backwards from any point; support for asking "why" questions that will tie graphics and program events to the code that caused them; support for asking "why not" questions, which will use heuristics to propose reasons why some event did not happen; and search capabilities so programmers can find variables with particular values, or objects with certain properties.Broader Impacts: The broader impacts resulting from this research will be to help make programming more accessible to novice programmers, and more effective for both novice and expert programmers. One important target group will be middle school boys and girls who are not necessarily motivated to learn programming. The PIs believe they can make programming accessible and compelling to this audience, while at the same time making it easier for experienced programmers. These benefits will be evaluated using thorough user tests at all points of the design and implementation.
尽管计算机编程以其现代形式已经存在了半个世纪,但仍然只有一小部分人能够使用它。 虽然编程本质上是一项困难的活动,但目前存在许多障碍阻止大部分人学习计算机编程。 其中一些障碍可以通过编程环境中的新设施来克服。 当前的高级编程环境提供了许多工具来帮助程序员构建程序:用于设置用户界面小部件的直接操作设施、具有着色和缩进的代码编辑器以及帮助构建代码的各种弹出菜单。 然而,几乎没有支持帮助用户编写处理事件和高级行为的动态响应的代码。此外,出现问题时调试代码的工具与 60 年来可用的工具没有太大区别:打印语句、断点和检查变量值。 尽管研究表明,调试和指定代码的动态行为是编程中最困难的方面之一。在这个项目中,Alice(一个可以轻松编写交互式 3D 图形的编程环境)将得到增强,以提供更好的工具来帮助新手和专家程序员开发和调试他们的程序。 许多尚未出现在任何系统中的新颖想法将得到实施,以及先前系统和研究中的最佳想法(从未合并到一个系统中)。 对这些想法进行彻底的形成性和总结性用户测试将有助于了解哪些功能最有用;这将指导 Alice 的进一步完善,从而尽可能地指导程序员创建正确工作的解决方案。 除了解决编程的机械问题之外,Alice 还提供了一个机会来解决相对较少的女性学习编程这一事实,这可以称为社会学障碍。 许多女孩在中学时期就远离了科学技术,并且通常再也不会回来。 中学生面临着特别艰巨的挑战,需要高度激励的系统和巨大的机械支持。 PI 降低社交障碍的方法是将编程作为实现其他激励目的的一种手段,尤其是讲故事。拟议研究的智力价值将是发现有助于程序构建和调试的新技术,并通过新手和专家程序员来衡量和验证这些技术的影响和有效性。 设想帮助代码创建的技术包括:故事板的图形和文本编辑器,有助于将故事想法转换为代码;用于指定动态行为的演示和直接操作技术;检查点和撤消功能,以便程序员可以更轻松地探索多种解决方案,并在必要时回溯到已知状态;智能复制和粘贴将有助于转换和重用代码;支持协作和共享代码;可以建议运行时错误的可能原因和修复的工具;并嵌入专用编辑器来帮助构建布尔表达式和科学公式。 支持理解、测试和调试的技术包括: 提供简单的数据检查,以便程序员可以知道发生了什么;在任何程序事件上暂停或断点,包括正在更改、创建或删除的对象;在运行时更改值以探索效果;提供时间线可视化来显示重要事件,并使程序能够从任何点向前和向后运行;支持询问“为什么”问题,将图形和程序事件与引起它们的代码联系起来;支持提出“为什么不”的问题,这将使用启发法提出某些事件没有发生的原因;和搜索功能,以便程序员可以找到具有特定值的变量或具有某些属性的对象。 更广泛的影响:这项研究产生的更广泛的影响将有助于使新手程序员更容易编程,并且对新手和专家程序员都更有效。 一个重要的目标群体是中学生,他们不一定有学习编程的动力。 PI 相信他们可以让编程变得容易理解并吸引受众,同时让经验丰富的程序员变得更容易。 这些好处将通过在设计和实施的各个阶段进行彻底的用户测试来评估。
项目成果
期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
数据更新时间:{{ journalArticles.updateTime }}
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ patent.updateTime }}
Brad Myers其他文献
Using traits of web macro scripts to predict reuse
- DOI:
10.1016/j.jvlc.2010.08.003 - 发表时间:
2010-12-01 - 期刊:
- 影响因子:
- 作者:
Chris Scaffidi;Chris Bogart;Margaret Burnett;Allen Cypher;Brad Myers;Mary Shaw - 通讯作者:
Mary Shaw
Brad Myers的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Brad Myers', 18)}}的其他基金
SHF: Small: Personalizing API Documentation
SHF:小型:个性化 API 文档
- 批准号:
2007482 - 财政年份:2020
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
III: Large: Collaborative Research: Analysis Engineering for Robust End-to-End Data Science
III:大型:协作研究:稳健的端到端数据科学的分析工程
- 批准号:
1856641 - 财政年份:2019
- 资助金额:
$ 120万 - 项目类别:
Continuing Grant
CHS: Small: Multimodal Conversational Assistant that Learns from Demonstrations
CHS:Small:从演示中学习的多模式对话助手
- 批准号:
1814472 - 财政年份:2018
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
TWC: Small: Empirical Evaluation of the Usability and Security Implications of Application Programming Interface Design
TWC:小:应用程序编程接口设计的可用性和安全性影响的实证评估
- 批准号:
1423054 - 财政年份:2014
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
HCC: Large: Collaborative Research: Variations to Support Exploratory Programming
HCC:大型:协作研究:支持探索性编程的变体
- 批准号:
1314356 - 财政年份:2013
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
HCC: Small: Better Tools for Authoring Interactive Behaviors
HCC:小:用于创作交互行为的更好工具
- 批准号:
1116724 - 财政年份:2011
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
Pilot: Exploratory Programming for Interactive Behaviors: Unleashing Interaction Designers' Creativity
试点:交互行为的探索性编程:释放交互设计师的创造力
- 批准号:
0757511 - 财政年份:2008
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
CPA-SEL: Better Tools for Software Understanding
CPA-SEL:更好的软件理解工具
- 批准号:
0811610 - 财政年份:2008
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
Automatically Generating Consistent User Interfaces for Multiple Appliances
自动为多个设备生成一致的用户界面
- 批准号:
0534349 - 财政年份:2005
- 资助金额:
$ 120万 - 项目类别:
Continuing Grant
ITR: Collaborative Research: Dependable End-User Software
ITR:协作研究:可靠的最终用户软件
- 批准号:
0324770 - 财政年份:2003
- 资助金额:
$ 120万 - 项目类别:
Continuing Grant
相似海外基金
Overcoming Programming Barriers for Non-Computing Majors in Data Science
克服数据科学非计算专业的编程障碍
- 批准号:
2336929 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
Inhalable vaccines – Enforcing the mucosal barriers
吸入疫苗 – 加强粘膜屏障
- 批准号:
502576 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Postdoctoral Fellowship: STEMEdIPRF: Examining how faculty awareness of systemic barriers and growth mindset influences students' belonging, self-efficacy, and success in STEM
博士后奖学金:STEMEdIPRF:研究教师对系统性障碍和成长心态的认识如何影响学生的归属感、自我效能和 STEM 成功
- 批准号:
2327319 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
Conceptualisations of neurodiversity and barriers to inclusive pedagogy for early career teachers
神经多样性的概念和早期职业教师包容性教育学的障碍
- 批准号:
ES/X007715/1 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Research Grant
Highlight: Identifying barriers to mental healthcare for civilians affected by protracted armed conflict in Colombia
亮点:确定哥伦比亚受持久武装冲突影响的平民的心理保健障碍
- 批准号:
ES/X012808/1 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Research Grant
Breaking Barriers: Expanding Syphilis Point-of-care Testing and Immediate Treatment to Meet the Needs of Underserved Communities
打破障碍:扩大梅毒现场检测和立即治疗,以满足服务不足社区的需求
- 批准号:
502789 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Directed Grant
Sensing Beyond Barriers via Non-Linearities: Theory, Algorithms and Applications
通过非线性传感超越障碍:理论、算法和应用
- 批准号:
MR/Y003926/1 - 财政年份:2024
- 资助金额:
$ 120万 - 项目类别:
Fellowship
NSF Postdoctoral Fellowship in Biology: Overcoming Barriers to Wild Species Improvement through Genetic Analysis of an Evolutionary Novelty in the Solanum
美国国家科学基金会生物学博士后奖学金:通过对茄属进化新颖性的遗传分析克服野生物种改良的障碍
- 批准号:
2305651 - 财政年份:2023
- 资助金额:
$ 120万 - 项目类别:
Fellowship Award
Collaborative Research: Breaking Barriers in Multi-messenger Astrophysics: The RITTU Partnership
合作研究:打破多信使天体物理学的障碍:RITTU 合作伙伴关系
- 批准号:
2319326 - 财政年份:2023
- 资助金额:
$ 120万 - 项目类别:
Standard Grant
Investigation of Faculty Perceptions of Course-based Undergraduate Research Experiences and Barriers to their Implementation
教师对基于课程的本科生研究经验的看法及其实施障碍的调查
- 批准号:
2235568 - 财政年份:2023
- 资助金额:
$ 120万 - 项目类别:
Standard Grant














{{item.name}}会员




