Programar en la universidad. Cuadernillo de apoyo cognitivo para el análisis de los procesos

  • Verónica D'Angelo Universidad Abierta Interamericana
Palabras clave: algoritmos y estructuras de datos, ciencias de la computación, psicología cognitiva, diagramas Nassi-Shneiderman

Resumen

Este estudio presenta una investigación exploratoria centrada en analizar las primeras impresiones de estudiantes universitarios respecto a un cuadernillo de apoyo cognitivo diseñado para mejorar el proceso de aprendizaje en el contexto de una asignatura de algorítmica básica. El material en cuestión se fundamenta en principios de psicología del aprendizaje y psicología de la programación, con el propósito de abordar los desafíos planteados en la introducción del estudio. Los participantes, quienes están cursando su primer año en una carrera de ciencias de la computación, completaron dos cuestionarios destinados a evaluar su percepción del proceso de aprendizaje y sus opiniones sobre la utilidad del material proporcionado. Los resultados obtenidos sugieren la necesidad de profundizar en el contenido del material de estudio, especialmente en lo referente al análisis de procesos y estructuras de datos. Además, se plantea la posibilidad de ampliar el alcance de este estudio mediante la realización de experimentos controlados que evalúen el impacto del material en el rendimiento y el aprendizaje efectivo de programación.

Referencias bibliográficas

Aguirre, J., & Carnota, R. (2009). Historia de la Informática en Latinoamérica y el Caribe: investigaciones y testimonios (Primera ed.). Río Cuarto, Argentina: Universidad Nacional de Río Cuarto. https://www.researchgate.net/profile/Marcelo-Carvalho-13/publication/310625262_Historia_de_la_informatica_en_Latinoamerica_y_el_Caribe_investigaciones_y_testimonios/links/58344a2808aef19cb81f797e/Historia-de-la-informatica-en-Latinoamerica-y-el-Caribe-inv

Alrashidi, H., Ullman, T. D., & Joy, M. (4 de Diciembre de 2020). An empirical evaluation of a Reflective Writing Framework (RWF) for Reflective Writing in Computer Science Education. 2020 IEEE Frontiers in Education Conference (FIE) (págs. 1-9). Uppsala, Suecia: IEEE. https://doi.org/10.1109/FIE44824.2020.9273975

Alt, D., & Raichel, N. (2020). Reflective journaling and metacognitive awareness: insights from a longitudinal study in higher education. Reflective Practice, 21(2), 145-158. https://doi.org/10.1080/14623943.2020.1716708

Anderson, J. R., & Fincham, J. M. (Noviembre de 2014). Extending problem-solving procedures. Cognitive Psychology, 74, 1-34. https://doi.org/10.1016/j.cogpsych.2014.06.002

Armoni, M. (Julio de 2013). On Teaching Abstraction in Computer Science to Novices. Journal of Computers in Mathematics and Science Teaching, 32(3), 265-284.

Aureliano, V. C., Tedesco, P., Caspersen, M., & Tedesco, P. C. (28 de Julio de 2016). Learning programming through stepwise self-explanations. 2016 11th Iberian Conference on Information Systems and Technologies (CISTI) (págs. 1-6). Gran Canaria, España: IEEE. https://doi.org/10.1109/CISTI.2016.7521457

Badali, M., Hatami, J., Farrokhnia, M., & Noroozi, O. (Agosto de 2020). The effects of using Merrill’s first principles of instruction on learning and satisfaction in MOOC. Innovations in Education and Teaching International, 59(2), 216-225. https://doi.org/10.1080/14703297.2020.1813187

Bai, C., Yang, J., & Tang, Y. (18 de Julio de 2022). Embedding self-explanation prompts to support learning via instructional video. Instructional Science, 50, 681-701. https://doi.org/10.1007/s11251-022-09587-4

Bell, M. A. (Junio de 1995). Review of Psychology of Programming, by J.-M. Hoc, T. R. G. Green, R. Samurçay and D. J. Gilmore. Journal of Visual Languages & Computing, 6(2), 211-212. https://doi.org/10.1006/jvlc.1995.1011

Biju, S. M. (2013). Difficulties in understanding object oriented programming concepts. En K. Elleithy, & T. Sobh (Ed.), Innovations and Advances in Computer, Information, Systems Sciences, and Engineering. Lecture Notes in Electrical Engineering. 152, págs. 319-326. New York, NY: Springer. https://doi.org/10.1007/978-1-4614-3535-8_27

Booch, G. (Febrero de 1986). Object-oriented development. IEEE Transactions on Software Engineering, SE-12(2), 211-221. https://doi.org/10.1109/TSE.1986.6312937

Borrego, M., Douglas, E. P., & Amelink, C. T. (Enero de 2009). Quantitative, Qualitative, and Mixed Research Methods in Engineering Education. Journal of Engineering Education, 98(1), 53-66. https://doi.org/10.1002/j.2168-9830.2009.tb01005.x

Bosse, Y., & Gerosa, M. A. (Enero de 2017). Why is programming so difficult to learn?: Patterns of Difficulties Related to Programming Learning Mid-Stage. ACM SIGSOFT Software Engineering Notes, 41(6), 1-6. https://doi.org/10.1145/3011286.3011301

Caspersen, M. E. (2023). Principles of Programming Education. En S. Sentance, E. Barendsen, N. R. Howard, & C. Schulte (Edits.), Computer Science Education: Perspectives on Teaching and Learning (Segunda ed., págs. 219-236). Bloomsbury Publishing.

Caspersen, M. E., & Kölling, M. (Marzo de 2009). STREAM: A first programming process. ACM Transactions on Computing Education, 9(1), 1-29. https://doi.org/10.1145/1513593.151359

Ch´ng, S. I. (2018). Incorporating reflection into computing classes: models and challenges. 19(3), 358-375. https://doi.org/10.1080/14623943.2018.1479686

Cheng, P. W., & Holyoak, K. J. (Octubre de 1985). Pragmatic reasoning schemas. Cognitive Psychology, 17(4), 391-416. https://doi.org/10.1016/0010-0285(85)90014-3

Chi, M. (1992). Conceptual Change within and across Ontological Categories: Examples from Learning and Discovery in Science. (R. Giere, & H. Feigl, Edits.) University of Minnesota Press, 129-186. https://philpapers.org/rec/CHICCW

Chi, M. T., Bassok, M., Lewis, M., Reimann, P., & Glaser, R. (1989). Self Explanations: How Students Study and Use Examples in Learning to Solve Problems. Cognitive Science, 13(2), 145-182. https://doi.org/10.1207/s15516709cog1302_1

Chi, M. T., Feltovich, P. J., & Glaser, R. (Abril de 1981). Categorization and Representation of Physics Problems by Experts and Novices. Cognitive Science, 5(2), 121-152. https://doi.org/10.1207/s15516709cog0502_2

Cosmides, L. (1989). The logic of social exchange: Has natural selection shaped how humans reason? Studies with the Wason selection task. En Cognition (Vol. 31, págs. 187-276). https://doi.org/10.1016/0010-0277(89)90023-1

Cox, B. J. (1986). Object oriented programming: an evolutionary approach. USA: Addison-Wesley Longman Publishing. https://doi.org/10.5555/16111

Creswell, J. W. (2017). Research design: Qualitative, quantitative, and mixed methods approaches (Tercera ed., Vol. 3). USA: SAGE Publications. https://www.ucg.ac.me/skladiste/blog_609332/objava_105202/fajlovi/Creswell.pdf

da Rosa, S. (2015). The construction of knowledge of basic algorithms and data structures by novice learners. Proceedings of the 26th Annual Psychology of Programming Interest Group Workshop. 7. Bournemouth, UK: Psychology of Programming Interest Group. https://www.fing.edu.uy/~darosa/S.daRosa.pdf

da Rosa, S. R., & Gómez, F. G. (Abril de 2020). A research model in didactics of programming. CLEI Electronic Journal, 23(1, artículo No. 5), 1-16. https://doi.org/10.19153/cleiej.23.1.5

da Rosa, S., Viera, M., & García-Garland, J. (2020). A Case of Teaching Practice Founded on a Theoretical Model. En K. Kori, & M. Laanpere (Ed.), Informatics in Schools: Engaging Learners in Computational Thinking. 13th International Conference, ISSEP 2020, Tallinn, Estonia, November 16–18, 2020, Proceedings. Lecture Notes in Computer Science 12518, págs. 147-157. Springer. https://doi.org/10.1007/978-3-030-63212-0

Davis, W. S. (1998). Nassi-Shneiderman charts. En W. S. Davis, D. C. Yen, W. S. Davis, & D. C. Yan (Edits.), The Information System Consultant's Handbook (Primera ed., pág. 6). CRC Press. https://doi.org/10.1201/9781420049107

Denning, P. J. (1975). Two misconceptions about structured programming. En E. C. Joseph, & J. D. White (Ed.), ACM '75: Proceedings of the 1975 annual conference (págs. 214-215). New York, NY, USA: Association for Computing Machinery. https://doi.org/10.1145/800181.8103

Denning, P. J. (19 de Marzo de 2022). Systems abstractions. Communications of the ACM, 65(4), 22-24. https://doi.org/10.1145/3517218

Denning, P. J., & Tedre, M. (2021). Computational Thinking: A Disciplinary Perspective. Informatics in Education, 20(3), 361-390. https://doi.org/10.15388/infedu.2021.21

Dijkstra, E. W. (Septiembre de 1968). A constructive approach to the problem of program correctness. BIT Numerical Mathematics, 8, 174-186. https://doi.org/10.1007/BF01933419

Dijkstra, E. W. (1970). Notes on structured programming. EUT report. WSK, Technische Hogeschool Eindhoven, Dept. of Mathematics. https://pure.tue.nl/ws/files/2408738/252825.pdf

Dijkstra, E. W. (1976). A Discipline of Programming (Vol. 613924118). Englewood Cliffs, New Jersey, USA: Prentice-Hall. https://seriouscomputerist.atariverse.com/media/pdf/book/Discipline%20of%20Programming.pdf

Duran, R., Zavgorodniaia, A., & Sorva, J. (Diciembre de 2022). Cognitive Load Theory in Computing Education Research: A Review. (A. J. Ko, Ed.) ACM Transactions on Computing Education (TOCE), 22(4, Artículo No. 40), 1-27. https://doi.org/10.1145/3483843

Elqayam, S., & Over, D. E. (2013). New paradigm psychology of reasoning: An introduction to the special issue edited by Elqayam, Bonnefon, and Over. Thinking & Reasoning, 19(3), 249-265. https://doi.org/10.1080/13546783.2013.841591

Gigerenzer, G., & Hug, K. (Mayo de 1992). Domain-specific reasoning: Social contracts, cheating, and perspective change. Cognition, 43(2), 127-171. https://doi.org/10.1016/0010-0277(92)90060-U

Gupta, U., & Zheng, R. Z. (2020). Cognitive Load in Solving Mathematics Problems: Validating the Role of Motivation and the Interaction Among Prior Knowledge, Worked Examples, and Task Difficulty. European Journal of STEM Education, 5(1, Artículo No. 05), 1-14. https://doi.org/10.20897/ejsteme/9252

Gutiérrez, L. E., Guerrero, C. A., & López-Ospina , H. A. (8 de Febrero de 2022). Ranking of problems and solutions in the teaching and learning of object-oriented programming. Education and Information Technologies, 27, 7205–7239. https://doi.org/10.1007/s10639-022-10929-5

Hazzan, O. (Septiembre de 1999). Reducing Abstraction Level When Learning Abstract Algebra Concepts. Educational Studies in Mathematics, 40(1), 71-90. https://doi.org/10.1023/A:1003780613628

Hazzan, O. (2003). How Students Attempt to Reduce Abstraction in the Learning of Mathematics and in the Learning of Computer Science. 13(2), 95-122. https://doi.org/10.1076/csed.13.2.95.14202

Hazzan, O. (2008). Reflections on teaching abstraction and other soft ideas. ACM SIGCSE Bulletin, 40(2), 40-43. https://doi.org/10.1145/1383602.13836

Hazzan, O., & Kramer, J. (10 de Mayo de 2008). The role of abstraction in software engineering. ICSE Companion '08: Companion of the 30th international conference on Software engineering, 1045-1046. https://doi.org/10.1145/1370175.1370239

Hazzan, O., & Zazkis, R. (Enero de 2005). Reducing Abstraction: The Case of School Mathematics. Educational Studies in Mathematics, 58(1), 101-119. https://doi.org/10.1007/s10649-005-3335-x

Heinonen, A., Lehtelä, B., Hellas, A., & Fagerholm, F. (15 de Diciembre de 2022). Synthesizing Research on Programmers' Mental Models of Programs, Tasks and Concepts -- a Systematic Literature Review. arXiv(2212.07763v1 [cs.SE]), 1-66. https://doi.org/10.48550/arXiv.2212.07763

Hoc, J. M. (1983). Analysis of Beginners´ Problem-Solving Strategies in Programming. En Psyschology of Computer Use (págs. 143-158). Academic Press. http://jeanmichelhoc.free.fr/pdf/Hoc%201983d.pdf

Hoc, J. M., Green, T. R., Samurçay, R., & Gilmore, D. J. (Edits.). (2014). Psychology of Programming. Academic Press.

Izu, C., Schulte, C., Aggarwal, A., Cutts, Q., Rodrigo, D., Gutica, M., . . . Weeda, R. (2019). Fostering Program Comprehension in Novice Programmers - Learning Activities and Learning Trajectories. ITiCSE-WGR '19: Proceedings of the Working Group Reports on Innovation and Technology in Computer Science Education (págs. 27-52). New York, NY, USA: Association for Computing Machinery. https://doi.org/10.1145/3344429.33725

Jenkins, T. (23 de Septiembre de 2002). On the Difficulty of Learning to Program. https://www.psy.gla.ac.uk/~steve/localed/jenkins.html

Johnson-Laird, P. N., & Byrne, R. M. (1991). Deduction. Psychology Press. https://philpapers.org/rec/JOHD-9

Johnson-Laird, P. N., Legrenzi, P., & Legrenzi, M. S. (Agosto de 1972). Reasoning and a sense of reality. The British Psychological Society, 63(3), 395-400. https://doi.org/10.1111/j.2044-8295.1972.tb01287.x

Jusas, V., Barisas, D., & Jančiukas, M. (2022). Game Elements towards More Sustainable Learning in Object-Oriented Programming Course. Sustainability, 14(4), 2325. https://doi.org/10.3390/su14042325

Kastens, K. A., & Liben, L. S. (Enero de 2007). Eliciting Self-Explanations Improves Children’s Performance on a Field-Based Map Skills Task. Cognition and Instruction, 25(1), 45–74. https://doi.org/10.1080/07370000709336702

Katona, J. (Febrero de 2022). Measuring Cognition Load Using Eye-Tracking Parameters Based on Algorithm Description Tools. Sensors, 22(3, 912). https://doi.org/10.3390/s22030912

Katona, J. (Abril de 2023). An Eye Movement Study in Unconventional Usage of Different Software Tools. Sensors, 23(8, 3823), 1-14. https://doi.org/10.3390/s23083823

Knorr, E. M. (2020). Worked Examples, Cognitive Load, and Exam Assessments in a Senior Database Course. SIGCSE '20: Proceedings of the 51st ACM Technical Symposium on Computer Science Education (págs. 612–618). New York, NY, USA: Association for Computing Machinery. https://doi.org/10.1145/3328778.3366915

Kramer, J. (1 de Abril de 2007). Is abstraction the key to computing? Communications of the ACM, 50(4), 36-42. https://doi.org/10.1145/1232743.12327

Lange, C., Gorbunova, A., Shcheglova, I., & Costley, J. (2023). Direct instruction, worked examples and problem solving: The impact of instructional strategies on cognitive load. Innovations in Education and Teaching International, 60(4), 488-500. https://doi.org/10.1080/14703297.2022.2130395

Margulieux, L. E., & Catrambone, R. (2021). Scafolding problem solving with learners’ own self explanations of subgoals. Journal of Computing in Higher Education, 33, 499-523. https://doi.org/10.1007/s12528-021-09275-1

Mercier, H., & Sperber, D. (2017). The Enigma of Reason. Harvard University Press. https://www.hup.harvard.edu/books/9780674237827

Merrill, M. D. (Septiembre de 2002). First principles of instruction. Educational Technology Research and Development, 50(3), 43-59. https://doi.org/10.1007/BF02505024

Merrill, M. D. (2012). First Principles of Instruction: Identifying and Designing Effective, Efficient, and Engaging Instruction (Primera ed.). Hoboken, NJ, USA: Pfeiffer (John Wiley & Sons). https://digitalcommons.usu.edu/usufaculty_monographs/100/

Merrill, M. D. (2018). Using the First Principles of Instruction to Make Instruction Effective, Efficient, and Engaging. En R. E. West, Foundations of Learning and Instructional Design Technology: Historical Roots and Current Trends. https://doi.org/10.59668/3

Nassi, I., & Shneiderman, B. (Agosto de 1973). Flowchart techniques for structured programming. ACM SIGPLAN Notices, 8(8), 12 - 26. https://doi.org/10.1145/953349.95335

Nathan, M. J., Mertz, K., & Ryant, R. (Abril de 1994). Learning Through Self-Explanation of Mathematics Examples: Effects of Cognitive Load. the Annual Meeting of the American Educational Research Association (AERA), (pág. 9). New Orleans, LA, USA. https://files.eric.ed.gov/fulltext/ED372095.pdf

Over, D. E. (26 de Octubre de 2009). New paradigm psychology of reasoning. Thinking & Reasoning, 15(4), 431-438. https://doi.org/10.1080/13546780903266188

Paas, F., & van Merriënboer, J. J. (Agosto de 2020). Cognitive-Load Theory: Methods to Manage Working Memory Load in the Learning of Complex Tasks. Current Directions in Psychological Science, 29(4), 394–398. https://doi.org/0963721420922183

Prather, J., Becker, B. A., Craig, M., Denny, P., Loksa, D., & Margulieux, L. (2020). What Do We Think We Think We Are Doing?: Metacognition and Self-Regulation in Programming. ICER '20: Proceedings of the 2020 ACM Conference on International Computing Education Research (págs. 2-13). New York, NY, USA: Association for Computing Machinery. https://doi.org/10.1145/3372782.34062

Prather, J., Pettit, R., McMurry, K., Peters, A., Homer, J., & Cohen, M. (2018). Metacognitive Difficulties Faced by Novice Programmers in Automated Assessment Tools. ICER '18: Proceedings of the 2018 ACM Conference on International Computing Education Research (págs. 41-50). New York, NY, USA: Association for Computing Machinery. https://doi.org/10.1145/3230977.323098

Risha, Z., Barria-Pineda, J., Akhuseyinoglu, K., & Brusilovsky, P. (2021). Stepwise Help and Scaffolding for Java Code Tracing Problems With an Interactive Trace Table. En O. Seppälä, & A. Petersen (Ed.), Koli Calling '21: Proceedings of the 21st Koli Calling International Conference on Computing Education Research (págs. 1-10, Artículo No. 27). New York, NY, USA: Association for Computing Machinery. https://doi.org/10.1145/3488042.3490508

Rovai, A. P., Wighting, M. J., Baker, J. D., & Grooms, L. D. (Enero de 2009). Development of an instrument to measure perceived cognitive, affective, and psychomotor learning in traditional and virtual classroom higher education settings. The Internet and Higher Education, 12(1), 7-13. https://doi.org/10.1016/j.iheduc.2008.10.002

Saidova, D. E. (Junio de 2022). Analysis of the Problems of the Teaching Object-Oriented Programming to Students. International Journal of Social Science Research and Review (IJSSRR), 5(6), 229-234. https://doi.org/10.47814/ijssrr.v5i6.418

Sajaniemi, J. (Mayo de 2008). Psychology of Programming: Looking into Programmers’ Heads. Human Technology, 4(1), 4-8. https://doi.org/10.17011/ht/urn.200804151349

Saw, K. G. (Octubre de 2017). Cognitive Load Theory and the Use of Worked Examples as an Instructional Strategy in Physics for Distance Learners: A Preliminary Study. Turkish Online Journal of Distance Education, 18(4, Artículo 11), 142-159. https://doi.org/10.17718/tojde.340405

Sentz, J., & Stefaniak, J. (Marzo de 2019). Instructional Heuristics for the Use of Worked Examples to Manage Instructional Designers’ Cognitive Load while Problem-Solving. TechTrends, 63(2), 209 - 225. https://doi.org/10.1007/s11528-018-0348-8

Simon, H. A. (1986). The information processing explanation of Gestalt phenomena. Computers in Human Behavior, 2(4), 241-255. https://doi.org/10.1016/0747-5632(86)90006-3

Soloway, E., & Spohrer, J. C. (Edits.). (2013). Studying the Novice Programmer. New York. https://doi.org/10.4324/9781315808321

Structurizer, 3.32-19. (21 de Marzo de 2024). https://structorizer.fisch.lu/

Sweller, J. (Abril de 1988). Cognitive Load During Problem Solving: Effects on Learning. Cognitive Science, 12(2), 257-285. https://doi.org/10.1207/s15516709cog1202_4

Sweller, J. (1994). Cognitive load theory, learning difficulty, and instructional design. Learning and Instruction, 4(4), 295-312. https://doi.org/10.1016/0959-4752(94)90003-5

Sweller, J. (2010). Cognitive Load Theory: Recent Theoretical Advances. En J. L. Plass, R. Moreno, & R. Brünken (Edits.), Cognitive Load Theory (págs. 29 - 47). Cambridge: Cambridge University Press. https://doi.org/10.1017/CBO9780511844744.004

Sweller, J. (10 de Febrero de 2016). Story of a research program. (S. Tobias, J. D. Fletcher, & D. C. Berliner, Edits.) Education Review, 23. https://doi.org/10.14507/er.v23.2025

Sweller, J. (Febrero de 2020). Cognitive load theory and educational technology. Educational technology research and development, 68(1), 1-16. https://doi.org/10.1007/s11423-019-09701-3

Weinberg, G. M. (1971). The Psychology of Computer Programming. New York: Litton Educational Publishing.

Wirth, N. E. (1 de Abril de 1971). Program development by stepwise refinement. Communications of the ACM, 14(4), 221-227. https://doi.org/10.1145/362575.3625

Wirth, N. E. (1973). Systematic Programming: An Introduction. Upper Saddle River, NJ, USA: Prentice Hall. https://doi.org/10.5555/540371

Wirth, N. E. (Diciembre de 1974). On the Composition of Well-Structured Programs. ACM Computing Survey, 6(4), 247-259. https://doi.org/10.1145/356635.356639

Yin, R. K. (2009). Case Study Research: Design and Methods (Cuarta ed., Vol. 5). Sage. https://books.google.com.co/books?id=FzawIAdilHkC&lpg=PP1&hl=es&pg=PR4#v=onepage&q&f=false

Yorganci, S. (Octubre de 2020). Implementing flipped learning approach based on ‘first principles of instruction’ in mathematics courses. Journal of Computer Assisted Learning, 36(5), 763-779. https://doi.org/10.1111/jcal.12448

Zarestky, J., Bigler, M., Brazile, M., Lopes, T., & Bangerth, W. (2022). Reflective Writing Supports Metacognition and Self-regulation in Graduate Computational Science and Engineering. Computers and Education Open, 3, 100085. https://doi.org/10.1016/j.caeo.2022.100085

Cómo citar
D'Angelo, V. (2024). Programar en la universidad. Cuadernillo de apoyo cognitivo para el análisis de los procesos. Revista Colombiana De Computación, 25(1), 1–18. Recuperado a partir de https://revistas.unab.edu.co/index.php/rcc/article/view/4463

Descargas

Los datos de descargas todavía no están disponibles.
Publicado
2024-06-30
Sección
Artículo de investigación científica y tecnológica

Métricas

QR Code
Crossref Cited-by logo