The craft of software understanding and verification can benefit from technologies that enable evolution toward a true engineering discipline. In current practice, software develo...
The educational content of a technical topic consists, ultimately, of elementary chunks of knowledge. Identifying and classifying such units -- Testable, Reusable Units of Cogniti...
Introductory computer science students rely on a trial and error approach to fixing errors and debugging for too long. Moving to a reflection in action strategy can help students ...
The annual ACM International Collegiate Programming Contest produces a competitive paradigm that is at odds with the pedagogical goals of modern computer science and software engi...
Software engineering courses offer one of many opportunities for providing students with a significant experience in declarative programming. This report discusses some results fr...