Syllabus
9.19
Course Overview
9.26
No class
10.3
Guest lecture from JetBrain Research
10.10
Interactive Programming Paradigms (1)
- Visual Debugging - J. Wei, S. Ebner 
- Paper: Python Tutor 
 
- Structure Editors - F. Mantovani, F. Miloglyadov 
- Paper: Hazelnut 
 
10.17
Interactive Programming Paradigms (2)
- Programming by Demonstration - F. Miloglyadov, F. Mantovani 
- Paper: Helena 
 
- Direct Manipulation - A. Zank, J. Konrath 
- Paper: Sketch-n-Sketch 
 
10.24
Interactive Programming Paradigms (3)
- Live Programming - P. Trachsel, P. Risold 
- Paper: Snippy 
 
- Literate Programming - A. Boyle, T. Nonnenmacher 
- Paper: CWEB 
 
10.31
Programming with Data
- Programming Interactive Visualization - P. Risold, P. Trachsel 
- Paper: B2 
 
11.7
Collaborative and Inclusive Programming (1)
- Version Management - R. Chan, Z. Ma 
- Paper: Code Gathering 
 
- Accessible Programming - J. Widmer, R. Chan 
- Paper: Code Talk 
 
11.14
Collaborative and Inclusive Programming (2)
- Developer Communities - J. Konrath, S. Bohl 
- Paper: "We Don't Do That Here" 
 
- Communicating and Presenting Code - T. Nonnenmacher, A. Zank 
- Paper: Meta-Manager 
 
11.21
Learners (1)
- Low Code Approach for Teaching Programming - A. Ribera, X. Su 
- Paper: Scratch 
 
- Programming Tutorials and Interactive Textbooks - S. Ebner, S. Pfisterer 
- Paper: Colaroid 
 
11.28
Learners (2)
- Educational Games for Programming - Z. Ma, J. Widmer 
- Paper: Bots&Frames 
 
- Scaling Feedback for Programming Learners - X. Su, J. Wei 
- Paper: VizProg 
 
12.5
The Future of Programming
- AI-Assisted Programming - S. Bohl, A. Ribera 
- Paper: Abstraction Gap 
 
- Mixed Initiative Programming - S. Pfisterer, A. Boyle 
- Paper: ChainForge 
 
12.12
Guest Lecture from Adobe AEM Team
12.19
No class
Students will work on the blog post
Last updated