This research area focuses on:
- Learning processes of computer science concepts in general and, in particular, the theoretical framework entitled reducing abstraction, originally developed in my Ph.D. dissertation.
- Computer science teacher preparation: The Methods of Teaching Computer Science course, practicum, mentoring,
- Teaching of human (cognitive and social) aspects of software engineering in general and agile software development in particular.