I develop intelligent programming tools that enable real-time assistance for programmers to increase their productivity and learning gain. In particular, my research studies challenges that developers face, and designs systems to address these challenges. These sysems can enable personalized help in nearly real time, provide feedback to learners at scale, make communication more effective, more effectively use human effort to progressively automate machine, and coordinate teams to more efficiently collaborate, which neither computers nor humans can effectively solve alone.

Yan Chen is an Assistant Professor of Computer Science at Virginia Tech (USA) where he directs the Programming with Intelligent Machines & Environments Lab (PRIME). Yan is active in the Human-Computer Interaction (HCI) research community. His research spans programming support tools, software engineering, crowdsourcing, and CS education. His work has been published at top HCI conferences, including ACM CHI, UIST, and CSCW. He received the Best Short Paper award at VL/HCC 2020 and the Best Paper Honorable Mention Award at UIST 2022. Yan was a Postdoctoral Fellow at the University of Toronto (Canada), working with Tovi Grossman. He received his Ph.D. degree, advised by Steve Oney, from the University of Michigan (USA), and BS and MS degrees in Applied Math and Electrical & Computer Engieering from the University of Colorado, Boulder (USA).

I'm joining Virginia Tech as an Assistant Professor in the Department of Computer Science starting in Janunary 2023! I am looking for undergrads, MS, PhDs, and postdocs to join me to design the future intelligent programming assistance. If you are interested in working with me, complete this form!


May, 2023
Received a grant from 4VA as a PI, along with Co-PI Prof. Thomas LaToza (GMU).
CHI 2024 PC
NSF Panel
April, 2023
Welcome Amira, Rexime, and Xiaohang to my lab as PhD students in Fall 2023.
VizProg won a Best Paper Honorable Mention Award at CHI 2023🏅.
Jan, 2023
VizProg is conditionally accepted to CHI 2023. Congrats to the lead PhD student Ashley Zhang.
Oct, 2022
SemanticOn won a Best Paper Honorable Mention Award at UIST 2022 🏅. Kudos to my mentee Kevin Pu and coauthors!


Xiaohang Tang
PhD, VT CS (Fall'23-)
Rexime Abulikemu
PhD, VT CS (Fall'23-)
Amira Wu
PhD,VT CS (Fall'23-)
Tianjia Wang
PhD, VT CS (Spring'23-)
Ashley Zhang
PhD, Umich SI (Summer'22-)
Kevin Pu
PhD, UofT CS (Fall'21-)
Daniel Vargas Díaz
MS, VT CS (Spring'23-)
Xi Chen
UG, VT CS (Summer'23-)
Huayi Liu
UG, VT CS (Summer'23-)
Join us!

Selected Projects

These papers represent the research directions that I have been thinking about lately.

Ashley Zhang, Yan Chen, Steve Oney. VizProg: Identifying Misunderstandings by Visualizing Students' Coding Progress. ACM Conference on Human Factors in Computing Systems (CHI), 2023. (🏅Best Paper Honorable Mention)

VizProg presents an innovative, real-time visualization system that meaningfully displays class-wide students' coding progress, making it simple for programming instructors to pinpoint issues and mistakes.

Thoughts: The challenge of delivering programming education at scale is exacerbated by factors such as real-time instruction, a large student population, novice learners, and the complexity of the material being taught. To enhance the classroom experience for students and simplify the task for instructors, how can we make programming education more engaging and manageable?

Kevin Pu, Rainey Fu, Rui Dong, Xinyu Wang, Yan Chen, Tovi Grossman. SemanticOn: Specifying Content-Based Semantic Conditions for Web Automation Programs. ACM Symposium on User Interface Software and Technology (UIST), 2022. (🏅Best Paper Honorable Mention)

SemanticOn enables users to specify visual and textual semantic conditions in web automation programs by natural language description and content highlighting.

Thoughts: SemanticOn only considers 1-1 mapping between user intents and UI actions. How can we support other kinds of mappings? How can we design PbD systems are more trustworthy?

Yan Chen, Walter S. Lasecki, Tao Dong. Towards Supporting Programming Education at Scale via Live Streaming. ACM Conference on Computer-Supported Cooperative Work and Social Computing (CSCW), 2020.

Explores the motivations/barriers/opportunities of live streaming programming as compared to pre-recorded video through interviews with 14 streamers & 12 viewers.

Thoughts: What can we do to enhance the learning experience in an online environment by adopting the in-person social features that a physical library has? What can be done to support different social needs in an online learning context in order to enhance learning outcomes?


April Wang*, Yan Chen*, John Joon Young Chung, Christopher Brooks, Steve Oney. PuzzleMe: Leveraging Peer Assessment for In-Class Programming Exercises. ACM Conference on Computer-Supported Cooperative Work and Social Computing (CSCW), 2021 (* == equal contribution).

To scale programming support in a large live classroom, PuzzleMe coordinates students to help each other by exchanging test cases and problem-solving approaches for coding exercises.

Karthik Mahadevan, Yan Chen, Maya Cakmak, Anthony Tang, Tovi Grossman. Mimic: In-Situ Recording and Re-Use of Demonstrations to Support Robot Teleoperation. ACM Symposium on User Interface Software and Technology (UIST), 2022.

Teleoperators can use Mimic to program robots by demonstration and reuse demonstrations in new context

Rui Dong, Zhicheng Huang, Ian Iong Lam, Yan Chen, Xinyu Wang. WebRobot: Web Robotic Process Automation using Interactive Programming-by-Demonstration. ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2022.
[ACM ]

Jiannan Li, Mauricio Sousa, Chu Li, Jessie Liu, Yan Chen, Ravin Balakrishnan, Tovi Grossman. ASTEROIDS: Exploring Swarms of Mini-Telepresence Robots for Physical Skill Demonstration. ACM Conference on Human Factors in Computing Systems (CHI), 2022.

Asteroids explores a new space of remote physical task learning via telepresence robots

Yan Chen, Tovi Grossman. Umitation: Retargeting UI Behavior Examples for Website Design. ACM Symposium on User Interface Software and Technology (UIST), 2021

Umitation enables web developers to perform "copy-and-paste" (retarget) interaction on web front-end UI behaviors with a trigger-object-response framework.

Yan Chen, Sang Won Lee, Steve Oney. CoCapture: Effectively Communicating UI Behaviors on Existing Websites by Demonstrating and Remixing. ACM Conference on Human Factors in Computing Systems (CHI), 2021.

CoCapture allows designers to create UI behavior mockups on existing web interfaces by demonstrating and remixing, and to accurately describe their requests to developers by referencing the resulting mockups using hypertext.

Yan Chen, Jaylin Herskovitz, Walter S. Lasecki, Steve Oney. A Hybrid Crowd-Machine Workflow for Program Synthesis. IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2020.

Bashon introduces a crowdsourcing approach to help make program synthesis systems more robust, reliable, and trustworthy, and reduces the cost of downstream data collection for training a program synthesis system.

Yan Chen, Jaylin Herskovitz, Gabriel Matute, April Wang, Sang Won Lee, Walter S. Lasecki, Steve Oney. EdCode: Towards Personalized Support at Scale for Remote Assistance in CS Education. IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2020. (🏆 Best Short Paper)

EdCode applies a semi-asychronous on-demand help seeking model in a learning setting, aiming towards provide more personalized support at scale.

Yan Chen, Maulishree Pandey, Jean Y. Song, Walter S. Lasecki, Steve Oney. Improving Crowd-Supported GUI Testing with Structural Guidance. ACM Conference on Human Factors in Computing Systems (CHI), 2020.

Two techniques, interactive event-flow graphs and GUI-level guidance, that guide GUI testers to discover more test cases and avoid duplicate test cases.

Yan Chen, Andrés Monroy-Hernández, Ian Wehrman, Steve Oney, Walter S. Lasecki, Rajan Vaish. Sifter: A Hybrid Workflow for Theme-based Video Curation at Scale. ACM Conference on Interactive Media Experiences (IMX), 2020.

Sifter improves the video curation process by combining automated techniques with a human-powered two-stage pipeline that browses, selects, and reaches an agreement.

Yan Chen, Sang Won Lee, Yin Xie, YiWei Yang, Walter Lasecki, and Steve Oney. Codeon: On-Demand Software Development Assistance. ACM Conference on Human Factors in Computing Systems (CHI), 2017.
[local pdf | full video | 30s preview | BibTeX ]

CodeOn enables effective task hand-offs between developers and remote helpers by allowing asynchronous responses to on-demand requests.

Sang Lee, Yan Chen, Noah Klugman, Sai R. Gouravajhala, Angela Chen, and Walter S. Lasecki. Exploring Coordination Models for Ad Hoc Programming Teams ACM Conference on Human Factors in Computing Systems Late Breaking Work (CHI), 2017.

Explore the types and causes of the coordination costs for transient software teams when using existing collaborative programming tools: a VCS and a shared editor.

Yan Chen, Steve Oney and Walter Lasecki. Towards Providing On-Demand Expert Support for Software Developers. ACM Conference on Human Factors in Computing Systems (CHI), 2016.
[pdf | ACM DL | 30s preview | talk | BibTeX ]

Two studies that present the opportunities and the design recommendations of on-demand remote support systems for developers.

Other Publications

Yan Chen, Jasmine Jones, and Steve Oney.
The New Future of Work  Microsoft Research 2020
Yan Chen
VL/HCC Graduate Consortium 2019
Sang Lee, Yan Chen, and Walter S. Lasecki.
Yan Chen, Steve Oney and Walter Lasecki.
Collective Intelligence 2016. Oral Presentation.
pdf ·  BibTeX
Esther Vasiete, Yan Chen, Ian Char, Tom Yeh, Vishal Patel, Larry Davis, and Rama Chellappa.
Mobile HCI Poster 2014
pdf ·  ACM DL
Vishal Patel, Tom Yeh, M Salem, Yangmuzi Zhang, Yan Chen, Rama Chellappa, Larry Davis.
IT Professional 2013
pdf ·  IEEE
Yan Chen, Harvey Segur
Proceedings of the Royal Society of London. Series A, Mathematical and Physical Sciences.