skip to main content
10.1145/3502718.3524809acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
research-article

115 Ways Not to Say Hello, World!: Syntax Errors Observed in a Large-Scale Online CS0 Python Course

Published: 07 July 2022 Publication History

Abstract

Online programming courses can provide detailed automatic feedback for code that fails to meet various test conditions, but novice students often struggle with syntax errors and are unable to write valid testable code. Even for very simple exercises, the range of incorrect code can be surprising to educators with mastery of a programming language. This research paper presents an analysis of the error messages from code run by students in an introductory Python~3 programming course, participated in by 8680 primary and high-school students from 680 institutions. The invalid programs demonstrate a wide diversity of mistakes: even for a one-line "Hello World!'' exercise there were 115 unique invalid programs. The most common errors are identified and compared to the topics introduced in the course. The most generic errors in selected exercises are investigated in greater detail to understand the underlying causes. While the majority of students attempting an exercise reach a successful outcome, many students encounter at least one error in their code. Of these, many such errors indicate basic mistakes, such as unquoted string literals, even in exercises late in the course for which some proficiency of earlier concepts is assumed. These observations suggest there is significant scope to provide greater reinforcement of students' understanding of earlier concepts.

References

[1]
Neil C.C. Brown and Amjad Altadmri. 2014. Investigating Novice Programming Mistakes: Educator Beliefs vs. Student Data. In Proceedings of the Tenth Annual Conference on International Computing Education Research (Glasgow, Scotland, United Kingdom) (ICER '14). Association for Computing Machinery, New York, NY, USA, 43--50. https://doi.org/10.1145/2632320.2632343
[2]
Luca Chiodini, Igor Moreno Santos, Andrea Gallidabino, Anya Tafliovich, André L. Santos, and Matthias Hauswirth. 2021. A Curated Inventory of Programming Language Misconceptions. In Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE '21). Association for Computing Machinery, New York, NY, USA, 380--386. https://doi.org/10.1145/3430665.3456343
[3]
Paul Denny, Andrew Luxton-Reilly, and Ewan Tempero. 2012. All Syntax Errors Are Not Equal. In Proceedings of the 17th ACM Annual Conference on Innovation and Technology in Computer Science Education (Haifa, Israel) (ITiCSE '12). Association for Computing Machinery, New York, NY, USA, 75--80. https://doi.org/10.1145/2325296.2325318
[4]
Paul Denny, Andrew Luxton-Reilly, Ewan Tempero, and Jacob Hendrickx. 2011. Understanding the Syntax Barrier for Novices. In Proceedings of the 16th Annual Joint Conference on Innovation and Technology in Computer Science Education (Darmstadt, Germany) (ITiCSE '11). Association for Computing Machinery, New York, NY, USA, 208--212. https://doi.org/10.1145/1999747.1999807
[5]
John Edwards, Joseph Ditton, Dragan Trninic, Hillary Swanson, Shelsey Sullivan, and Chad Mano. 2020. Syntax Exercises in CS1. In Proceedings of the 2020 ACM Conference on International Computing Education Research (Virtual Event, New Zealand) (ICER '20). Association for Computing Machinery, New York, NY, USA, 216--226. https://doi.org/10.1145/3372782.3406259
[6]
J. Jackson, Mike Cobb, and Curtis Carver. 2005. Identifying Top Java Errors for Novice Programmers. In Proceedings Frontiers in Education 35th Annual Conference (Indianopolis, IN, USA). IEEE Press, New York, NY, USA, T4C -- T4C. https://doi.org/10.1109/FIE.2005.1611967
[7]
Ioannis Karvelas, Annie Li, and Brett A. Becker. 2020. The Effects of Compilation Mechanisms and Error Message Presentation on Novice Programmer Behavior. In Proceedings of the 51st ACM Technical Symposium on Computer Science Education. Association for Computing Machinery, New York, NY, USA, 759--765. https://doi.org/10.1145/3328778.3366882
[8]
Tobias Kohn. 2019. The Error Behind The Message: Finding the Cause of Error Messages in Python. In Proceedings of the 50th ACM Technical Symposium on Computer Science Education (Minneapolis, MN, USA) (SIGCSE '19). Association for Computing Machinery, New York, NY, USA, 524--530. https://doi.org/10.1145/3287324.3287381
[9]
Michael J. Lee and Amy J. Ko. 2011. Personifying Programming Tool Feedback Improves Novice Programmers' Learning. In Proceedings of the Seventh International Workshop on Computing Education Research (Providence, Rhode Island, USA) (ICER '11). Association for Computing Machinery, New York, NY, USA, 109--116. https://doi.org/10.1145/2016911.2016934
[10]
Davin McCall and Michael Kölling. 2019. A New Look at Novice Programmer Errors. ACM Trans. Comput. Educ., Vol. 19, 4, Article 38 (jul 2019), bibinfonumpages30 pages. https://doi.org/10.1145/3335814
[11]
odrigo Pessoa Medeiros, Geber Lisboa Ramalho, and Taciana Pontual Falc ao. 2019. A Systematic Literature Review on Teaching and Learning Introductory Programming in Higher Education. IEEE Trans. on Educ., Vol. 62, 2 (May 2019), 77--90. https://doi.org/10.1109/TE.2018.2864133
[12]
Andrew Luxton-Reilly, and Paul Denny. 2018. Transitioning from Block-Based to Text-Based Programming Languages. In 2018 International Conference on Learning and Teaching in Computing and Engineering (LaTICE) (Auckland, New Zealand). IEEE Press, New York, NY, USA, 57--64. https://doi.org/10.1109/LaTICE.2018.000--5
[13]
Yizhou Qian and James Lehman. 2017. Students' Misconceptions and Other Difficulties in Introductory Programming: A Literature Review. ACM Trans. Comput. Educ., Vol. 18, 1, Article 1 (oct 2017), bibinfonumpages24 pages. https://doi.org/10.1145/3077618
[14]
Rebecca Smith and Scott Rixner. 2019. The Error Landscape: Characterizing the Mistakes of Novice Programmers. In Proceedings of the 50th ACM Technical Symposium on Computer Science Education (Minneapolis, MN, USA) (SIGCSE '19). Association for Computing Machinery, New York, NY, USA, 538--544. https://doi.org/10.1145/3287324.3287394

Cited By

View all

Index Terms

  1. 115 Ways Not to Say Hello, World!: Syntax Errors Observed in a Large-Scale Online CS0 Python Course

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ITiCSE '22: Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 1
    July 2022
    686 pages
    ISBN:9781450392013
    DOI:10.1145/3502718
    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 the author(s) 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].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 07 July 2022

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. cs0
    2. syntax errors

    Qualifiers

    • Research-article

    Conference

    ITiCSE 2022
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 552 of 1,613 submissions, 34%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)40
    • Downloads (Last 6 weeks)6
    Reflects downloads up to 15 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all

    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