Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach

This paper expands a teaching proposal presented at the Innovation and Technology in Computer Science Education Conference, in 2016.  The proposal provides an integrated teaching approach for improving students’ performance in a first programming course. The approach is based on four main components...

Full description

Autores:
Solarte Pabón, Oswaldo
Machuca Villegas, Liliana
Tipo de recurso:
Article of journal
Fecha de publicación:
2019
Institución:
Universidad EIA .
Repositorio:
Repositorio EIA .
Idioma:
eng
OAI Identifier:
oai:repository.eia.edu.co:11190/5039
Acceso en línea:
https://repository.eia.edu.co/handle/11190/5039
https://doi.org/10.24050/reia.v16i31.1230
Palabra clave:
Introductory programming course
Teaching approach
Python
Project-oriented and problem-based learning
Rights
openAccess
License
Revista EIA - 2019
id REIA2_0a54cd2f7a47ee224fb0ee095b23fe50
oai_identifier_str oai:repository.eia.edu.co:11190/5039
network_acronym_str REIA2
network_name_str Repositorio EIA .
repository_id_str
dc.title.spa.fl_str_mv Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
dc.title.translated.eng.fl_str_mv Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
title Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
spellingShingle Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
Introductory programming course
Teaching approach
Python
Project-oriented and problem-based learning
title_short Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
title_full Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
title_fullStr Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
title_full_unstemmed Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
title_sort Fostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching Approach
dc.creator.fl_str_mv Solarte Pabón, Oswaldo
Machuca Villegas, Liliana
dc.contributor.author.spa.fl_str_mv Solarte Pabón, Oswaldo
Machuca Villegas, Liliana
dc.subject.eng.fl_str_mv Introductory programming course
Teaching approach
Python
Project-oriented and problem-based learning
topic Introductory programming course
Teaching approach
Python
Project-oriented and problem-based learning
description This paper expands a teaching proposal presented at the Innovation and Technology in Computer Science Education Conference, in 2016.  The proposal provides an integrated teaching approach for improving students’ performance in a first programming course. The approach is based on four main components: the use of Python as first programming language, project-oriented and problem-based learning, multimedia resources, and assessment rubrics. Material and learning resources for the course development are available on virtual platforms. Our findings suggest that the approach enhanced students’ academic performance, as can be seen in their grades, as well as a decrease in dropout rates.
publishDate 2019
dc.date.accessioned.none.fl_str_mv 2019-01-20 00:00:00
2022-06-17T20:19:52Z
dc.date.available.none.fl_str_mv 2019-01-20 00:00:00
2022-06-17T20:19:52Z
dc.date.issued.none.fl_str_mv 2019-01-20
dc.type.spa.fl_str_mv Artículo de revista
dc.type.eng.fl_str_mv Journal article
dc.type.coar.fl_str_mv http://purl.org/coar/resource_type/c_2df8fbb1
dc.type.coar.eng.fl_str_mv http://purl.org/coar/resource_type/c_6501
http://purl.org/coar/resource_type/c_6501
dc.type.driver.eng.fl_str_mv info:eu-repo/semantics/article
dc.type.version.eng.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.content.eng.fl_str_mv Text
dc.type.redcol.eng.fl_str_mv http://purl.org/redcol/resource_type/ARTREF
dc.type.coarversion.eng.fl_str_mv http://purl.org/coar/version/c_970fb48d4fbd8a85
format http://purl.org/coar/resource_type/c_6501
status_str publishedVersion
dc.identifier.issn.none.fl_str_mv 1794-1237
dc.identifier.uri.none.fl_str_mv https://repository.eia.edu.co/handle/11190/5039
dc.identifier.doi.none.fl_str_mv 10.24050/reia.v16i31.1230
dc.identifier.eissn.none.fl_str_mv 2463-0950
dc.identifier.url.none.fl_str_mv https://doi.org/10.24050/reia.v16i31.1230
identifier_str_mv 1794-1237
10.24050/reia.v16i31.1230
2463-0950
url https://repository.eia.edu.co/handle/11190/5039
https://doi.org/10.24050/reia.v16i31.1230
dc.language.iso.eng.fl_str_mv eng
language eng
dc.relation.references.eng.fl_str_mv Ali, A. and Smith, D. (2014) Teaching an Introductory Programming Language in a General Education Course, Proceedings of the 2008 International Conference on Frontiers in Education: Computer Science and Computer Engineering, FECS 2008, 13, pp. 236–240. Available at: http://www.scopus.com/inward/record.url?eid=2-s2.0-62649122836&partnerID=40&md5=ed1302320017b959ae9f4c7e10972080.
Alturki, R. (2016). Measuring and improving student performance in an introductory programming course. Informatics in Education, 15(2), 183.
Aris, H. (2015, July). Improving students performance in introductory programming subject: A case study. In Computer Science & Education (ICCSE), 2015 10th International Conference on (pp. 657-662). IEEE.
Bennedsen, J. and Caspersen, M. E. (2007). Failure rates in introductory programming, AcM SIGcSE Bulletin. ACM, 39(2), pp. 32–36.
Chan Mow, I. T. (2008). Issues and difficulties in teaching novice computer programming, Innovative Techniques in Instruction Technology, E-Learning, E-Assessment, and Education, pp. 199–204. doi: 10.1007/978-1-4020-8739-4-36.
Chapman, B. E. et al. (2015). Python as a First Programming Language for Biomedical Scientists, (Scipy), pp. 12–17.
Chien-An L. YU-Tzu L., and Cheng-Chih Wu (2015). ¿Which programming language should students learn first?. International Conference on Learning and Teaching in Computing Engineering, Taiwan.
Echeverría, L., Cobos, R., Machuca, L., and Claros, I. (2017). Using collaborative learning scenarios to teach programming to non-CS majors, Computer Applications in Engineering Education, (November 2016), pp. 719–731. doi: 10.1002/cae.21832.
Enbody R.J., Punch W. (2009) Python CS1 as preparation for C++ CS2. Conference Paper in ACM SIGCSE Bulletin·Chattanooga, Tennessee, USA
Furman B., Wertz E., (2010). A First Course in Computer Programming for Mechanical Engineers. Proceedings of 2010 IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications Pages 70-75.
Gomes, A. and Mendes, A. (2015). A teacher’s view about introductory programming teaching and learning: Difficulties, strategies and motivations, Proceedings - Frontiers in Education Conference, FIE, 2015–February(February). doi: 10.1109/FIE.2014.7044086.
Guo, P. (2014). Python is now the most popular introductory teaching language at top us universities, BLOG@ CACM, July, p. 47.
Hoffbeck P., Dilon H., Albright., Lu W., Doughty T. (2016) Teaching programming in the context of solving engineering problems. Frontiers in Education Conference (FIE), IEEE. Pennsilvania, USA.
Konecki, M. and Petrlic, M. (2014). Main problems of programming novices and the right course of action, in Central European Conference on Information and Intelligent Systems, p. 116.
Koulouri, T., Lauria, S. and Macredie, R. D. (2014). Teaching Introductory Programming: A Quantitative Evaluation of Different Approaches, Trans. Comput. Educ., 14(4), p. 26:1–26:28. doi: 10.1145/2662412.
Machuca, L. and Solarte Pabón, O. (2016). Improving Student Performance in a First Programming Course, in Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, p. 367.
Mason, R., Cooper, G. and Raadt, M. De (2012). Trends in Introductory Programming Courses in Australian Universities – Languages, Environments and Pedagogy, 14th Australasian Computing Education Conference, pp. 33–42.
Pears, a et al. (2007). A survey of literature on the teaching of introductory programming, SIGCSE Bulletin, 39(4), pp. 204–223. doi: 10.1080/08993400500150747.
Salcedo, S. L. and Idrobo, A. M. O. (2011). New tools and methodologies for programming languages learning using the scribbler robot and Alice, Proceedings - Frontiers in Education Conference, FIE, pp. 1–6. doi: 10.1109/FIE.2011.6142923.
Soares, A. (2011). Problem based learning in introduction to programming courses, Journal of Computing Sciences in Colleges. Consortium for Computing Sciences in Colleges, 27(1), p. 36.
Stajano, F. (2000). Python in Education: Raising a Generation of Native Speakers, in 'Proceedings of the 8th International Python Conference'
Van Roy P., Armstrong J., Flatt M., and Magnusson (2003). The role of Language Paradigms in Teaching programming. SIGCSE February 19-23, 2003, Reno, Nevada, USA. ACM 1-58113-648-X/03/0002.
Vujošević-Janičić, M. and Tošić, D. (2008). The role of programming paradigms in the first programming courses, The Teaching of Mathematics. Društvo matematičara Srbije, (21), pp. 63–83.
Yadin, A. (2011). Reducing the dropout rate in an introductory programming course, ACM inroads. ACM, 2(4), pp. 71–76.
Zelle, J. M. (1999). Python as a First Programming Language, J. Comput. Sci. Coll., 29(6), pp. 153–154. Available at: http://dl.acm.org/citation.cfm?id=2602724.2602754.
dc.relation.bitstream.none.fl_str_mv https://revistas.eia.edu.co/index.php/reveia/article/download/1230/1220
dc.relation.citationedition.spa.fl_str_mv Núm. 31 , Año 2019
dc.relation.citationendpage.none.fl_str_mv 76
dc.relation.citationissue.spa.fl_str_mv 31
dc.relation.citationstartpage.none.fl_str_mv 65
dc.relation.citationvolume.spa.fl_str_mv 16
dc.relation.ispartofjournal.spa.fl_str_mv Revista EIA
dc.rights.eng.fl_str_mv Revista EIA - 2019
dc.rights.uri.eng.fl_str_mv https://creativecommons.org/licenses/by-nc-sa/4.0/
dc.rights.accessrights.eng.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.eng.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv Revista EIA - 2019
https://creativecommons.org/licenses/by-nc-sa/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.mimetype.eng.fl_str_mv application/pdf
dc.publisher.spa.fl_str_mv Fondo Editorial EIA - Universidad EIA
dc.source.eng.fl_str_mv https://revistas.eia.edu.co/index.php/reveia/article/view/1230
institution Universidad EIA .
bitstream.url.fl_str_mv https://repository.eia.edu.co/bitstreams/fd2d8840-4e3a-4dfb-9779-a117c649dba2/download
bitstream.checksum.fl_str_mv 2c45a8380f697021635b2bb02b24a487
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositorio Institucional Universidad EIA
repository.mail.fl_str_mv bdigital@metabiblioteca.com
_version_ 1814100914851545088
spelling Solarte Pabón, Oswaldo986acfd1efd36e3cabf29f5058a0d1a3Machuca Villegas, Lilianab7a52c9924054d006f7b5d902c7cf8e73002019-01-20 00:00:002022-06-17T20:19:52Z2019-01-20 00:00:002022-06-17T20:19:52Z2019-01-201794-1237https://repository.eia.edu.co/handle/11190/503910.24050/reia.v16i31.12302463-0950https://doi.org/10.24050/reia.v16i31.1230This paper expands a teaching proposal presented at the Innovation and Technology in Computer Science Education Conference, in 2016.  The proposal provides an integrated teaching approach for improving students’ performance in a first programming course. The approach is based on four main components: the use of Python as first programming language, project-oriented and problem-based learning, multimedia resources, and assessment rubrics. Material and learning resources for the course development are available on virtual platforms. Our findings suggest that the approach enhanced students’ academic performance, as can be seen in their grades, as well as a decrease in dropout rates.This paper expands a teaching proposal presented at the Innovation and Technology in Computer Science Education Conference, in 2016.  The proposal provides an integrated teaching approach for improving students’ performance in a first programming course. The approach is based on four main components: the use of Python as first programming language, project-oriented and problem-based learning, multimedia resources, and assessment rubrics. Material and learning resources for the course development are available on virtual platforms. Our findings suggest that the approach enhanced students’ academic performance, as can be seen in their grades, as well as a decrease in dropout rates.application/pdfengFondo Editorial EIA - Universidad EIARevista EIA - 2019https://creativecommons.org/licenses/by-nc-sa/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2https://revistas.eia.edu.co/index.php/reveia/article/view/1230Introductory programming courseTeaching approachPythonProject-oriented and problem-based learningFostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching ApproachFostering Motivation and Improving Student Performance in an introductory programming course: An Integrated Teaching ApproachArtículo de revistaJournal articlehttp://purl.org/coar/resource_type/c_6501http://purl.org/coar/resource_type/c_6501http://purl.org/coar/resource_type/c_2df8fbb1info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionTexthttp://purl.org/redcol/resource_type/ARTREFhttp://purl.org/coar/version/c_970fb48d4fbd8a85Ali, A. and Smith, D. (2014) Teaching an Introductory Programming Language in a General Education Course, Proceedings of the 2008 International Conference on Frontiers in Education: Computer Science and Computer Engineering, FECS 2008, 13, pp. 236–240. Available at: http://www.scopus.com/inward/record.url?eid=2-s2.0-62649122836&partnerID=40&md5=ed1302320017b959ae9f4c7e10972080.Alturki, R. (2016). Measuring and improving student performance in an introductory programming course. Informatics in Education, 15(2), 183.Aris, H. (2015, July). Improving students performance in introductory programming subject: A case study. In Computer Science & Education (ICCSE), 2015 10th International Conference on (pp. 657-662). IEEE.Bennedsen, J. and Caspersen, M. E. (2007). Failure rates in introductory programming, AcM SIGcSE Bulletin. ACM, 39(2), pp. 32–36.Chan Mow, I. T. (2008). Issues and difficulties in teaching novice computer programming, Innovative Techniques in Instruction Technology, E-Learning, E-Assessment, and Education, pp. 199–204. doi: 10.1007/978-1-4020-8739-4-36.Chapman, B. E. et al. (2015). Python as a First Programming Language for Biomedical Scientists, (Scipy), pp. 12–17.Chien-An L. YU-Tzu L., and Cheng-Chih Wu (2015). ¿Which programming language should students learn first?. International Conference on Learning and Teaching in Computing Engineering, Taiwan.Echeverría, L., Cobos, R., Machuca, L., and Claros, I. (2017). Using collaborative learning scenarios to teach programming to non-CS majors, Computer Applications in Engineering Education, (November 2016), pp. 719–731. doi: 10.1002/cae.21832.Enbody R.J., Punch W. (2009) Python CS1 as preparation for C++ CS2. Conference Paper in ACM SIGCSE Bulletin·Chattanooga, Tennessee, USAFurman B., Wertz E., (2010). A First Course in Computer Programming for Mechanical Engineers. Proceedings of 2010 IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications Pages 70-75.Gomes, A. and Mendes, A. (2015). A teacher’s view about introductory programming teaching and learning: Difficulties, strategies and motivations, Proceedings - Frontiers in Education Conference, FIE, 2015–February(February). doi: 10.1109/FIE.2014.7044086.Guo, P. (2014). Python is now the most popular introductory teaching language at top us universities, BLOG@ CACM, July, p. 47.Hoffbeck P., Dilon H., Albright., Lu W., Doughty T. (2016) Teaching programming in the context of solving engineering problems. Frontiers in Education Conference (FIE), IEEE. Pennsilvania, USA.Konecki, M. and Petrlic, M. (2014). Main problems of programming novices and the right course of action, in Central European Conference on Information and Intelligent Systems, p. 116.Koulouri, T., Lauria, S. and Macredie, R. D. (2014). Teaching Introductory Programming: A Quantitative Evaluation of Different Approaches, Trans. Comput. Educ., 14(4), p. 26:1–26:28. doi: 10.1145/2662412.Machuca, L. and Solarte Pabón, O. (2016). Improving Student Performance in a First Programming Course, in Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, p. 367.Mason, R., Cooper, G. and Raadt, M. De (2012). Trends in Introductory Programming Courses in Australian Universities – Languages, Environments and Pedagogy, 14th Australasian Computing Education Conference, pp. 33–42.Pears, a et al. (2007). A survey of literature on the teaching of introductory programming, SIGCSE Bulletin, 39(4), pp. 204–223. doi: 10.1080/08993400500150747.Salcedo, S. L. and Idrobo, A. M. O. (2011). New tools and methodologies for programming languages learning using the scribbler robot and Alice, Proceedings - Frontiers in Education Conference, FIE, pp. 1–6. doi: 10.1109/FIE.2011.6142923.Soares, A. (2011). Problem based learning in introduction to programming courses, Journal of Computing Sciences in Colleges. Consortium for Computing Sciences in Colleges, 27(1), p. 36.Stajano, F. (2000). Python in Education: Raising a Generation of Native Speakers, in 'Proceedings of the 8th International Python Conference'Van Roy P., Armstrong J., Flatt M., and Magnusson (2003). The role of Language Paradigms in Teaching programming. SIGCSE February 19-23, 2003, Reno, Nevada, USA. ACM 1-58113-648-X/03/0002.Vujošević-Janičić, M. and Tošić, D. (2008). The role of programming paradigms in the first programming courses, The Teaching of Mathematics. Društvo matematičara Srbije, (21), pp. 63–83.Yadin, A. (2011). Reducing the dropout rate in an introductory programming course, ACM inroads. ACM, 2(4), pp. 71–76.Zelle, J. M. (1999). Python as a First Programming Language, J. Comput. Sci. Coll., 29(6), pp. 153–154. Available at: http://dl.acm.org/citation.cfm?id=2602724.2602754.https://revistas.eia.edu.co/index.php/reveia/article/download/1230/1220Núm. 31 , Año 201976316516Revista EIAPublicationOREORE.xmltext/xml2668https://repository.eia.edu.co/bitstreams/fd2d8840-4e3a-4dfb-9779-a117c649dba2/download2c45a8380f697021635b2bb02b24a487MD5111190/5039oai:repository.eia.edu.co:11190/50392023-07-25 17:18:00.896https://creativecommons.org/licenses/by-nc-sa/4.0/Revista EIA - 2019metadata.onlyhttps://repository.eia.edu.coRepositorio Institucional Universidad EIAbdigital@metabiblioteca.com