Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
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
  • Get Citation Alerts
  • 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)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
    • Show More Cited By

    Recommendations

    Comments

    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)42
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 26 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (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)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
    • (2022)Identifying Programming Skills Impacted in Students with Cognitive Disabilities2022 IEEE Frontiers in Education Conference (FIE)10.1109/FIE56618.2022.9962703(1-8)Online publication date: 8-Oct-2022
    • (2022)Design science research applied to difficulties of teaching and learning initial programmingUniversal Access in the Information Society10.1007/s10209-022-00941-4Online publication date: 7-Nov-2022
    • Show More Cited By

    View Options

    Get Access

    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