skip to main content
10.1145/3017680.3017724acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

Variable Evaluation: an Exploration of Novice Programmers' Understanding and Common Misconceptions

Published:08 March 2017Publication History

ABSTRACT

For novice programmers one of the most problematic concepts is variable assignment and evaluation. Several questions emerge in the mind of the beginner, such as what does x = 7 + 4 or x = x + 1 really mean? For instance, many students initially think that such statements store the entire calculation in variable x, evaluating the result lazily when actually needed. The common increment pattern x = x + 1 is even believed to be outright impossible. This paper discusses a multi-year project examining how high school students think of assignments and variables. In particular, where does the misconception of storing entire calculations come from? Can we explain the students' thinking and help them develop correct models of how programming works?

It is particularly striking that a model of the computer as a machine with algebraic capabilities would indeed produce the observed misconceptions. The misconception might simply be attributed to the expectation that the computer performs computations the exact same way students are taught to in mathematics.

References

  1. P. Bayman and R. E. Mayer. A diagnosis of beginning programmers' misconceptions of basic programming statements. Commun. ACM, 26(9):677--679, Sept. 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. P. Byckling and J. Sajaniemi. Roles of variables and programming skills improvement. SIGCSE Bull., 38(1):413--417, Mar. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. B. Du Boulay. Some difficulties of learning to program. Journal of Educational Computing Research, 2:57--73, 1986. Google ScholarGoogle ScholarCross RefCross Ref
  4. L. Grandell, M. Peltomaki, R.-J. Back, and T. Salakoski. Why complicate things?: Introducing programming in high school using python. In Proceedings of the 8th Australasian Conference on Computing Education - Volume 52, ACE '06, pages 71--80, Darlinghurst, Australia, Australia, 2006. Australian Computer Society, Inc. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. P. J. Guo. Online python tutor: Embeddable web-based program visualization for cs education. In Proceeding of the 44th ACM Technical Symposium on Computer Science Education, SIGCSE '13, pages 579--584, New York, NY, USA, 2013. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. Kuittinen and J. Sajaniemi. Teaching roles of variables in elementary programming courses. SIGCSE Bull., 36(3):57--61, June 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. E. Lahtinen, K. Ala-Mutka, and H.-M. Jarvinen. A study of the difficulties of novice programmers. ITiCSE '05 Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education, pages 14--18, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. R. Lister, E. S. Adams, S. Fitzgerald, W. Fone, J. Hamer, M. Lindholm, R. McCartney, J. E. Moström, K. Sanders, O. Sepp\"al\"a, B. Simon, and L. Thomas. A multi-national study of reading and tracing skills in novice programmers. SIGCSE Bull., 36(4):119--150, June 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. L. Ma, J. Ferguson, M. Roper, and M. Wood. Investigating the viability of mental models held by novice programmers. SIGCSE Bull., 39(1):499--503, Mar. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. D. Muller, J. Bewes, M. Sharma, and P. Reimann. Saying the wrong thing: improving learning with multimedia by including misconceptions. Journal of Computer Assisted Learning, 24(2):144--155, 2008. Google ScholarGoogle ScholarCross RefCross Ref
  11. U. Nikula, J. Sajaniemi, M. Tedre, and S. Wray. Python and roles of variables in introductory programming: Experiences from three educational institutions. JITE, 6:199--214, 2007.Google ScholarGoogle ScholarCross RefCross Ref
  12. R. T. Putnam, D. Sleeman, J. A. Baxter, and L. K. Kuspa. A summary of misconceptions of high school basic programmers. Journal of Educational Computing Research, 2(4):459--472, 1986. Google ScholarGoogle ScholarCross RefCross Ref
  13. R. Samurçay. The concept of variable in programming--its meaning and use in problem-solving. Educational Studies in Mathematics, 16(2):143--161, 1985. Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Variable Evaluation: an Exploration of Novice Programmers' Understanding and Common Misconceptions

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SIGCSE '17: Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education
        March 2017
        838 pages
        ISBN:9781450346986
        DOI:10.1145/3017680

        Copyright © 2017 ACM

        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].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 8 March 2017

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        SIGCSE '17 Paper Acceptance Rate105of348submissions,30%Overall Acceptance Rate1,595of4,542submissions,35%

        Upcoming Conference

        SIGCSE Virtual 2024

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader