Programming web-course analysis: How to introduce computer programming?

Nowadays, computer programming and logical thinking skills have been proposed as a fundamental knowledge, even to young learners. On one hand, in undergraduate STEM (Science, Technology, Engineering and Math) courses, the first contact of students with the logic of programming usually results in high failure rates. The literature and experiments conducted by the authors point out that this occurs regardless the adopted programming language. On the other hand, the literature presents some positive results when the paradigm used to introduce the subject is Visual Programming (VP), where the learners use icons to build their programs. This approach is successful even with young learners. In this context, a relevant question is whether, and how, the Visual Programming can help learners to understand a traditional textual programming language. The proposal of this work is to study differences between visual and traditional programming by analyzing the mental workload of using both paradigms during the introduction of algorithms and basic concepts of programming in the context of an online course of introductory programming. In order to perform such analysis, we adopted the NASA TLX protocol.

[1]  Michael Kölling,et al.  The Greenfoot Programming Environment , 2010, TOCE.

[2]  Martin C. Carlisle,et al.  Raptor: a visual programming environment for teaching object-oriented programming , 2009 .

[3]  Leila Maria Araújo Santos A inserção de um agente conversacional animado em um ambiente virtual de aprendizagem a partir da teoria da carga cognitiva , 2010 .

[4]  Christopher D. Hundhausen,et al.  Can Direct Manipulation Lower the Barriers to Programming and Promote Positive Transfer to Textual Programming? An Experimental Study , 2006, Visual Languages and Human-Centric Computing (VL/HCC'06).

[5]  Escola Politécnica,et al.  A Domain Engineering for Interactive Learning , 2012 .

[6]  Yoav Bergner,et al.  Who does what in a massive open online course? , 2014, Commun. ACM.

[7]  Randy Pausch,et al.  Alice: a 3-D tool for introductory programming concepts , 2000 .

[8]  Leônidas de Oliveira Brandão,et al.  A domain engineering for interactive learning modules , 2012 .

[9]  Patricia Alves Rodrigues,et al.  Interactive assignment: A Moodle component to enrich the learning process , 2010, 2010 IEEE Frontiers in Education Conference (FIE).

[10]  John Maloney,et al.  The Scratch Programming Language and Environment , 2010, TOCE.

[11]  Danilo L. Dalmon,et al.  Uma Linha de Produto de Software para Módulos de Aprendizagem Interativa , 2012 .

[12]  Leônidas de Oliveira Brandão,et al.  A system to help teaching and learning algorithms , 2012, 2012 Frontiers in Education Conference Proceedings.

[13]  Brad A. Myers,et al.  Taxonomies of visual programming and program visualization , 1990, J. Vis. Lang. Comput..

[14]  S. Hart,et al.  Development of NASA-TLX (Task Load Index): Results of Empirical and Theoretical Research , 1988 .