A story-telling approach for a software engineering course design
ITiCSE '09 Proceedings of the 14th annual ACM SIGCSE conference on Innovation and technology in computer science education
Object-Oriented Modeling of Object-Oriented Concepts
ISSEP '10 Proceedings of the 4th International Conference on Informatics in Secondary Schools - Evolution and Perspectives: Teaching Fundamentals Concepts of Informatics
AGUIA/J: a tool for interactive experimentation of objects
Proceedings of the 16th annual joint conference on Innovation and technology in computer science education
Exploratory homeworks: an active learning tool for textbook reading
Proceedings of the ninth annual international conference on International computing education research
Learning to teach computer science: the need for a methods course
Communications of the ACM
International Journal of Technology Enhanced Learning
Hi-index | 0.02 |
This state-of-the-art survey, reflecting on the teaching of programming, has been written by a group of primarily Scandinavian researchers and educators with special interest and experience in the subject of programming. The 14 chapters - contributed by 24 authors - present practical experience gathered in the process of teaching programming and associated with computing education research work. Special emphasis is placed on practical advice and concrete suggestions. The authors are all members of the Scandinavian Pedagogy of Programming Network (SPoP), and bring together a diverse body of experiences from the Nordic countries. The 14 chapters of the book have been carefully written and edited to present 4 coherent units on issues in introductory programming courses, object-oriented programming, teaching software engineering issues, and assessment. Each of these individual parts has its own detailed introduction. The topics addressed span a wide range of problems and solutions associated with the teaching of programming such as introductory programming courses, exposition of the programming process, apprentice-based learning, functional programming first, problem-based learning, the use of on-line tutorials, object-oriented programming and Java, the BlueJ environment to introduce programming, model-driven programming as opposed to the prevailing language-driven approach, teaching software engineering, testing, extreme programming, frameworks, feedback and assessment, active learning, technology-based individual feedback, and mini project programming exams.