Problems of teaching and learning the basics of programming

  • Jesús Insuasti Universidad de Nariño
Keywords: Problems, learning, apprenticeship, programming, Semat.

Abstract

Among the scenarios related to computer science, learning activities associated with computer programming have been recognized with a high degree of difficulty, according to the information revealed in this review article. With this situation, which apparently is quite common at the global level, the causes of this problem are related to certain characteristics that happen inside the classroom. Certain cognitive skills are relevant at the time of learning the basics of programming, such as the ability of abstraction, a good logical-mathematical aptitude and ability to solve algorithmic order problems. In addition, motivators are necessary when faced with the issues associated with programming fundamentals in practice settings. The content of this review involves experiences in different areas of the planet, whose interest aims to uncover the origins of the problem. Finally, a reflection is made in the search for possible solutions, and where the performance space is opened to a new orientation based on the core of the Essence of Semat.

Author Biography

Jesús Insuasti, Universidad de Nariño

Profesor Tiempo Completo del Departamento de Sistemas de la Universidad de Nariño (Pasto– Colombia), Ingeniero de Sistemas–Universidad de Nariño, Master of Science in Internet Systems–The University of Liverpool (Reino Unido). Grupo de investigación GALERAS.NET, correo electrónico: insuasty@udenar.edu.co

Downloads

Download data is not yet available.

Author Biography

Jesús Insuasti, Universidad de Nariño

Profesor Tiempo Completo del Departamento de Sistemas de la Universidad de Nariño (Pasto– Colombia), Ingeniero de Sistemas–Universidad de Nariño, Master of Science in Internet Systems–The University of Liverpool (Reino Unido). Grupo de investigación GALERAS.NET, correo electrónico: insuasty@udenar.edu.co

References

• ACM, IEEE & AIS (2005) Computing Curricula: The Overview Report 2005. En Internet: http://www.acm.org/education/education/curric_vols/CC2005-March06Final.pdf, Retrieved September 28, 2013.

• Ali, A., & Mensch, S. (2008). Issues and challenges for selecting a programming language in a technology update course. Proceedings of the Information Systems Education Conference, Phoenix, AZ 2008. Retrieved September 28, 2013 from http://isedj.org/isecon/2008/020/index.html.

• Anewalt, K.(2008). Making CS0 fun: An active learning approach using toys, games and Alice. Journal of Computing Sciences in Colleges, 23(3), 98-105. September 28, 2013 from ACM Digital Library http://www.acm.org/dl.

• Ben-Ari, M. (1998). Constructivism in computer science education. Proceedings of the 29th SIGCSE Technical. Symposium on Computer Science Education, 257-261.

• Baldwin, L.P., & Kuljis, J. (2001). Learning programming using program visualization techniques. Proceedings of the 34th Hawaii International Conference on System Sciences – 2001. Retrieved September 29, 2013 from IEEE Computer Society Digital Library http://www.computer.org/portal/.

• Blanchette, I., & Dunbar, K. (2000). How analogies are generated: The roles of structural and superficialsimilarity. Memory and Cognition, 28, 108-124.

• Carnegie Mellon University (2013). Alice’s Home Page, An Educational Software that teaches students computer programming in a 3D environment. Retrieved September 28, 2013 from http://www.alice.org/index.php?page=what_is_alice/what_is_alice.

• Carter, J., & Jenkins, T. (2002). Gender differences in programming?. Proceedings of the 7th Annual Conference on Innovation and Technology in Computer Science Education. September 28, 2013 from ACM Digital Library http://www.acm.org/dl.

• Clancy, M., Titteron, N., Ryan, C., Slotta, J., & Linn, M. (2003). New roles for students, instructors, andcomputers in a lab-based introductory programming course. Proceedings of the 34th SIGCSE Technical Symposium on Computer Science Education, 132-136.

• Dann, W., Copper, S., & Pausch, R. (2006). Learning to program with Alice. Upper Saddle River, NJ: Prentice Hall.

• Dunican, E. (2002). Making the analogy: Alternative delivery techniques for first year programming courses. In J. Kuljis, L. Baldwin & R. Scoble (Eds), Proceedings from the 14th Workshop of the Psychology of Programming Interest Group, Brunel University, June 2002, 89-99.

• Guibert, N., Girard, P., & Guittet, L. (2004). Example-based programming: A pertinent visual approach for learning to program. Proceedings of the Working Conference on Advanced Visual Interfaces, 358 – 361. Retrieved September 29, 2013 from ACM Digital Library http://www.acm.org/dl.

• Hartman, W., Nievergelt, J., & Reichert, R. (2001). Kara, finite state machines, and the case for programming as part of general education. Proceedings of the IEEE Symposium on Human-Centric Computing Languages and Environment (HCC01) Retrieved September 29, 2013 from IEEE Computer Society Digital Library http://www.computer.org/portal/.

• Herbert, C. (2007). An introduction to programming with Alice. Boston, Massachusetts: Course Technology.

• Kelleher, C., & Pausch, R. (2005). Lowering the barriers to programming: A taxonomy of programming environment and languages for novice programmers. ACM Computing Surveys, 37(2), 83-137. Retrieved September 28, 2013 from ACM Digital Library http://www.acm.org/dl.

• Marrero, W., & Settle, A. (2005). Testing first: Emphasizing testing in early programming courses. Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education, 4-8. Retrieved September 28, 2013 from ACM Digital Library http://www.acm.org/dl

• Porter, R., & Calder, P. (2004). Patterns in learning to program: An experiment?. Proceedings of the Sixth Conference on Australasian Computing Education, 30, 241-246. Retrieved September 28, 2013 from ACM Digital Library http://www.acm.org/dl

• Schneider, D. (1999). An introduction to programming using Visual Basic 6.0. Upper Saddle, River, NJ: Prentice Hall.

• Sheard, J., & Hagan, D. (1998). Experiences with teaching object-oriented concepts to introductory programming students using C++. Technology of Object-Oriented Languages and Systems-TOOLS 24, IEEE Technology, 310-319.

• Soloway, E. & Spohrer, J. (1989). Studying the Novice Programmer, Lawrence Erlbaum Associates, Hillsdale, New Jersey. 497 p.

• Stamouli, I., Doyle, E., & Huggard, M. (2004). Establishing structured support for programming students. Proceedings of the 34th ASEE/IEEE Frontiers in Education Conference, Savannah, GA, October 2004.

• Thomas, L., Ratcliffe, M., Woodbury, J., & Jarman, E. (2002). Learning styles and performance in the introductory programming sequence. Proceedings of 33rd SIGCSE Technical Symposium, 34, 33-37.

• Van Roy, P., Armstrong, J., Flatt, M., & Magnusson, B. (2003). The role of language paradigms in teaching programming. Proceedings of the 34th SIGCSE Technical Symposium on Computer science Education, 269-270.

How to Cite
Insuasti, J. (2016). Problems of teaching and learning the basics of programming. Education and Social Development Journal, 10(2), 234–246. https://doi.org/10.18359/reds.1966
Published
2016-07-05
Section
Artículo de Reflexión
QR Code