Intelligent Programming Assistants


Programming is a challenging, time-consuming task that requires people recall broad sets of information. While modern development heavily relies on web resources for assistance, it leaves the end user to search for information sources, recognize an answer, and integrate it. We developed Codeon, an intelligent programming support tool that enables more effective task hand-off between end-user developers and remote helpers by allowing asynchronous responses to on-demand requests. With Codeon, developers can request help by speaking their requests aloud within the context of their IDE. Codeon automatically captures the relevant code context and allows remote helpers to respond with high-level descriptions, code annotations, code snippets, and natural language explanations. Developers can then immediately view and integrate these responses into their code.




Publications

[1]   Yan Chen, Sang Won Lee, Yin Xie, YiWei Yang, Walter Lasecki, and Steve Oney. Codeon: On-Demand Software Development Assistance. In Proceedings of the International ACM Conference on Human Factors in Computing Systems (CHI 2017). Denver, CO.

[2]   Yan Chen, Steve Oney and Walter Lasecki. Towards Providing On-Demand Expert Support for Software Developers. In Proceedings of the International ACM Conference on Human Factors in Computing Systems (CHI 2016). San Jose, CA.

[3]   Yan Chen, Steve Oney, Walter S. Lasecki. Expert Crowd Support Systems for Software Developers. In Proceedings of Collective Intelligence 2016 (CI 2016). New York, U.S. (Oral presentation)

[4]   Yan Chen, Steve Oney and Walter Lasecki. Automatically Capturing Context to Create Microtasks for Software Development. Workshop at the International ACM Conference on Human Factors in Computing Systems (CHI 2016). San Jose, CA.