Wode Ni


Carnegie Mellon University 2018.9 -

Pittsburgh, PA

Columbia University 2016.9 - 2018.5

New York, NY

Dickinson College 2013.9 - 2016.5

Carlisle, PA


Codifying Visual Representations

Wode Ni, Sam Estep, Hwei-Shin Harriman, Jiří Minarčík, and Joshua Sunshine.
Under Review.

Rose: Composable Autodiff for the Interactive Web

Sam Estep, Wode Ni, Raven Rothkopf, and Joshua Sunshine.

Edgeworth: Efficient and Scalable Authoring of Visual Thinking Activities

Wode Ni, Sam Estep, Hwei-Shin Harriman, Ken Koedinger, and Joshua Sunshine.
To appear in Proceedings of the 11th ACM Conference on Learning @ Scale (L@S’24).

Minkowski Penalties: Robust Differentiable Constraint Enforcement for Vector Graphics

Jiří Minarčík, Sam Estep, Wode Ni, and Keenan Crane.
To appear in ACM SIGGRAPH 2024 Conference Proceedings (SIGGRAPH’24).

Syntactic Code Search with Sequence-to-Tree Matching

Gabriel Matute, Wode Ni, Titus Barik, Alvin Cheung, and Sarah E. Chasins.
To appear in Proceedings of the ACM on Programming Languages (PLDI’24).

reCode: A Lightweight Find-and-Replace Interaction in the IDE for Transforming Code by Example

Wode Ni, Joshua Sunshine, Vu Le, Sumit Gulwani, and Titus Barik.
In Proceedings of the 34th ACM Symposium on User Interface Software and Technology (UIST’21).
[PDF] [BibTeX] [video preview] [talk]

Penrose: From Mathematical Notation to Beautiful Diagrams

Katherine Ye, Wode Ni, Max Krieger, Dor Ma’ayan, Joshua Sunshine, Jonathan Aldrich, and Keenan Crane.
ACM Transactions on Graphics (SIGGRAPH’20).
[PDF] [BibTeX] [www] [repo]

How Domain Experts Create Conceptual Diagrams and Implications for Tool Design

Dor Ma’ayan*, Wode Ni*, Katherine Ye, Chinmay Kulkarni, and Joshua Sunshine.
Best Paper Honourable Mention
In Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems (CHI’20).
[PDF] [BibTeX]

Generating Domain-Specific Programs for Diagram Authoring with Large Language Models

Rijul Jain, Wode Ni, and Joshua Sunshine.
SPLASH 2023: Companion Proceedings of the 2023 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for Humanity (SPLASH’23 EA).

Defining Visual Narratives for Mathematics Declaratively

Max Krieger, Wode Ni, and Joshua Sunshine.
Evaluation and Usability of Programming Languages and Tools (PLATEAU 2019), co-located with UIST.
[PDF] [slides]

Designing Declarative Language Tutorials: a Guided and Individualized Approach

Anael Kuperwajs Cohen, Wode Ni, and Joshua Sunshine.
Evaluation and Usability of Programming Languages and Tools (PLATEAU 2019), co-located with UIST.
[PDF] [slides]

Substance and Style: domain-specific languages for mathematical diagrams

Wode Ni*, Katherine Ye*, Joshua Sunshine, Jonathan Aldrich, and Keenan Crane.
Domain-Specific Language Design and Implementation (DSLDI 2017), co-located with SPLASH.
[PDF] [slides] [www] [repo]

Whiteboard Scanning Using Super-Resolution

Wode Ni.
Dickinson College Honors Theses. Paper 221.


Titus Barik, Gustavo Soares, Piyush Arora, Peter Groenewegen, Sumit Gulwani, Ameya Ketkar, Vu Le, Wode Ni, David Pugh, Arjun Radhakrishna, Ivan Radicek, Ashish Tiwari, Mark Wilson-Thomas. Edit automation using an anchor target list. US Patent 2024/11941372 B2 2024.

Gustavo Soares, Piyush Arora, Titus Barik, Peter Groenewegen, Sumit Gulwani, Ameya Ketkar, Vu Le, Wode Ni, David Pugh, Arjun Radhakrishna, Ivan Radicek, Ashish Tiwari, Mark Wilson-Thomas. Edit automation using a temporal edit pattern. US Patent 2024/11875136 B2 2024.


Apple 2022.5 - 2022.9

Research Intern - Machine Intelligence

At Apple AI/ML, I worked on prototypes and features to improve the developer experience. Shipped improved Swift code completion in Xcode and designed an syntactic code search algorithm published at PLDI’24.

Microsoft Research 2020.5 - 2020.8

Research Intern
Worked with the PROSE team (mentored by Titus Barik) on improving developer productivity in Visual Studio Code. I interviewed developers to elicit their needs for code transformation tools in editors. Inspired by the empirical data and relevant work in program synthesis, I designed reCode, an interaction model for rapidly performing complex code transformation using the familiar find-and-replace experience, published at UIST’21.

Carnegie Mellon University, Research Experiences for Undergraduate 2017.5 - 2017.8

Research Assistant
Penrose is a system that automatically visualizes mathematics using two domain-specific languages: Substance and Style. Co-advised by Jonathan Aldrich, Keenan Crane, Joshua Sunshine, and Katherine Ye, I designed and implemented the Style language, and extended the Substance language to support functions and logically quantified statements.

Columbia University, Computer Graphics and User Interfaces Lab 2017.1 - 2017.5

Research Assistant
Worked with prof. Steven Feiner, on Cyber Affordance Visualization in Augumented Reality project. Developed a Microsoft Hololens application that visualizes the Columbia campus in AR environment.


Teaching Assistant, Foundations of Software Engineering (17-313) CMU, 2022
Teaching Assistant, Crafting Software (17-450/17-950) CMU, 2022
Teaching Assistant, Programming Languages and Translators (COMS 4115) Columbia, 2017 - 2018
Teaching Assistant, Introduction to Java II (COMP 132) Dickinson, 2016
Peer Tutor, Data Structures and Problem Solving (COMP 232) Dickinson, 2016
Computer Lab Consultant Dickinson, 2014 - 2016


Rijul Jain (Williams College) CMU, 2023 - Now
Yiliang “Leo” Liang (University of Michigan) CMU, 2022 - 2023
Hwei-Shin Harriman (Olin College of Engineering) CMU, 2021 - 2022
Helena Yang (CMU) CMU, 2021
Max Krieger (CMU) CMU, 2018 - 2021
Courtney Miller (New College of Florida) CMU, 2019
Anael Kuperwajs Cohen (Macalester College) CMU, 2019

Honors & Awards

CMU Open Source Office Fellowship, supported by the Alfred P. Sloan Foundation CMU, 2023-2024
CHI’20 Best Paper Honourable Mention Award CMU, 2020
Phi Beta Kappa Dickinson, 2018
Excellence in Computer Science Award Columbia, 2018
Travel Award PL Mentoring Workshop (PLMW) SPLASH, 2018
Tau Beta Pi, Engineering Honor Society Columbia, 2017
Computer Science Departmental Honors Dickinson, 2016
Pi Mu Epsilon, Mathematics Honor Society Dickinson, 2016
Upsilon Pi Epsilon, Computer Science Honor Society Dickinson, 2016
Alpha Lambda Delta, First year Honor Society Dickinson, 2013
John Montgomery Scholarship Dickinson, 2013


S3D Department head search committee CMU, 2024
Sub-reviewer OOPSLA'21, VL/HCC'21
Reviewer CHI'21, CHI'22, SIGGRAPH'22, UIST'23, CHI'24
Research Experiences for Undergraduates in Software Engineering Admission Committee CMU, 2019 - 2023