We identify the principles involved in designing effective programming assignments for CS1/CS2. Through a case study of a particularly successful recursion assignment, we establish several prerequisites that must be present in the foundation of a potential assignment and discuss techniques for engineering exceptional assignments through changes to their more malleable components.
/lp/association-for-computing-machinery/the-quest-for-excellence-in-designing-cs1-cs2-assignments-07J6qqu0MT