Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3284179.3284190acmotherconferencesArticle/Chapter ViewAbstractPublication PagesteemConference Proceedingsconference-collections
research-article

Building Skills in Introductory Programming

Published: 24 October 2018 Publication History

Abstract

Learning to program is difficult and requires a lot of work, dedication, and training. The difficulties of teaching and learning programming are a cause for concern for everyone where this subject is needed. It is a universal problem. The theme of teaching and learning programming difficulties is a serious problem not only for the important concepts underlying and structuring the course, but also for the lack of motivation, the failure, and abandonment that such frustration may imply for the student. It is important to act quickly. The follow-up of each student must be immediate and personalized. It is not possible to follow a traditional system of exposing the syntax and semantics of a language, with demonstrative examples of the concept, something more is needed. It is important to make an individual and constant evaluation of all the concepts that are part of the programming course. With this constant and personalized evaluation, it is possible to build a profile of each student's competences -- building skills in introductory programming. Giving each student the opportunity to improve particular skills. This concept is very similar to the skills of a character in a computer game, which can be acquired through training, performing tasks or practicing a certain ability. The paper goal is to describe a system that allows us to suggest exercises and to evaluate the results automatically. That will allow to construct the profile of the student in programming, according to the different phases of learning. This set of skills allow the teacher to have complete and updated information of the students' knowledge at all times, and thus minimizes the students' demotivation and failure.

References

[1]
Basogain, X. et al. 2017. Computational Thinking in pre-university Blended Learning classrooms. Computers in Human Behavior. (May 2017).
[2]
Bennedsen, J. 2008. Teaching and learning introductory programming: a model-based approach. University of Oslo.
[3]
Brown, N.C.C. and Altadmri, A. 2017. Novice Java Programming Mistakes: Large-Scale Data vs. Educator Beliefs. Trans. Comput. Educ. 17, 2 (2017).
[4]
Bubica, N. and Boljat, I. 2015. PROGRAMMING NOVICES' MENTAL MODELS. 7th International Conference on Education and New Learning Technologies (Barcelona, 2015).
[5]
Carmo, L. et al. Learning styles and problem solving strategies.
[6]
Category:Programming Tasks - Rosetta Code: http://rosettacode.org/wiki/Category:Programming_Tasks. Accessed: 2018-06--28.
[7]
Code Katas - codekatas.org: http://www.codekatas.org/. Accessed: 2018-06--27.
[8]
CodeAbbey - programming problems to practice and learn for beginners: http://www.codeabbey.com/. Accessed: 2018-06--28.
[9]
CodeKata: http://codekata.pragprog.com/. Accessed: 2018-06--27.
[10]
Cole, E. 2015. On Pre-requisite Skills for Universal Computational Thinking Education. (2015), 253--254.
[11]
Cprogramming.com: https://www.cprogramming.com. Accessed: 2018-06--28.
[12]
Figueiredo, J. et al. 2016. Ne-course for learning programming. Proceedings of the Fourth International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM '16 (New York, New York, USA, 2016), 549--553.
[13]
Figueiredo, J. and García-Peñalvo, F.J. 2017. Improving Computational Thinking Using Follow and Give Instructions. Proceedings of the 5th International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM 2017 (New York, New York, USA, 2017), 1--7.
[14]
Fincher, S. et al. 2005. Computer Science at Kent programming courses. 1 (2005).
[15]
García-Peñalvo, F.J. 2016. What Computational Thinking Is. Journal of Information Technology Research. 9, 93 (2016).
[16]
Gerdes, A. et al. 2012. An interactive functional programming tutor. Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education - ITiCSE '12 (New York, New York, USA, 2012), 250.
[17]
GitHub - Gamontal/awesone-katas: A curated list of code katas:.
[18]
Gomes, A. de J. 2010. Dificuldades de aprendizagem de programação de computadores: contributos para a sua compreensão e resolução. Dificuldades de ap rendizage m de programação de computadores: contributos para a sua compreensão e resolução. (2010).
[19]
Grover, S. and Pea, R. 2013. Computational Thinking in K-12: A Review of the State of the Field. Educational Researcher. 42, 1 (2013).
[20]
Hoc, J.-M. and Nguyen-Xuan, A. 1990. Language Semantics, Mental Models and Analogy. J.-M. Hoc, T. R. G. Green, R. Samurçay, & D. J. Gilmore (Eds.), Psychology of Programming. (1990), 139--156.
[21]
Jenkins, T. 2002. On the Difficulty of Learning to Program. Language. 4, (2002), 53--58.
[22]
Lahtinen, E. et al. 2005. A study of the difficulties of novice programmers. ACM SIGCSE Bulletin. 37, 3 (2005), 14--18.
[23]
Lye, S.Y. and Koh, J.H.L. 2014. Review on teaching and learning of computational thinking through programming: What is next for K-12? Computers in Human Behavior. 41, (2014), 51--61.
[24]
Mason, D. et al. 2016. Computational Thinking as a Liberal Study. Proceedings of the 47th ACM Technical Symposium on Computer Science Education (SIGCSE '16). (2016), 24--29.
[25]
Milková, E. 2015. Development of Programming Capabilities Inspired by Foreign Language Teaching. Procedia - Social and Behavioral Sciences. 171, (Jan. 2015), 172--177.
[26]
Programming & Engineering Questions & Answers - Sanfoundry: https://www.sanfoundry.com/. Accessed: 2018-06--28.
[27]
Queirós, R.A.P. and Leal, J.P. 2012. PETCHA. Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education - ITiCSE '12 (New York, New York, USA, Jul. 2012), 192.
[28]
Robins, A. et al. 2016. Learning and Teaching Programming: A Review and Discussion. 3408, April (2016), 37--41.
[29]
Román-González, M. et al. 2017. Which cognitive abilities underlie computational thinking? Criterion validity of the Computational Thinking Test. Computers in Human Behavior. 72, (Jul. 2017), 678--691.
[30]
Salleh, S.M. et al. 2013. Analysis of Research in Programming Teaching Tools: An Initial Review. Procedia - Social and Behavioral Sciences. 103, (Nov. 2013), 127--135.
[31]
Settle, A. et al. 2013. Beyond computer science: Computational thinking across disciplines. 18th Annual Conference on Innovation and Technology in Computer Science Education. (2013), 311--312.
[32]
Shuhidan, S. et al. 2009. A taxonomic study of novice programming summative assessment. Conferences in Research and Practice in Information Technology Series. 95, (2009), 147--156.
[33]
Simple Programming Problems: https://adriann.github.io/programming_problems.html. Accessed: 2018-06--27.
[34]
Tan, J. et al. 2014. Case-based teaching using the Laboratory Animal System for learning C/C++ programming. Computers & Education. 77, (Aug. 2014), 39--49.
[35]
Walden, J. et al. 2013. An Informatics Perspective on Computational Thinking. Proceedings of the 18th ACM conference on Innovation and technology in computer science education. ACM, 2013. (2013), 4--9.
[36]
Yadav, A. et al. 2016. Computational Thinking for All: Pedagogical Approaches to Embedding 21st Century Problem Solving in K-12 Classrooms. TechTrends. 60, 6 (2016).
[37]
Yadav, A. et al. 2014. Computational Thinking in Elementary and Secondary Teacher Education. ACM Transactions on Computing Education. 14, 1 (2014).
[38]
YADAV, A. and STEPHENSON, C.H.H. 2017. Computational Thinking for Teacher Education. Communications of the ACM. 60, 4 (2017).
[39]
Ying Li 2016. Teaching programming based on Computational Thinking. 2016 IEEE Frontiers in Education Conference (FIE) (Oct. 2016), 1--7.

Cited By

View all
  • (2024)Design science research applied to difficulties of teaching and learning initial programmingUniversal Access in the Information Society10.1007/s10209-022-00941-423:3(1151-1161)Online publication date: 1-Aug-2024
  • (2024)A Literature Review of Tutoring Systems: Pedagogical Approach and ToolsArtificial Intelligence, Data Science and Applications10.1007/978-3-031-48465-0_13(99-104)Online publication date: 5-Mar-2024
  • (2023)Towards enhancing teaching and learning computer programming in Saudi ArabiaInternational Journal of ADVANCED AND APPLIED SCIENCES10.21833/ijaas.2023.03.02410:3(196-204)Online publication date: Mar-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
TEEM'18: Proceedings of the Sixth International Conference on Technological Ecosystems for Enhancing Multiculturality
October 2018
1072 pages
ISBN:9781450365185
DOI:10.1145/3284179
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

In-Cooperation

  • University of Salamanca: University of Salamanca

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 October 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. CS0
  2. CS1
  3. Programming
  4. learning programming
  5. teaching programming

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

TEEM'18

Acceptance Rates

TEEM'18 Paper Acceptance Rate 151 of 243 submissions, 62%;
Overall Acceptance Rate 496 of 705 submissions, 70%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)33
  • Downloads (Last 6 weeks)2
Reflects downloads up to 16 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Design science research applied to difficulties of teaching and learning initial programmingUniversal Access in the Information Society10.1007/s10209-022-00941-423:3(1151-1161)Online publication date: 1-Aug-2024
  • (2024)A Literature Review of Tutoring Systems: Pedagogical Approach and ToolsArtificial Intelligence, Data Science and Applications10.1007/978-3-031-48465-0_13(99-104)Online publication date: 5-Mar-2024
  • (2023)Towards enhancing teaching and learning computer programming in Saudi ArabiaInternational Journal of ADVANCED AND APPLIED SCIENCES10.21833/ijaas.2023.03.02410:3(196-204)Online publication date: Mar-2023
  • (2023)Artificial Intelligence and Computer-Supported Collaborative Learning in Programming: A Systematic Mapping StudyTecnura10.14483/22487638.1963727:75(175-206)Online publication date: 1-Jan-2023
  • (2023)Exploring the Support for Self-Regulation in Adult Online Informal Programming Learning: A Scoping ReviewProceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 110.1145/3587102.3588811(361-367)Online publication date: 29-Jun-2023
  • (2023)OntoCnE, characterizing Learning Resources for training Computational Thinking2023 International Symposium on Computers in Education (SIIE)10.1109/SIIE59826.2023.10423710(1-6)Online publication date: 16-Nov-2023
  • (2023)The Usability of P2P-FLIP Framework for Teaching Programming via Flipped Classroom2023 International Conference on Electrical Engineering and Informatics (ICEEI)10.1109/ICEEI59426.2023.10346938(1-5)Online publication date: 10-Oct-2023
  • (2023)ChatGPT in the Teaching and Learning Initial Programming: A Case StudyProceedings of TEEM 202310.1007/978-981-97-1814-6_15(156-162)Online publication date: 25-Oct-2023
  • (2023)AR-Based Resources to Train Computational Thinking SkillsPerspectives and Trends in Education and Technology10.1007/978-981-19-6585-2_61(691-702)Online publication date: 3-Jan-2023
  • (2022)Strategies to increase success in learning programming2022 International Symposium on Computers in Education (SIIE)10.1109/SIIE56031.2022.9982358(1-6)Online publication date: 17-Nov-2022
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media