Affiliate Position
- Adjunct Professor, University of Washington, Paul G. Allen School of Computer Science & Engineering
Specializations
- Critical Computing
- Design Education
- Social, Ethical, and Human Aspects of Software Engineering
Research Areas
Courses
- - Research Studio
Biography
Due to federal grant terminations, I am not recruiting doctoral students for 2026-27.
Amy studies equitable, liberatory learning about computing and information, in schools and beyond, drawing from human-computer interaction, computing education, software engineering, programming languages, learning sciences, behavioral sciences, sociology, and more. She is a Professor and Associate Dean for Academics at the University of Washington Information School, with a courtesy appointment in Computer Science & Engineering.
Education
- Ph D, Human-Computer Interaction, Carnegie Mellon University, 2008
- BS, Computer Science, Psychology, Oregon State University, 2002
Awards
- Best Paper - ACM Technical Symposium on Computer Science Education (SIGCSE), 2024
- Distinguished Member - Association for Computing Machinery, 2024
- Most Influential Paper - IEEE Transactions on Software Engineering, 2024
- Best Paper - ACM International Computing Education Research Conference (ICER), 2023
- Best Paper - ACM/IEEE International Conference on Software Engineering (ICSE), 2023
- Marsha Landolt Distinguished Graduate Mentor Award, Honorable Mention - University of Washington, 2021
- ACM Senior Member - Association for Computing Machinery, 2020
- Presidential Entrepreneurial Faculty Fellow - University of Washington, 2014
- Most Influential Paper Award - IEEE Symposium on Visual Languages and Human-Centric Computing, 2013
- National Science Foundation CAREER Award - NSF, 2010
- SIGCHI Academy - SIGCHI, 2022
Memberships
- Association for Computing Machinery
Publications and Contributions
- 
        Conference Short Paper"There Will Always be a Yes and No Side": Facilitating Ethical Sensemaking Around Technology with Teens (2024)
- 
        Conference PaperCulture-centric computational embroidery (2024)ACM Technical Symposium on Computer Science Education, Experience Report Track, 1(Unknown Issue), pp. 673-679
- 
        Conference PaperExploring identity through computing integration in a Spanish language and literature class (2024)IEEE Conference on Research in Equity and Sustained Participation in Engineering, Computing, and Technology (RESPECT)
- 
        Conference PaperExploring the Impact of Assessment Policies on Marginalized Students' Experiences in Post-Secondary Programming Courses (2024)Proceedings of the 2024 ACM Conference on International Computing Education Research, 1(Unknown Issue), pp. 233-245
- 
        Journal Article, Professional JournalFactors Influencing the Social Help-Seeking Behavior of Introductory Programming Students in a Competitive University Environment (2024)ACM Transactions on Computing Education, 24(1), pp. 1-27
- 
        Journal Article, Professional JournalHow Economically-Marginalized Adolescents of Color Negotiate Critical Pedagogy in a Computing Classroom (2024)ACM Transactions on Computing Education, 25(1), pp. 1-29
- 
        Conference PaperIntegrating Philosophy Teaching Perspectives to Foster Adolescents' Ethical Sensemaking of Computing Technologies (2024)ACM International Computing Education Research Conference (ICER), 1(Unknown Issue), pp. 502-516
- 
        Conference Workshop Paper(2024)Proceedings of the 8th Educational Data Mining in Computer Science Education (CSEDM) Workshop
- 
        Journal Article, Professional JournalNeurodivergent Legitimacy in Computing Spaces (2024)ACM Transactions on Computing Education (TOCE), 4(4), pp. 1-28
- 
        Journal Article, Professional JournalRecruiting Practices in Informal CS Learning (2024)ACM Transactions on Computing Education, 24(4), pp. 1-29
- 
        Book Editor, Scholarly(2024)Editors: Alannah Oleson, Amy J. Ko, Richard Ladner
- 
        Conference Paper"A field where you will be accepted": Belonging in student and TA interactions in post-secondary CS education (2023)ACM International Computing Education Research Conference (ICER)
- 
        Journal Article, Academic Journal"Taught to be automata": Examining the departmental role in shaping initial career choices of computing students (2023)Computer Science Education
- 
        Conference PaperA qualitative study on the implementation design decisions of developers (2023)ACM/IEEE International Conference on Software Engineering (ICSE)
- 
        Book, Scholarly-New(2023)
- 
        Book, Scholarly-New(2023)
- 
        Conference PaperDeveloping novice programmers' self-regulation skills with code replays (2023)ACM International Computing Education Research Conference (ICER)
- 
        Conference PaperFunds of Knowledge Used by Adolescents of Color in Scaffolded Sensemaking around Algorithmic Fairness (2023)ACM International Computing Education Research
- 
        Conference PaperNavigating a blackbox: Students' experiences and perceptions of automated hiring (2023)ACM International Computing Education Research Conference (ICER)
- 
        Book, Chapter in Scholarly Book-New(2023)Critically Conscious Computing: Methods for Secondary Education
- 
        Conference PaperProposing, preparing, and teaching an equity- and justice - centered secondary pre-service CS teacher education program (2023)ACM Technical Symposium on Computer Science Education (SIGCSE) Research Track
- 
        Conference Proceeding(2023)Proceedings of the 22nd Annual ACM Interaction Design and Children Conference
- 
        Journal Article, Professional JournalTeaching Inclusive Design Skills with the CIDER Assumption Elicitation Technique (2023)ACM Transactions on Computer-Human Interaction
- 
        Journal Article, Academic JournalTeaching inclusive design skills with the CIDER assumption elicitation technique (2023)ACM Transactions on Computer-Human Interaction
- 
        Book, Scholarly-New(2023)
- 
        Conference PaperWhat do you really mean by rigor? Deconstructing the definition in CS Teaching (2023)American Education Research Association
- 
        Conference Paper"A Key to Reducing Inequities in Like, AI, is by Reducing Inequities Everywhere First" Emerging Critical Consciousness in a Co-Constructed Secondary CS Classroom (2022)Proceedings of the 53rd ACM Technical Symposium on Computer Science Education
- 
        Conference Paper"I would be afraid to be a bad CS teacher:" Factors influencing participation in pre-service secondary CS teacher education (2022)ACM International Computing Education Research Conference (ICER)
- 
        Conference PaperA Decade of Demographics in Computing Education Research: A Critical Review of Trends in Collection, Reporting, and Use (2022)Proceedings of the 2022 ACM Conference on International Computing Education Research
- 
        Conference PaperA Decade of Demographics in Computing Education Research: A Critical Review of Trends in Collection, Reporting, and Use (2022)ACM Conference on International Computing Education Research (ICER) 2022
- 
        Conference PaperAn Exploratory Study of Sharing Strategic Programming Knowledge (2022)ACM SIGCHI Conference on Human Factors in Computing Systems (CHI)
- 
        Book, Chapter in Scholarly Book-New(2022)Critically Conscious Computing: Methods for Secondary Education
- 
        Conference PaperFamily as a Third Space for AI Literacies: How Do Children and Parents Learn about AI Together? (2022)ACM SIGCHI Conference on Human Factors in Computing Systems (CHI)
- 
        Journal Article, Academic JournalHow families design and program games: A qualitative analysis of a 4-week online in-home study with a cellular-automata programming platform (2022)ACM Interaction Design for Children
- 
        Journal Article, Academic JournalSurfacing Equity Issues in Large Computing Courses with Peer-Ranked, Demographically-Labeled Student Feedback (2022)Proceedings of the ACM on Human-Computer Interaction (CSCW 2022)
- 
        Conference PaperThe House of Computing: Integrating Counternarratives into Computer Systems Education (2022)ACM Technical Symposium on Computer Science Education (SIGCSE), Experience Report Track
- 
        Journal Article, Professional JournalThe House of Computing: Integrating Counternarratives into Computer Systems Education (2022)Proceedings of the 53rd ACM Technical Symposium on Computer Science Education, pp. 279-285
- 
        Conference PaperThe House of Computing: Integrating Counternarratives into Computer Systems Education (2022)ACM Technical Symposium on Computer Science Education (SIGCSE), Experience Report Track
- 
        Conference PaperThe Landscape of Teaching Resources for AI Education (2022)ACM Conference on Innovation and Technology in Computer Science Education
- 
        Conference Paper“A key to reducing inequities in like, AI, is by reducing inequities everywhere: first”: Emerging Critical Consciousness in a Co-Constructed Secondary CS Classroom (2022)ACM Technical Symposium on Computer Science Education (SIGCSE), Research Track
- 
        Journal Article, Academic Journal(2021)ACM Transactions on Computing Education, 21(1), pp. 1-32, ISBN/ISSN: 1946-6226
- 
        Book, Scholarly-New(2021)
- 
        Conference PaperDomain Experts’ Interpretations of Assessment Bias in a Scaled, Online Computer Science Curriculum (2021)Eighth ACM Conference on Learning @ Scale (L@S), 29(Unknown Issue)
- 
        Conference PaperFalx: Synthesis-Powered Visualization Authoring (2021)Proceedings of the 2021 CHI Conference on Human Factors in Computing Systems
- 
        Conference PaperHow do children's perceptions of machine intelligence change when training & coding smart programs? (2021)ACM Interaction Design and Children Conference (IDC 2021)
- 
        Conference PaperHowToo: A Platform for Sharing, Finding, and Using Programming Strategies (2021)IEEE Symposium on Visual Languages and Human- Centered Computing (VL/HCC)
- 
        Conference PaperInvestigating Item Bias in a CS1 exam with Differential Item Functioning (2021)Proceedings of the 52nd ACM Technical Symposium on Computer Science Education
- 
        Journal Article, Academic JournalTowards Understanding the Effective Design of Automated Formative Feedback for Programming Assignments (2021)Computer Science Education
- 
        Conference PaperComputing Students' Learning Difficulties in HCI Education (2020)Proceedings of the 38th annual ACM conference on human factors in computing systems (CHI '20)
- 
        Journal Article, Academic JournalExplicit Programming Strategies (2020)Empirical Software Engineering, 25(Unknown Issue), pp. 2416–2449
- 
        Conference PaperInvestigating Novices' In Situ Reflections on Their Programming Process (2020)Proceedings of the 51st ACM Technical Symposium on Computer Science Education (SIGCSE '20), pp. 149-155
- 
        Conference PaperInvestigating Novices' In Situ Reflections on Their Programming Process (2020)SIGCSE
- 
        Journal Article, Academic JournalIt Is Time for More Critical CS Education (2020)Communications of the ACM, 63(11), pp. 31-33, ISBN/ISSN: 0001-0782
- 
        Magazine/Trade PublicationIt's time for more Critical CS Education (2020)Communications of the ACM, pp. 31 - 33
- 
        Conference PaperLearning Machine Learning with Personal Data Helps Stakeholders Ground Advocacy Arguments in Model Mechanics (2020)Proceedings of the 2020 ACM Conference on International Computing Education Research (ICER)
- 
        Journal Article, Academic JournalOn the Role of Design in K-12 Computing Education (2020)ACM Transactions on Computing Education, 21(1)
- 
        Conference PaperScout: Rapid Exploration of Interface Layout Alternatives through High-Level Design Constraints (2020)Proceedings of the 38th annual ACM conference on human factors in computing systems (CHI '20)
- 
        Conference PaperThe Effect of Informing Agency in Self-Directed Online Learning Environments (2020)Learning @ Scale
- 
        Conference Workshop PaperToward the Development of HCI Pedagogical Content Knowledge (2020)ACM SIGCHI Symposium on HCI Education (EduCHI 2020)
- 
        Book, Chapter in Scholarly Book-NewA Study Design Design Process (2019)Cambridge Handbook on Computing Education Research, pp. 81-101
- 
        Journal Article, Academic JournalA Systematic Investigation of Replications in Computing Education Research (2019)ACM Transactions on Computing Education, 19(4)
- 
        Journal Article, Academic JournalA Theory of Instruction for Introductory Programming Skills (2019)Computer Science Education, pp. 205-253
- 
        Journal Article, Academic JournalA theory of instruction for introductory programming skills (2019)Computer Science Education, 29(2-3), pp. 205-253, ISBN/ISSN: 0899-3408
- 
        Conference PaperAn Item Response Theory Evaluation of a Language-Independent CS1 Knowledge Assessment (2019)SIGCSE, pp. 699--705
- 
        Conference PaperAn Item Response Theory Evaluation of a Language-Independent CS1 Knowledge Assessment (2019)Proceedings of the 50th ACM Technical Symposium on Computer Science Education (SIGCSE '19), pp. 699-705
- 
        Blog post(2019)Bits and Behavior
- 
        Book, Chapter in Scholarly Book-NewHuman-Centered Methods to Boost Productivity (2019)Rethinking Productivity in Software Engineering, pp. 147-157, ISBN/ISSN: 978-1-4842-4221-6
- 
        Book, Chapter in Scholarly Book-NewIndividual, Team, Organization, and Market: Four Lenses of Productivity (2019)Rethinking Productivity in Software Engineering, pp. 49-55, ISBN/ISSN: 978-1-4842-4221-6
- 
        Book, Chapter in Scholarly Book-NewLearning Outside the Classroom (2019)Cambridge Handbook on Computing Education Research, pp. 749-772
- 
        Conference PaperTeaching Accessibility: A Design Exploration of Faculty Professional Development at Scale (2019)Proceedings of the 50th ACM Technical Symposium on Computer Science Education (SIGCSE '19), pp. 983-989
- 
        Conference PaperTeaching Explicit Programming Strategies to Adolescents (2019)Proceedings of the 50th ACM Technical Symposium on Computer Science Education (SIGCSE '19), pp. 469-475
- 
        Conference PaperTeaching accessibility: A design exploration of faculty professional development at scale (2019)SIGCSE 2019, Proceedings of the 50th ACM Technical Symposium on Computer Science Education
- 
        Book, Chapter in Scholarly Book-NewTools and Environments (2019)Cambridge Handbook on Computing Education Research, pp. 639-662
- 
        Conference PaperTowards Validity for a Formative Assessment for Language-Specific Program Tracing Skills (2019)Proceedings of the 19th ACM Koli Calling International Conference on Computing Education Research (Koli Calling '19), pp. 1-10
- 
        Conference PaperTowards a validated formative assessment for language-specific program tracing skills (2019)Koli Calling
- 
        Journal Article, Academic JournalWhat Distinguishes Great Software Engineers? (2019)Empirical Software Engineering, pp. 322–352
- 
        Book, Chapter in Scholarly Book-NewWhy Not to Measure Productivity (2019)Rethinking Productivity in Software Engineering, pp. 21-26, ISBN/ISSN: 978-1-4842-4221-6
- 
        Conference PaperAn Explicit Strategy to Scaffold Novice Program Tracing (2018)SIGCSE 2018
- 
        Conference Paper(2018)Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems, pp. 1-13
- 
        Conference PaperEmpowering families facing English literacy challenges to jointly engage in computer programming (2018)Proceedings of SIGCHI Human Factors in Computing Systems (CHI 2018)
- 
        Conference PaperExperiences of Computer Science Transfer Students (2018)ACM International Computing Education Research Conference (ICER)
- 
        Blog Post(2018)Medium
- 
        Conference PaperInformal computing mentoring of low-income adolescents: Relationships, roles, qualities, and impact (2018)Proceedings of SIGCSE 2018
- 
        Conference PaperOn Use of Theory in Computing Education Research (2018)ACM International Computing Education Research Conference (ICER)
- 
        Journal Article, Professional JournalPedagogical Content Knowledge for Teaching Inclusive Design (2018)ACM International Computing Education Research Conference
- 
        Conference PaperPedagogical Content Knowledge for Teaching Inclusive Design (2018)ACM International Computing Education Research Conference (ICER)
- 
        Conference PaperRewire: Interface Design Assistance From Examples (2018)2018 ACM CHI Conference on Human Factors in Computing Systems
- 
        Blog Post(2018)Medium
- 
        Conference PaperUndergraduate Teaching Assistants’ Concerns in Creating Inclusive Technology Courses (2018)RESPECT 2018: 3rd Annual Conference For Research On Equity & Sustained Participation In Computing Engineering, & Technology
- 
        Conference PaperWho Teaches Accessibility? A Survey of U.S. Computing Faculty (2018)SIGCSE 2018
- 
        Conference PaperA Three-Year Participant Observation of Software Startup Software Evolution (2017)International Conference on Software Engineering (ICSE), Software Engineering in Practice
- 
        Conference Poster(2017)SIGCSE '17: Proceedings of the 48th ACM Technical Symposium on Computing Science Education, ISBN/ISSN: 978-1-4503-4698-6
- 
        Conference PaperBarriers Faced by Coding Bootcamp Students (2017)13th Annual ACM International Computing Education Research (ICER) Conference
- 
        Conference Paper(2017)Proceedings of the 2017 ACM Conference on International Computing Education Research, pp. 245-253
- 
        Conference PaperBarriers faced by coding bootcamp participants (2017)ACM International Computing Education Research Conference
- 
        Conference PaperComprehension First: Evaluating a Novel Pedagogy and Tutoring System for Program Tracing in CS1 (2017)13th Annual ACM International Computing Education Research (ICER) Conference
- 
        Conference Paper(2017)International Computing Education Research (ICER)
- 
        Conference PaperComprehension first: evaluating a novel pedagogy and tutoring system for program tracing in CS1 (2017)ACM International Computing Education Research Conference
- 
        Conference PaperComputing mentorship in a software boomtown: relationships to adolescent interest and beliefs (2017)ACM International Computing Education Research Conference (ICER)
- 
        Conference PaperCross-Disciplinary Perspectives on Collaborations with Software Engineers (2017)International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE)
- 
        Journal Article, Professional JournalGeneral Principles for a Generalized Idea Garden (2017)Journal of Visual Languages & Computing
- 
        Journal Article, Academic JournalGeneral Principles for a Generalized Idea Garden (2017)Journal of Visual Languages & Computing, 39(Unknown Issue), pp. 51-65
- 
        Conference PaperGenie: Input Retargeting on the Web through Command Reverse Engineering (2017)ACM Conference on Human Factors in Computing Systems (CHI)
- 
        Conference Workshop PaperModeling Programming Problem Solving Through Interactive Worked Examples (2017)Workshop on Evaluation and Usability of Programming Languages and Tools (PLATEAU)
- 
        Conference PaperPredicting Abandonment in Online Coding Tutorials (2017)IEEE Symposium on Visual Languages and Human-Centered Computing
- 
        Magazine/Trade PublicationAccessComputing Promotes Teaching Accessibility (2016)ACM Inroads, 7(4), pp. 65-68
- 
        Magazine/Trade Publication(2016)IEEE Computer, 49(7), pp. 44-52
- 
        Conference PaperProgramming, Problem Solving, and Self-Awareness: Effects of Explicit Guidance (2016)ACM Conference on Human Factors in Computing Systems (CHI)
- 
        Conference PaperProgramming, Problem Solving, and Self-Awareness: Effects of Explicit Guidance (2016)ACM Conference on Human Factors in Computing Systems
- 
        Conference PaperThe Role of Self-Regulation in Programming Problem Solving Process and Success (2016)ACM International Computing Education Research Conference (ICER)
- 
        Book, Chapter in Scholarly Book-NewThe World is Your Test Suite (2016)Perspectives on Data Science for Software Engineering
- 
        Workshop PaperWhat is a Programming Language, Really? (2016)Proceedings of the 7th International Workshop on Evaluation and Usability of Programming Languages and Tools, pp. 32-33
- 
        Column(2016)The Huffington Post
- 
        Conference PaperComparing the Effectiveness of Online Learning Approaches on CS1 Learning Outcomes (2015)ACM International Computing Education Research Conference
- 
        Conference PaperExplaining Visual Changes in Web Interfaces (2015)UIST - ACM Symposium on User Interface Software and Technology
- 
        Conference PaperFrom User-Centered Design to Adoption-Centered Design: A Case Study of a Research System Becoming a Product (2015)Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI ’15), pp. 1749-1785
- 
        Conference PaperIt's the Principle(s) of the Thing! A Principled Evaluation for a Principled Idea Garden (2015)IEEE Symposium on Visual Languages and Human-Centric Computer (VL/HCC)
- 
        Conference PaperChallenging Stereotypes and Changing Attitudes: The Effect of a Brief Programming Encounter on Adults' Attitudes toward Programming (2014)ACM Symposium on Computer Science Education
- 
        Conference PaperPrinciples of a Debugging-First, Gender-Inclusive, Help-Yourself Puzzle Game for Computing Education (2014)IEEE Conference on Visual Languages and Human-Centric Computing
- 
        Workshop PaperThirty Years of Software Problems in the News (2014)International Workshop on Cooperative and Human Aspects of Software Engineering
- 
        Conference PaperA Multi-Site Field Study of Crowdsourced Contextual Help: Usage and Perspectives of End-Users and Software Teams (2013)ACM Conference on Human Factors in Computing Systems
- 
        Journal Article, Academic JournalA Practical Guide to Controlled Experiments of Software Engineering Tools with Human Participants (2013)Empirical Software Engineering, pp. 1382-3256
- 
        Workshop PaperCrowdsourced Q&A-based Contextual Help for Web Applications: Challenges and Opportunities (2013)CSCW Workshop on Social Media Question Asking
- 
        Conference PaperIn-Game Assessments Increase Novice Programmers’ Engagement and Learning Efficiency (2013)International Computing Education Research Conference
- 
        Conference PaperInteractive Record/Replay for Web Application Debugging (2013)ACM Symposium on User Interface Software and Technology, pp. 473-484
- 
        Conference PaperDesigning for a billion users: A case study of Facebook (2012)ACM Conference on Human Factors in Computing Systems, Extended Abstracts
- 
        Conference PaperInvestigating the Role of Purposeful Goals on Novices' Engagement in a Programming Game (2012)IEEE Symposium on Visual Languages and Human-Centric Computing
- 
        Conference PaperIs this what you meant? Promoting listening on the web with reflect (2012)ACM Conference on Human Factors in Computing Systems
- 
        Conference PaperLemonAid: Selection-based crowdsourced contextual help for web applications (2012)ACM Conference on Human Factors in Computing Systems
- 
        Conference PaperLemonAid: Selection-based, crowdsourced, contextual help retrieval in web applications (2012)ACM Symposium on User Interface Software and Technology
- 
        Conference PaperMining whining in support forums with Frictionary (2012)Extended Abstracts on ACM Conference on Human Factors in Computing Systems
- 
        Conference PaperA case study of post-deployment user feedback triage (2011)International Workshop on Cooperative and Human Aspects of Software Engineering, pp. 1-8
- 
        Conference PaperCharacterizing the differences between pre- and post-release versions of software (2011)International Conference on Software Engineering, pp. 716-725
- 
        Conference PaperDesign, discussion, and dissent in open bug reports (2011)iConference 2011, pp. 106-113
- 
        Conference PaperFeedLack detects missing feedback in web applications (2011)ACM Conference on Human Factors in Computing, pp. 2177-2186
- 
        Conference PaperPersonifying programming tool feedback improves novice programmers' learning (2011)International Computing Education Research Conference, pp. 109-116
- 
        Conference Short PaperPost-deployment usability: A survey of current practices (2011)ACM Conference on Human Factors in Computing Systems, pp. 2243-2246
- 
        Conference Short PaperThe role of conceptual knowledge in API usability (2011)IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 173-176
- 
        Journal Article, Academic JournalThe state of the art in end-user software engineering (2011)ACM Computing Surveys 43, 3, Article 21 (April 2011), pp. 44 pages
- 
        Conference Workshop PaperUsing crowdsourcing in the design of context-sensitive help for web applications (2011)CHI 2011 Workshop on “Crowdsourcing and Human Computation”
- 
        Journal Article, Academic Journal(2011)ACM Transactions on Interactive Intelligent Systems, 1(1)
- 
        Conference PaperCleanroom: Edit-time error detection with the uniqueness heuristic (2010)IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), pp. 7-14
- 
        Journal Article, Professional JournalExtracting and answering why and why not questions about Java program output (2010)ACM Transactions on Software Engineering and Methodology, 20(2)
- 
        Conference PaperGestalt: integrated support for implementation and analysis in machine learning (2010)ACM Symposium on User Interface Software and Technology (UIST 2010), pp. 37-46
- 
        Conference PaperHow power users help and hinder open bug reporting (2010)ACM Conference on Human Factors in Computing Systems (CHI ’10), pp. 2337-2346
- 
        Conference PaperUnderstanding expressions of unwanted behaviors in open bug reporting (2010)IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), pp. 203-206
- 
        Book, Chapter in Non-Scholarly Book-NewUnderstanding software engineering through qualitative methods (2010)Making Software: What Really Works and Why We Believe It, pp. 14
- 
        Conference Paper(2010)Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI ’10), pp. 2337-2346
- 
        Conference PaperAttitudes and self-efficacy in young adults' computing autobiographies (2009)IEEE Symposium on Visual Languages and Human-Centric Computer (VL/HCC), pp. 67-74
- 
        Conference Paper(2009)Proceedings of the 2009 ICSE Workshop on Software Engineering for Computational Science and Engineering, pp. 72-79
- 
        Conference Workshop PaperDesigning software for unfamiliar domains (2009)International Workshop on Cooperative and Human Aspects of Software Engineering
- 
        Conference PaperFinding causes of program output with the Java Whyline (2009)ACM Conference on Human Factors in Computing Systems (CHI), pp. 1569-1578
- 
        Conference PaperFixing the program my computer learned: Barriers for end users, challenges for the machine (2009)Conference on Intelligent User Interfaces (IUI), pp. 187-196
- 
        Conference PaperPast, present and future of programming in HCI (2009)Human-Computer Interaction Consortium
- 
        Journal Article, Professional JournalReflections on the future of iSchools from inspired junior faculty. (2009)interactions, 16(5), pp. 69-71
- 
        Conference PaperAsking and answering questions about the causes of software behaviors (2008)
- 
        Conference PaperDebugging reinvented: Asking and answering why and why not questions about program behavior (2008)International Conference on Software Engineering, pp. 301-310
- 
        Conference PaperDesigners' natural descriptions of interactive behaviors (2008)IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), pp. 185-188
- 
        Conference PaperHow designers design and program interactive behaviors (2008)IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), pp. 177-184
- 
        Conference Workshop PaperSource-level debugging with the Whyline (2008)International Workshop on Cooperative and Human Aspects of Software Engineering, pp. 69-72
- 
        Conference Workshop PaperEnd User Software Engineering (2007)CHI 2007 Special Interest Group Meeting, pp. 2125-2128
- 
        Conference PaperInformation needs in collocated software development teams (2007)International Conference on Software Engineering, pp. 344-353
- 
        Conference PaperLet's go to the whiteboard: How and why software developers draw code (2007)ACM Conference on Human Factors in Computing Systems, pp. 557-566
- 
        Conference PaperA linguistic analysis of how people describe software problems in bug reports (2006)IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 127-134
- 
        Journal Article, Professional Journal(2006)IEEE Transactions on Software Engineering, 32(12), pp. 971 - 987
- 
        Conference PaperAnswering why and why not questions in user interfaces (2006)ACM Conference on Human Factors in Computing Systems, pp. 397-406
- 
        Conference PaperBarista: An implementation framework for enabling new tools, interaction techniques and views for code editors (2006)ACM Conferences on Human Factors in Computing Systems, pp. 387-396
- 
        Conference PaperDebugging by asking questions about program output (2006)International Conference on Software Engineering, pp. 989-992
- 
        Conference PaperDimensions characterizing programming feature usage by information workers (2006)IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 59-62
- 
        Conference Workshop PaperEnd-user programming productivity tools (2006)Institute for Software Research
- 
        Conference Extended AbstractInvited research overview: End-user programming (2006)ACM Conference on Human Factors in Computing Systems, pp. 75-80
- 
        Conference Published VideoThe Crystal framework and editor for answering why and why not questions (2006)ACM Conference on Human Factors in Computing Systems
- 
        Conference Workshop PaperThe role of science in supporting software development (2006)Workshop on Supporting the Social Side of Large-Scale Software Development, pp. 65-69
- 
        Journal Article, Academic JournalA framework and methodology for studying the causes of software errors in programming systems (2005)Journal of Visual Languages and Computing, 16(1), pp. 41-84
- 
        Conference PaperCitrus: A language and toolkit for simplifying the creation of structured editors for code and data (2005)ACM Symposium on User Interface Software and Technology, pp. 3-12
- 
        Conference PaperDesign requirements for more flexible structured editors from a study of programmers' text editing (2005)ACM Conference on Human Factors in Computing Systems, pp. 1557-1560
- 
        Conference PaperEliciting design requirements for maintenance-oriented IDEs: A detailed study of corrective and perfective maintenance Tasks (2005)International Conference on Software Engineering, pp. 126-135
- 
        Conference PaperExamining task engagement in sensor-based statistical models of human interruptibility. (2005)ACM Conferences on Human Factors in Computing Systems, pp. 331-340
- 
        Conference Workshop PaperHuman factors affecting dependability in end-user programming (2005)Workshop on End-User Software Engineering (WEUSE), pp. 1-4
- 
        Technical ReportIdentifying types of end users: Hints from an informal survey (2005)Carnegie Mellon University ISRI Technical Report, no. CMU-HCII-05-101 and Human Computer Interaction Institute Technical Report CMU-ISRI-05-110
- 
        Conference Published VideoThe Citrus language and user interface toolkit. Video figure (2005)ACM Symposium on User Interface Software and Technology
- 
        Conference PaperUsing objects of measurement to detect spreadsheet errors (2005)IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 22-26
- 
        Journal Article, Academic JournalUsing the Cognitive Walkthrough to improve the design of a visual programming experiment (2002)Journal of Visual Languages and Computing, 13(Unknown Issue), pp. 517-544
Presentations
- 
        
          Justice-Centered Educational Programming Languages
          (2024)        
        Harvey Mudd and Pomona College, joint colloquim - Claremont, CA, United States
- 
        
          Liberatory Futures for Computing Literacy
          (2024)        
        NCWIT Summit 2024 - Kansas City, MO, United States
- 
        
          Searching for Justice in Programming Language Design
          (2024)        
        L'Université du Québec à Montréal - Montreal, QC, Canada
- 
        
          Searching for Justice in Programming Language Design
          (2024)        
        Cal State Sonoma - Sonoma, CA, United States
- 
        
          Searching for Justice in Programming Language Design
          (2023)        
        University of Michigan - Michigan
- 
        
          Searching for Justice in Programming Language Design
          (2023)        
        HCI Institute, Carnegie Mellon - Carnegie Mellon
- 
        
          The Promise and Problems of CS for All 
          (2022)        
        Simon Fraser University - British Columbia, Canada
- 
        
          The Promise and Problems of CS for All 
          (2022)        
        CSAIL, MIT - MIT
- 
        
          Capacity, Access, Participation, and Experience in K-12 CS Education
          (2021)        
        IEEE Conference on Research in Equity and Sustained Participation in Engineering, Computing, and Technology (RESPECT) - Virtual
- 
        
          Code, Calculators, Creativity, and the Many Paths to CS Education
          (2021)        
        2021 Washington State Why CS Summit - Virtual
- 
        
          Critical Computing Education
          (2021)        
        Digital Learning Lab, University of California, Irvine - Irvine, CA
- 
        
          Critical Computing Education
          (2021)        
        University of California, Davis, Computer Science, Computing Education Research at Davis Seminar - Davis, CA
- 
        
          Critical Computing Education
          (2021)        
        California Institute of Technology, Computing and Mathematical Sciences, Keller Colloquium - Pasadena, CA
- 
        
          Deconstructing CS Culture
          (2021)        
        IEEE Annual Conference on Research in Equity and Sustained Participation in Engineering, Computing, and Technology (RESPECT) - Virtual
- 
        
          Equity, Justice, and Engineering Education
          (2021)        
        Science, Technology, and Public Policy (STPP) Program, Ford School of Public Policy, University of Michigan - Ann Arbor, MI
- 
        
          MIT EECS Rising Stars careers panel
          (2021)        
        MIT EECS Rising Stars - Cambridge, MA
- 
        
          Programming as Cognition, Programming as Politics
          (2021)        
        University of Colorado Boulder, Institute for Cognitive Science - Boulder, CO
- 
        
          Requirements of Oppression
          (2021)        
        IEEE International Requirements Engineering Conference - Notre Dame, South Bend, USA (Virtual)
- 
        
          The Roots of Inequity in K-12 CS Education
          (2021)        
        Computer Science Teachers Association Conference - Virtual
- 
        
          Women in Science
          (2021)        
        North Central ESD K-12 STEM Education Summit - Virtual
- 
        
          Computing Education: A Critical Time for a Critical Literacy
          (2020)        
        IT University of Copenhagen - Copenhagen, Denmark
- 
        
          Critical Computing Education
          (2020)        
        Carnegie Mellon University, HCI Institute, Seminar Series - Pittsburgh, Pennsylvania
- 
        
          Critical Computing Education
          (2020)        
        University of Pennsylvania, Computer and Information Science, Seminar Series - Philadelphia, Pennslyvania
- 
        
          Critical Computing Education
          (2020)        
        University of Colorado joint Colloqium of the Department of Information Science and College of Media, Communication and Information - Boulder, Colorado
- 
        
          Critical Computing Education
          (2020)        
        University of Virginia, Computer Science Distinguished Speaker Series - Charlottesville, Virginia
- 
        
          CS in Higher Education
          (2020)        
        Microsoft - Redmond, Washington
- 
        
          Studying Programming through Making
          (2020)        
        2020 PL+HCI Swimmer School - Virtual
- 
        
          21st Century Grand Challenges in Computing Education
          (2019)        
        Koli Calling International Conference on Computing Education Research - Koli, Finland
- 
        
          Programming: what it is and how to teach it
          (2019)        
        ETH Zurich, Department of Computer Science, Seminar - Zurich, Switzerland
- 
        
          Empowering families facing English literacy challenges to jointly engage in computer programming
          (2018)        
        Proceedings of SIGCHI Human Factors in Computing Systems (CHI 2018) - Montreal, Quebec, Canada
- 
        
          Informal computing mentoring of low-income adolescents: Relationships, roles, qualities, and impact
          (2018)        
        SIGCSE 2018 - Baltimore, MD
- 
        
          UX + Engineering: Three Years in the Startup Trenches
          (2017)        
        Amazon Stackhouse Talks - Seattle, WA
- 
        
          A Human View of Programming Languages
          (2016)        
        ACM SIGPLAN Conference on Systems, Programming, Languages and Applications: Software for Humanity (SPLASH) - Amsterdam, the Netherlands
- 
        
          Nine Things I Learned in Startup Land
          (2016)        
        DUB Retreat - Seattle, WA
- 
        
          Why Computer Science Departments should Embrace CS Education Research
          (2016)        
        CRA Snowbird (invitation only biennial conference for chairs of departments) - Salt Lake City, UT
- 
        
          What Makes a Great Software Engineer?
          (2015)        
        ACM Learning Center - Seattle, WA
- 
        
          Understanding Software Understanding
          (2013)        
        ABB, Inc. - Raleigh, NC
- 
        
          Defect Detection for the Wayward Web
          (2012)        
        Microsoft - Redmond, WA
- 
        
          Explaining the World of Bits and Behavior
          (2012)        
        DUB Group, University of Washington - Seattle, WA
- 
        
           A case study of post-deployment user feedback triage
          (2011)        
        International Workshop on Cooperative and Human Aspects of Software Engineering - Honolulu, HI
- 
        
          Defect detection for the wayward web
          (2011)        
        Coverity - San Francisco, CA
- 
        
          Defect detection for the wayward web
          (2011)        
        MIT - Cambridge, MA
- 
        
          Defect detection for the wayward web
          (2011)        
        UNC Charlotte - Charlotte, NC
- 
        
          FeedLack Detects Missing Feedback in Web Applications
          (2011)        
        ACM Conference on Human Factors in Computing - Vancouver, BC, Canada
- 
        
          The Role of Conceptual Knowledge in API Usability
          (2011)        
        IEEE Symposium on Visual Languages and Human-Centric Computing - Pittsburgh, PA
- 
        
          Cleanroom: Edit-Time Error Detection
          (2010)        
        Annual Conference, HICSS - Hawaii International Conference on System Sciences (IEEE) - Madrid, Spain
- 
        
          How Power Users Help and Hinder Open Bug Reporting
          (2010)        
        Conference on Human Factors in Computing Systems, SIGCHI - Special Interest Group on Computer-Human Interaction (ACM) - Atlanta, GA
- 
        
          Human Factors in Software Development Tools
          (2010)        
        Dagstuhl on Practical Software Testing, German Government - Dagstuhl, Germany
- 
        
          User Feedback in Software Evolution
          (2010)        
        Symposium on HCI and Software Engineering, IBM Research Labs - Hawthorne, NY
- 
        
          Where HCI and Software Engineering Meet
          (2010)        
        Conference for Software User Assistance, WritersUA - Seattle, WA
- 
        
          Where is the User in Software Evolution?
          (2010)        
        Industry Talk, IBM Research Labs - Hawthorne, NY
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2009)        
        Intel Research - Seattle, WA
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2009)        
        IIT Mumbai - Mumbai, India
- 
        
          Where HCI and Software Engineering Meet
          (2009)        
        iEdge Conference, Information School, University of Washington - Seattle, WA
- 
        
          Where HCI and Software Engineering Meet
          (2009)        
        CHOOSE Forum, Swiss Informatics Society - Bern, Switzerland
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2008)        
        Accenture - Chicago, IL
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2008)        
        Washington University - St. Louis, MO
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2008)        
        SRI International - Menlo Park, CA
- 
        
          Where HCI and Software Engineering Meet
          (2008)        
        DUB Colloquium, University of Washington - Seattle, WA
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2006)        
        Oregon State University - Corvallis, OR
- 
        
          Asking and Answering Questions about the Causes of Software Behavior
          (2006)        
        Industry Talk, IBM Research Labs - Hawthorne, NY
- 
        
          Human-Centered Approaches to Software Engineering Research
          (2006)        
        University of British Columbia - Vancouver, BC, Canada
- 
        
          Information Needs in Software Development Work
          (2006)        
        Microsoft Visual Studio User Experience Group - Redmond, WA
- 
        
          Information Needs in Software Development Work
          (2006)        
        Industry Talk, Microsoft Research - Redmond, WA
- 
        
          User Interface Design in Visual Basic.NET
          (2006)        
        HCI for Technology Executives, Carnegie Mellon University - Pittsburgh, PA

