Tuesday 12pm, 31 January 2017


Writing Reusable Code Feedback at Scale with Mixed-Initiative Program Synthesis || Visualize: A Training Device for Cervical Cancer Screening

Elena Glassman, Andrew Head, Julia Kramer

Post-doc, PhD Students - UC Berkeley


Writing Reusable Code Feedback at Scale with Mixed-Initiative Program Synthesis

In large classes, teacher feedback on individual student coding mistakes is often infeasible. Program synthesis techniques can generate potential fixes for student code, as well as hints about them. However, these fully automatic approaches lack a teacher’s deep domain knowledge and can generate technically correct but subjectively bad fixes. We contribute a new mixed-initiative approach which combines a teacher’s expertise with program synthesis techniques that learn code transformations from examples. In the MistakeBrowser system, transformations are learned from examples of students’ own bug fixes. In contrast, the FixPropagator system interactively learns transformations from the teacher, as they fix bugs in student code. The teacher adds domain knowledge in the form of feedback and hints for each transformation. Feedback can be returned to the original students and can also be used for future students whose buggy solutions can be fixed with the same transformation. Two studies suggest that this approach helps teachers better understand student bugs and provide automatically reusable feedback to a larger number of students.

Andrew Head is a PhD student at the Berkeley Institute of Design, advised by Björn Hartmann and Marti Hearst. His research focuses on new tools to help programmers share knowledge. He has been awarded an NDSEG Fellowship and his work has been nominated for a best paper award at VL/HCC.
Elena Glassman is an EECS postdoctoral researcher at the Berkeley Institute of Design, advised by Björn Hartmann and Marti Hearst. She earned her EECS PhD at MIT CSAIL in August 2016, where she created scalable systems that help teach programming and hardware design to thousands of students at once. Prior to entering the field of human-computer interaction, she earned her M.Eng. in the MIT CSAIL Robot Locomotion Group. She has also been a visiting researcher at the Stanford Biomimetics and Dextrous Manipulation Lab and a summer research intern at both Google and Microsoft Research, working on systems that help people teach and learn. She was awarded the Intel Foundation Young Scientist Award, both the NSF and NDSEG graduate fellowships, the MIT EECS Oral Master’s Thesis Presentation Award, a Best of CHI Honorable Mention, and the MIT Amar Bose Teaching Fellowship for innovation in teaching methods.

Visualize: A Training Device for Cervical Cancer Screening

Every year, 275,000 women die of cervical cancer and 80% of these deaths occur in low and lower-middle income countries. Cervical cancer is highly preventable, but less than 5 percent of women in Ghana have ever been screened. The Pap smear, which is the “gold standard” technique to screen for cervical cancer, is highly effective yet expensive and often inaccessible. Visualize is a training device that aims to teach midwives how to screen for cervical cancer using an alternative, accessible, and less expensive screening technique called “visual inspection with acetic acid". This talk will go through Julia and her team's design process, including their fieldwork in Ghana and their continued iterations with stakeholders in the Ghanaian health system, to create and implement the Visualize training device.
Julia Kramer is a PhD student in mechanical engineering at Berkeley. Her research focuses on the role of design in social change and looks at the intersections of ethnography, policy, engineering, and design. Julia and her team started Visualize in 2013 at the University of Michigan and have worked with midwives and doctors in Ghana to understand, create, and test a training device to support midwifery education in Ghana.