The case for case studies of programming problems
Communications of the ACM
Michael J. Clancy
Combining Smart Web-based Learning Environments with Teaching and Learning Analytics to Support Reflection on Project-based Programming Education