Learnersourcing at Scale to Overcome Expert Blind Spots for Introductory Programming: A Three-Year Deployment Study on the Python Tutor Website | 0 | 0.34 | 2020 |
Theory and practice of string solvers (invited talk abstract) | 1 | 0.35 | 2019 |
Practitioners Teaching Data Science in Industry and Academia - Expectations, Workflows, and Challenges. | 3 | 0.38 | 2019 |
Wait-Learning: Leveraging Wait Time for Second Language Education | 16 | 0.79 | 2015 |
Crowdsourcing step-by-step information extraction to enhance existing how-to videos | 26 | 0.99 | 2014 |
Wait-learning: leveraging conversational dead time for second language education | 8 | 0.65 | 2014 |
Understanding in-video dropouts and interaction peaks inonline lecture videos | 85 | 5.32 | 2014 |
How video production affects student engagement: an empirical study of MOOC videos | 171 | 9.92 | 2014 |
Data-driven interaction techniques for improving navigation of educational videos | 45 | 1.69 | 2014 |
Demographic differences in how students navigate through MOOCs. | 73 | 5.13 | 2014 |
Modeling programming knowledge for mentoring at scale. | 1 | 0.36 | 2014 |
Online python tutor: embeddable web-based program visualization for cs education | 101 | 4.67 | 2013 |
BURRITO: wrapping your lab notebook in computational infrastructure | 27 | 1.49 | 2012 |
HAMPI: A solver for word equations over strings, regular expressions, and context-free grammars | 19 | 0.70 | 2012 |
Characterizing and predicting which bugs get reopened | 62 | 1.55 | 2012 |
Using automatic persistent memoization to facilitate data analysis scripting | 15 | 0.73 | 2011 |
HAMPI: a string solver for testing, analysis and vulnerability detection | 10 | 0.71 | 2011 |
CDE: run any Linux application on-demand without installation | 15 | 0.93 | 2011 |
Sloppy Python: using dynamic analysis to automatically add error tolerance to ad-hoc data processing scripts | 0 | 0.34 | 2011 |
Proactive wrangling: mixed-initiative end-user programming of data transformation scripts | 29 | 0.95 | 2011 |
CDE: using system call interposition to automatically create portable software packages | 25 | 1.91 | 2011 |
"Not my bug!" and other reasons for software bug report reassignments | 53 | 1.89 | 2011 |
Towards practical incremental recomputation for scientists: an implementation for the Python language | 8 | 0.94 | 2010 |
Linux kernel developer responses to static analysis bug reports | 14 | 1.07 | 2009 |
Automatic creation of SQL Injection and cross-site scripting attacks | 133 | 5.70 | 2009 |
Two studies of opportunistic programming: interleaving web foraging, learning, and writing code | 176 | 6.07 | 2009 |
Opportunistic Programming: Writing Code to Prototype, Ideate, and Discover | 22 | 1.44 | 2009 |
HAMPI: a solver for string constraints | 143 | 5.01 | 2009 |
Opportunistic programming: how rapid ideation and prototyping occur in practice | 27 | 2.20 | 2008 |
The Daikon system for dynamic detection of likely invariants | 478 | 14.46 | 2007 |
Inference and enforcement of data structure consistency specifications | 62 | 3.45 | 2006 |
Dynamic inference of abstract types | 34 | 4.18 | 2006 |