Higher Education Research and Development Society of Australasia
Booth (2001) identified three views of computer programming, which we refer to as the "coding", "problem solving", and "social" views. The traditional approach for teaching programming to novices does not explicitly distinguish between these three views. Furthermore, the teaching of novice programming is traditionally objectivist. In our approach to teaching programming, the coding view is taught using an objectivist approach while the social view is taught using a constructivist approach, while the problem solving view is taught using a blend of both approaches.
Keywords: constructivism; objectivism; Hegelian dialectic transcendence