Resume-aware faculty matching

Find professors who actually fit you

Upload your resume. Four AI agents analyze your background, rank the faculty who fit, inspect their recent research, and help you draft outreach — grounded in their actual work, not templates.

Free to startNo credit cardCancel anytime
Top matches Balanced preset
Dr. Sarah Chen
Stanford · Interpretability · NLP
91
Dr. Marcus Holloway
MIT · Robotics · RL
84
Dr. Aisha Okonkwo
CMU · Fairness · HCI
82
Nova · Professor Researcher · re-ranking top 20…
Kelly  Cunningham

Kelly Cunningham

Verified

University of Illinois Urbana-Champaign · Department of Biomedical and Translational Sciences

Active 2015–2026

h-index11
Citations350
Papers3921 last 5y
Funding
See your match with Kelly Cunningham — sign in to PhdFit.Sign in

Research topics

  • Computer Science
  • Artificial Intelligence
  • Psychology
  • Theoretical computer science
  • Mathematics education
  • Programming language

Selected publications

  • Teaching Authentic Programming Applications to Novices: Purpose-first Tutorials in a General Education Computing Course

    2026-02-13

    articleOpen accessSenior author

    Building computer science instruction for everyone requires understanding and supporting learner motivations beyond software development. Some learners value understanding the applications of code more than writing code from scratch (e.g., end-user programmers or conversational programmers). However, introductory programming instruction often emphasizes fundamental code-writing skills without clear applications. Our goal is to provide an overview of authentic computing applications to students from a variety of disciplines, including those who may not be interested in code-writing skills or may not have prior experience in programming. To this end, we designed and tested three interactive tutorials in the lab sessions of an introductory computing course for non-CS majors. Instead of teaching programming from scratch, these purpose-first tutorials highlight the purpose and basics of authentic programming libraries and tools, such as SQL queries, web-scraping libraries in Python, and HTTP requests. They are short (<1 hour), require minimal prior knowledge, and can be easily included in existing courses. The learning objectives of our activities are to help students understand why and when these tools are useful and to encourage them to explore these tools in problems that they might encounter in their disciplines. We observed that the activities were beneficial in improving confidence and providing a conceptual understanding of several tools. We present lessons learned to inform the design of similar activities for teaching computing as general knowledge to diverse audiences.

  • PLAID: Supporting Computing Instructors to Identify Domain-Specific Programming Plans at Scale

    2025-04-24 · 1 citations

    preprintOpen accessSenior author

    Pedagogical approaches focusing on stereotypical code solutions, known as programming plans, can increase problem-solving ability and motivate diverse learners. However, plan-focused pedagogies are rarely used beyond introductory programming. Our formative study (N=10 educators) showed that identifying plans is a tedious process. To advance plan-focused pedagogies in application-focused domains, we created an LLM-powered pipeline that automates the effortful parts of educators' plan identification process by providing use-case-driven program examples and candidate plans. In design workshops (N=7 educators), we identified design goals to maximize instructors' efficiency in plan identification by optimizing interaction with this LLM-generated content. Our resulting tool, PLAID, enables instructors to access a corpus of relevant programs to inspire plan identification, compare code snippets to assist plan refinement, and facilitates them in structuring code snippets into plans. We evaluated PLAID in a within-subjects user study (N=12 educators) and found that PLAID led to lower cognitive demand and increased productivity compared to the state-of-the-art. Educators found PLAID beneficial for generating instructional material. Thus, our findings suggest that human-in-the-loop approaches hold promise for supporting plan-focused pedagogies at scale.

  • Patterns of Major Switching and Persistence in Computing among Students with Disabilities

    2025-02-18

    articleSenior author

    Despite the proliferation of studies on broadening participation in computing, individuals with disabilities remain relatively less examined. In this study, we use large-scale data to examine the patterns of persistence and major-switching among students with disabilities in undergraduate computing education. Our findings suggest that disabilities discourage students to enter or remain in computing at the intersection of their race and gender. Our study provides insights on the challenges and opportunities students with disabilities face in undergraduate computing education, with implications for increasing their participation and retention.

  • Generating Planning Feedback for Open-Ended Programming Exercises with LLMs

    ArXiv.org · 2025-04-11

    preprintOpen accessSenior author

    To complete an open-ended programming exercise, students need to both plan a high-level solution and implement it using the appropriate syntax. However, these problems are often autograded on the correctness of the final submission through test cases, and students cannot get feedback on their planning process. Large language models (LLM) may be able to generate this feedback by detecting the overall code structure even for submissions with syntax errors. To this end, we propose an approach that detects which high-level goals and patterns (i.e. programming plans) exist in a student program with LLMs. We show that both the full GPT-4o model and a small variant (GPT-4o-mini) can detect these plans with remarkable accuracy, outperforming baselines inspired by conventional approaches to code analysis. We further show that the smaller, cost-effective variant (GPT-4o-mini) achieves results on par with state-of-the-art (GPT-4o) after fine-tuning, creating promising implications for smaller models for real-time grading. These smaller models can be incorporated into autograders for open-ended code-writing exercises to provide feedback for students' implicit planning skills, even when their program is syntactically incorrect. Furthermore, LLMs may be useful in providing feedback for problems in other domains where students start with a set of high-level solution steps and iteratively compute the output, such as math and physics problems.

  • Detecting Programming Plans in Open-ended Code Submissions

    2025-02-18

    articleSenior author

    Open-ended code-writing exercises are commonly used in large-scale introductory programming courses, as they can be autograded against test cases. However, code writing requires many skills at once, from planning out a solution to applying the intricacies of syntax. As autograding only evaluates code correctness, feedback addressing each of these skills separately cannot be provided. In this work, we explore methods to detect which high-level patterns (i.e. programming plans) have been used in a submission, so learners can receive feedback on planning skills even when their code is not completely correct. Our preliminary results show that LLMs with few-shot prompting can detect the use of programming plans in 95% of correct and 86% of partially correct submissions. Incorporating LLMs into grading of open-ended programming exercises can enable more fine-grained feedback to students, even in cases where their code does not compile due to other errors.

  • Applying the Model of Interest Development to Understand Why Non-CS Majors Decide to Persist in or Leave Computing

    2025-11-06

    articleOpen accessSenior author

    A growing number of non-CS major students are enrolling in CS courses, alongside increased recognition that computing is critical to many fields. However, despite their perception of computing’s importance, many of these students lose interest in CS and stop taking additional CS courses. In this study, we examine non-CS major students’ CS learning experiences using the Model of Interest Development, a framework that models how learners’ interest in academic domains progresses through phases of increasing engagement. Through semi-structured interviews with 19 non-CS major students, we identify key factors common among students who develop the most sustained interest in CS and those who do not. We find that non-CS majors’ initial interest is often triggered by external advice and hazy perceptions of computing’s importance, even when their understanding of the field is limited. Continued interest depends heavily on the perceived relevance of course content, the presence of a supportive learning environment, self-efficacy in learning computing and pursuing CS-related careers, and the extent to which courses address or reinforce generalizations and biases about computing. For those who develop the strongest interest, key factors include beliefs about the level of CS knowledge needed for their career goals and whether their stereotypes about CS are effectively challenged. Our findings provide insight into why previous efforts to improve the persistence of non-CS major students may have fallen short and highlight implications for course design, interventions, and institutional policies to better support students’ interest development.

  • Generating Planning Feedback for Open-Ended Programming Exercises with LLMs

    Lecture notes in computer science · 2025-01-01 · 1 citations

    book-chapterSenior author
  • Reexamining Learning Curve Analysis in Programming Education: The Value of Many Small Problems

    2024-05-25 · 1 citations

    preprintOpen accessSenior author

    [to appear in EDM 2024] Analyzing which skills students develop in introductory programming education is an important question for the computer science education community. Knowledge components, units of knowledge that can be measured by performance on a set of tasks, can be used to identify key concepts and skills in a given domain. While knowledge components in other domains have been successfully identified using learning curve analysis, such attempts on students' open-ended code-writing assignments have not been very successful. To understand why, we replicated a previously proposed approach, which uses abstract syntax tree (AST) nodes as knowledge components, on data collected across multiple semesters of a large-scale introductory programming course. Findings from our replication show that, given sufficient measurement opportunities, AST nodes can provide a viable knowledge component model for learning curve analysis to understand student learning, contrary to earlier findings. In addition to providing evidence for the validity of AST-based knowledge components, we recommend a set of conditions for programming courses that enable knowledge components generated using AST nodes to be successfully observed using learning curve analysis. This supports the integration of learning curves as a tool in any environment collecting code-writing data to be used for modifying the curriculum based on student performance and monitoring the development of skills related to language elements.

  • Challenges and Solutions for Teaching Decomposition and Planning Skills in CS1

    2024-12-02 · 1 citations

    article

    The task of decomposing a problem into sub-problems to build a solution, also formalized as planning in prior work, is a key skill for programming expertise. Improving the decomposition and planning skills of novices is shown to be a challenging goal for educators. Moreover, decomposing complex projects into smaller subtasks is an increasingly relevant skill with rapid developments in tools like large language models (LLMs). While there are many aspects of planning, one skill consistently observed in studies with experts is the ability to identify subtasks that can be solved via common code patterns. To support students in acquiring these skills, many researchers have explored explicit instruction about a set of common patterns in programs (i.e. programming plans). However, recent work implies that students may need additional support to fully benefit from such interventions. This panel aims to bring computing education researchers together to discuss the main challenges around teaching decomposition and planning using common patterns, the crucial factors for designing instruction for teaching these concepts, and the impact evolving technology like LLMs can have on these developments.

  • Implementation of Split Deadlines in a Large CS1 Course

    2024-03-07

    articleOpen accessSenior author

    Office hour utilization in computer science courses can spike near deadlines, producing long wait times, frustrated students, and over-worked staff. To address this problem, a large CS1 course implemented a split deadlines policy. Students were randomly divided into two groups with staggered release and due dates. Each group had the same amount of time to complete assignments, but the number of students with each due date was reduced by half. Our study evaluates the effectiveness of this policy. We measure office hour utilization and staff efficiency near deadlines, examine the policy's impact on student performance, and investigate student perception of the policy's fairness and effectiveness. Overall we found that the split deadline policy increased office hour efficiency, resulted in no significant difference in performance between groups, and was considered fair and effective by most students. Our experience report includes reflections and student feedback indicating how to implement and further improve similar policies.

Frequent coauthors

Education

  • PhD, Information, School of Information

    University of Michigan

    2020
  • MS, Human-Centered Computing, School of Interactive Computing

    Georgia Institute of Technology

    2018
  • BS Computer Science, Molecular and Cellular Biology, Computer Science, Molecular and Cellular Biology

    The University of Arizona

    2013

Awards & honors

  • Carle Illinois College of Medicine Professorships, Awards, a…
  • Resume-aware match score
  • Save to shortlist
  • AI-drafted outreach

See your match with Kelly Cunningham

PhdFit ranks faculty by your research interests, methods, and publications — grounded in their actual work, not templates.

  • Free to start
  • No credit card
  • 30-second signup