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

skip to main content
10.1145/2184512.2184546acmconferencesArticle/Chapter ViewAbstractPublication Pagesacm-seConference Proceedingsconference-collections
research-article

Comparing mental models of novice programmers when using visual and command line environments

Published: 29 March 2012 Publication History

Abstract

Improving the novice's experience with learning to program has been an important research topic for some time. Appropriate programming environments for novices have been one research area. For example, many departments have adopted visual environments to teach programming as opposed to a command line environment at the beginning stages of a CS curriculum.
The features in standard command line environments are not as assistive to programmers as visual environments. Novices must learn both language syntax and semantics while navigating the file system and compilation tools. On the other hand, visual environments can enable novices to conduct the same behavior with one or more button clicks.
However, the consistency and affordance of certain features in visual environments could cause novices to develop a false perception of programming. In addition, such features may impose the inability for novices to immediately adapt to less assistive environments. In contrast, command line environments may enable novices to develop better mental models for programming because of their limited features, which could also allow them to transition to other environments much easier.
A protocol analysis was conducted on seven students from a CS1 course who learned Python using either IDLE or VIM. The objective was to record and analyze each student's behavior while they use the opposing environment to write a program. This study showed that students who originally used IDLE were not as equipped for transitioning to VIM as their counterparts who transitioned to IDLE.

References

[1]
Adelson, B. 1984. When novices surpass experts: the difficulty of a task may increase with expertise. Journal of Experimental Psychology: Learning, Memory, and Cognition. Vol. 10, (3), 1984. 483--495. Reprinted in Human Factors in Software Development (2nd ed.); Bill Curtis (ed.). Washington, DC. IEEE Computer Society Press, 1985. 55--67.
[2]
Beaubouef, T. and Mason, J. 2005. Why the High Attrition Rate for Computer Science Students: Some Thoughts and Observations. Inroads 37, 2.
[3]
Carlisle, M. C., Wilson, T. A., Humphries, J. W., and Hadfield, S. M. 2005. RAPTOR: a visual programming environment for teaching algorithmic problem solving. SIGCSE Bull. 37, 1 (Feb. 2005), 176--180.
[4]
Chen, Z. and Marx, D. 2005. Experiences with Eclipse IDE in programming courses. J. Comput. Small Coll. 21, 2 (Dec. 2005), 104--112.
[5]
Crosby, M. E. and Stelovsky, J. 1990. How Do We Read Algorithms? A Case Study. Computer 23, 1 (Jan. 1990), 24--35.
[6]
Cutrell, E. and Guan, Z. 2007. An eye-tracking study of information usage in Web search: Variations in target position and contextual snippet length. In Proc. CHI 2007. ACM Press (2007).
[7]
Depasquale, P. J. 2003 Implications on the Learning of Programming Through the Implementation of Subsets in Program Development Environments. Doctoral Thesis. UMI Order Number: AAI3095195., Virginia Polytechnic Institute and State University.
[8]
Duchowski, Andrew T. Eye Tracking Methodology: Theory and Practice. London: Springer, 2007.
[9]
Hagan, D., and Markham, S. 2000. Teaching Java with the BlueJ environment. In Ascilite, 2000.
[10]
Kelleher, C. and Pausch, R. 2005. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing. Survey. 37, 2 (Jun. 2005), 83--137.
[11]
Letovsky, S. 1986. Cognitive processes in program comprehension. In Papers Presented At the First Workshop on Empirical Studies of Programmers on Empirical Studies of Programmers (Washington, D. C., United States). E. Soloway and S. Iyengar, Eds. Ablex Publishing Corp., Norwood, NJ, 58--79.
[12]
McMeekin, D. A., Konsky, B. R., Chang, E., and Cooper, D. J. 2008. Checklist Inspections and Modifications: Applying Bloom's Taxonomy to Categorize Developer Comprehension. In Proceedings of the 2008 the 16th IEEE international Conference on Program Comprehension (June 10 - 13, 2008). ICPC. IEEE Computer Society, Washington, DC, 224--229.
[13]
McWhorter, W. I. and O'Connor, B. C. 2009. Do LEGO® Mindstorms® motivate students in CS1?. In Proceedings of the 40th ACM Technical Symposium on Computer Science Education (Chattanooga, TN, USA, March 04 - 07, 2009). SIGCSE '09. ACM, New York, NY, 438--442.
[14]
Moskal, B., Lurie, D. and Cooper, S. 2004. Evaluating the effectiveness of a new instructional approach. In Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education (Norfolk, Virginia, USA, March 03 - 07, 2004). SIGCSE '04. ACM, New York, NY, 75--79.
[15]
Nanja, M. and Cook, C. R. 1987. An analysis of the online debugging process. In Empirical Studies of Programmers: Second Workshop, G. M. Olson, S. Sheppard, and E. Soloway, Eds. Ablex Series Of Monographs, Edited Volumes, And Texts. Ablex Publishing Corp., Norwood, NJ, 172--184.
[16]
Pennington, N. Stimulus structures and mental representations in expert comprehension of computer programs. Cognitive Psychology 19, (1987), 295--341.
[17]
Sharp, H., Y. Rogers, and J. Preece. Interaction Design: Beyond Human-Computer Interaction. Hoboken, NJ: John Wiley & Sons Inc., 2007.
[18]
Soloway, E. and Ehrlich, K. 1989. Empirical studies of programming knowledge. In Software Reusability: Vol. 2, Applications and Experience, T. J. Biggerstaff and A. J. Perlis, Eds. ACM, New York, NY, 235--267.
[19]
von Mayrhauser, A. and Vans, A. M. 1997. Program understanding behavior during debugging of large scale software. In Papers Presented At the Seventh Workshop on Empirical Studies of Programmers (Alexandria, Virginia, United States). S. Wiedenbeck and J. Scholtz, Eds. ESP '97. ACM, New York, NY, 157--179.
[20]
Weinberg, G. M. (1982) Understanding the Professional Programmer, Little Brown, page 11.
[21]
Wiedenbeck, S., Ramalingam, V., Sarasamma, S., and Corritore, C. L. 1999. A comparison of the comprehension of object-oriented and procedural programs by novice programmers. Interacting with Computers 11: 255--282.
[22]
Wiedenbeck, S., Fix, V., and Scholtz, J. 1993. Characteristics of the mental representations of novice and expert programmers: an empirical study. Int. J. Man-Mach. Stud. 39, 5 (Nov. 1993), 793--812
[23]
Winslow, L. E. 1996. Programming pedagogy---a psychological overview. SIGCSE Bull. 28, 3 (Sep. 1996), 17--22.

Cited By

View all
  • (2024)Enhancing Problem-Solving Skills: The Synergy of Competitive Programming and Gamification Strategy2024 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON60312.2024.10578845(1-7)Online publication date: 8-May-2024
  • (2021)A Script-based Approach for Teaching and Assessing Android Application DevelopmentACM Transactions on Computing Education10.1145/342759321:1(1-24)Online publication date: 22-Jan-2021
  • (2020)A Systematic Literature Review of Studies Related to Mental Activities of Software Developers2020 International Conference Nonlinearity, Information and Robotics (NIR)10.1109/NIR50484.2020.9290239(1-11)Online publication date: 3-Dec-2020
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ACMSE '12: Proceedings of the 50th annual ACM Southeast Conference
March 2012
424 pages
ISBN:9781450312035
DOI:10.1145/2184512
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 29 March 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. education
  2. learning
  3. novice programming

Qualifiers

  • Research-article

Conference

ACM SE '12
Sponsor:
ACM SE '12: ACM Southeast Regional Conference
March 29 - 31, 2012
Alabama, Tuscaloosa

Acceptance Rates

ACMSE '12 Paper Acceptance Rate 28 of 56 submissions, 50%;
Overall Acceptance Rate 502 of 1,023 submissions, 49%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)17
  • Downloads (Last 6 weeks)1
Reflects downloads up to 20 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Enhancing Problem-Solving Skills: The Synergy of Competitive Programming and Gamification Strategy2024 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON60312.2024.10578845(1-7)Online publication date: 8-May-2024
  • (2021)A Script-based Approach for Teaching and Assessing Android Application DevelopmentACM Transactions on Computing Education10.1145/342759321:1(1-24)Online publication date: 22-Jan-2021
  • (2020)A Systematic Literature Review of Studies Related to Mental Activities of Software Developers2020 International Conference Nonlinearity, Information and Robotics (NIR)10.1109/NIR50484.2020.9290239(1-11)Online publication date: 3-Dec-2020
  • (2020)Potentializing the problem-solving competence in programming courses through a practice-based learning + tutoring strategy2020 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON45650.2020.9125154(691-697)Online publication date: Apr-2020
  • (2019)Thinking in imperative or objects? A study on how novice programmer thinks when it comes to designing an application2019 IEEE International Conference on Engineering, Technology and Education (TALE)10.1109/TALE48000.2019.9225966(1-7)Online publication date: Dec-2019
  • (2018)Introductory programming: a systematic literature reviewProceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education10.1145/3293881.3295779(55-106)Online publication date: 2-Jul-2018
  • (2015)Commands composition user interface pattern2015 IEEE 13th International Scientific Conference on Informatics10.1109/Informatics.2015.7377819(120-123)Online publication date: Nov-2015
  • (2014)Tutoring model to guide students in programming courses to create complete and correct solutions2014 9th International Conference on Computer Science & Education10.1109/ICCSE.2014.6926433(75-80)Online publication date: Aug-2014
  • (2012)Studying the Novice’s Perception of Visual Vs. Command Line Programming Tools in CS1Proceedings of the Human Factors and Ergonomics Society Annual Meeting10.1177/107118131256112656:1(605-609)Online publication date: 1-Sep-2012

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