A Learner-Centered Approach to Teaching Programming

Completion Date: 

Learning to program is difficult, and of particular challenge to an audience of artists, designers and educators. These learners may have a limited background in mathematics and programming logic and also vastly different motivations from a student majoring in computer science. Yet the pedagogy we use to teach them programming is the same as for everyone.

While traditional programming languages and environments are powerful in their capabilities to address a variety of programming needs, they are often ill suited to teaching programming to beginners because of their complexity and rigidity of syntax.

So what is the best approach to teaching programming to such an audience? What combination of pedagogy and tools best responds to their particular needs?

This thesis proposes a learner-centered approach to teaching programming - an approach that combines the use of visual representations for explaining abstract programming elements, and a thoughtfully designed interactive learning environment for working with these elements and verifying a student's understanding.

By tying the abstract program logic to its more tangible visual output within the setting of an interactive visual learning environment, the learner-centered approach tries to make the process of learning how to program more engaging, intuitive, concrete, and ideally, more successful.

Project Gallery: 

Project Keywords:
Login | The Dynamic Media Institute and Massachusetts College of Art and Design are trademarks and all contents of this site are Copyright 2005 - 2012 unless otherwise noted. Writings and projects are property of their respective authors. Reproduction in whole or in part is prohibited without prior consent.