Cognitive processes in program comprehension
Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers
An analysis of the on-line debugging process
Empirical studies of programmers: second workshop
Empirical studies of programming knowledge
Software reusability
Characteristics of the mental representations of novice and expert programmers: an empirical study
International Journal of Man-Machine Studies
Programming pedagogy—a psychological overview
ACM SIGCSE Bulletin
Program understanding behavior during debugging of large scale software
ESP '97 Papers presented at the seventh workshop on Empirical studies of programmers
Understanding the Professional Programmer
Understanding the Professional Programmer
Implications on the learning of programming through the implementation of subsets in program development environments
Evaluating the effectiveness of a new instructional approach
Proceedings of the 35th SIGCSE technical symposium on Computer science education
RAPTOR: a visual programming environment for teaching algorithmic problem solving
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Experiences with Eclipse IDE in programming courses
Journal of Computing Sciences in Colleges
ACM Computing Surveys (CSUR)
Interaction Design: Beyond Human Computer Interaction
Interaction Design: Beyond Human Computer Interaction
Eye Tracking Methodology: Theory and Practice
Eye Tracking Methodology: Theory and Practice
An eye tracking study of the effect of target rank on web search
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
ICPC '08 Proceedings of the 2008 The 16th IEEE International Conference on Program Comprehension
Do LEGO® Mindstorms® motivate students in CS1?
Proceedings of the 40th ACM technical symposium on Computer science education
Hi-index | 0.00 |
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.