Exploring Student Perceptions About the Use of Visual Programming

Total Page:16

File Type:pdf, Size:1020Kb

Exploring Student Perceptions About the Use of Visual Programming Exploring student perceptions about the use of visual programming environments, their relation to student learning styles and their impact on student motivation in undergraduate introductory programming modules Maira Kotsovoulou (BSc, MSc) July 2019 This thesis is submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy. Department of Educational Research, Lancaster University, UK. Exploring student perceptions about the use of visual programming environments, their relation to student learning styles and their impact on student motivation in undergraduate introductory programming modules Maira Kotsovoulou (BSc, MSc) This thesis results entirely from my own work and has not been offered previously for any other degree or diploma. The word count is 57,743 excluding references. Signature ........................................................ Maira Kotsovoulou (BSc, MSc) Exploring student perceptions about the use of visual programming environments, their relation to student learning styles and their impact on student motivation in undergraduate introductory programming modules Doctor of Philosophy, July 2019 Abstract My research aims to explore how students perceive the usability and enjoyment of visual/block-based programming environments (VPEs), to what extent their learning styles relate to these perceptions and finally to what extent these tools facilitate student understanding of basic programming constructs and impact their motivation to learn programming. My overall methodological approach is a case study that explores the nature of potential benefits to using a VPE in an introductory programming module, within the specific context of an English-speaking institution of higher learning in Southern Europe. Part 1 of this research is a pilot study, which uses participatory action research as a methodological practice to identify which visual programming environment will be selected for the main study. Part 2 uses an evaluative methodological practice within the case, aimed at addressing the research questions. Data collection is performed using mixed methods. For the quantitative part, 92 participants provided their feedback using a questionnaire, including 3 main sections: a) an adaptation of the Technology Acceptance Model (Davis, 1985); b) an adaptation of the Motivated Strategies for Learning Questionnaire (MSLQ) (Pintrich & de Groot, 1990b) and the Science Motivation Questionnaire (SMQ-II) (Glynn, et al., 2009); and c) the Index of Learning Styles (Felder & Soloman, 1993). For the qualitative part, feedback was collected both by interviewing students and compiling field notes during class observations. Descriptive statistics, t-tests and Spearman correlations were used to analyse the quantitative data, while the constant comparative method was used to generate the categories, whose relationships emerged from the coding process of the qualitative data. i Results from Part 1 revealed a student preference for Scratch over the other three visual programming environments used in the experiment. Findings from Part 2 suggest that students found Scratch to be easy, useful, enjoyable and engaging, but only within the scope and purpose of the module. On the other hand, students demonstrating strong intrinsic motivation to learn programming and high levels of self-efficacy did not perceive Scratch to be as useful as other students did. Results also indicate that a relationship exists between the acceptance of a visual programming environment and students’ learning style preferences; Scratch was found more useful and enjoyable by those reporting visual and sequential learning approaches. Furthermore, overall student performance and pass-fail rates showed considerable improvement following the introduction of Scratch. ii Contents Abstract ................................................................................................................. i Contents .............................................................................................................. iii Acknowledgements ............................................................................................. vi Dedication .......................................................................................................... vii Publications Derived from Work on the Doctoral Programme ..................... viii List of Abbreviations .......................................................................................... ix List of Figures ....................................................................................................... x List of Tables ....................................................................................................... xii Chapter 1 Introduction ..................................................................................... 1 1.1 Introduction to the Study ................................................................................... 1 1.2 Research Questions ............................................................................................ 3 1.3 Contextual Information ...................................................................................... 4 1.4 Thesis Structure ................................................................................................. 8 Chapter 2 Computer Programming .................................................................. 9 2.1 What is Computer Programming ........................................................................ 9 2.2 Programming Paradigms and Programming Languages .................................... 10 2.3 Types of Programming Environments ............................................................... 14 2.3.1 A Text-Editor and Command-Line Compiler .................................................................. 16 2.3.2 Program Visualisation Environment .............................................................................. 16 2.3.3 Integrated Development Environment (IDE) ................................................................. 19 2.3.4 Visual Programming Environments ................................................................................ 20 2.4 Conclusion ....................................................................................................... 31 Chapter 3 The Theoretical Framework ........................................................... 34 3.1 Educational Theories ........................................................................................ 34 3.2 Learning Approaches, Learning Styles and Assessment Tools ........................... 42 3.3 Motivation and Self-Determination .................................................................. 51 3.4 Conclusion ....................................................................................................... 57 Chapter 4 Teaching and Learning Computer Programming ............................ 60 4.1 Cognitive Aspects of Programming ................................................................... 60 4.2 Troublesome Programming Constructs and Skills ............................................. 68 4.3 A Short History of Educational Programming Environments ............................. 76 4.4 A Classification of Educational Programming Environments ............................. 81 iii 4.5 Using Visualisations to Teach Programming ..................................................... 85 4.6 Related Research on Greenfoot, Alice, AppInventor and Scratch ...................... 90 4.7 Conclusion ....................................................................................................... 93 Chapter 5 The Pilot Study ............................................................................... 94 5.1 Purpose ........................................................................................................... 94 5.2 Participatory Action Research .......................................................................... 94 5.2.1 The Survey Tool .............................................................................................................. 98 5.2.2 Validity and Reliability for the Pilot Study Survey Tool .................................................. 99 5.2.3 Action Research Cycle 1 (Greenfoot) ........................................................................... 103 5.2.4 Action Research Cycle 2 (Alice) .................................................................................... 105 5.2.5 Action Research Cycles 3 and 4 (Workshops on AppInventor and Scratch) ................ 107 5.2.6 Action Research Cycle 3 (AppInventor) ........................................................................ 107 5.2.7 Action Research Cycle 4 (Scratch) ................................................................................ 109 5.3 Action Research Findings and Discussion ........................................................ 110 5.4 Conclusion ..................................................................................................... 117 Chapter 6 Research Design and Methodology .............................................. 120 6.1 Purpose ......................................................................................................... 120 6.2 Case Study and Data Collection Approaches ................................................... 120 6.3 Pedagogic Design: Teacher’s Role and Students’ Activity ................................ 128 6.4 Development of the Questionnaire Survey Tool ............................................
Recommended publications
  • The First Program: Little Crab
    CHAPTER 2 The first program: Little Crab topics: writing code: movement, turning, reacting to the screen edges concepts: source code, method call, parameter, sequence, if-statement In the previous chapter, we discussed how to use existing Greenfoot scenarios: We ­created objects, invoked methods, and played a game. Now we want to start to make our own game. 2.1 The Little Crab scenario The scenario we use for this chapter is called little-crab. You will find this scenario in the book-scenarios folder. The scenario you see should look similar to Figure 2.1. Exercise 2.1 Start Greenfoot and open the little-crab scenario. Place a crab into the world and run the program (click the Run button). What do you observe? (Remember: If the class icons on the right appear striped, you have to compile the project first.) On the right you see the classes in this scenario (Figure 2.2). We notice that there are the usual Greenfoot Actor and World classes, and subclasses called CrabWorld and Crab. The hierarchy (denoted by the arrows) indicates an is-a relationship (also called inher- itance): A crab is an actor, and the CrabWorld is a world. Initially, we will work only with the Crab class. We will talk a little more about the CrabWorld and Actor classes later on. If you have just done the exercise above, then you know the answer to the question “What do you observe?” It is: “nothing.” M02_KOLL4292_02_SE_C02.indd 17 2/3/15 7:39 PM 18 | Chapter 2 ■ The first program: Little Crab Figure 2.1 The Little Crab scenario Figure 2.2 The Little Crab classes The crab does not do anything when Greenfoot runs.
    [Show full text]
  • Metadefender Core V4.12.2
    MetaDefender Core v4.12.2 © 2018 OPSWAT, Inc. All rights reserved. OPSWAT®, MetadefenderTM and the OPSWAT logo are trademarks of OPSWAT, Inc. All other trademarks, trade names, service marks, service names, and images mentioned and/or used herein belong to their respective owners. Table of Contents About This Guide 13 Key Features of Metadefender Core 14 1. Quick Start with Metadefender Core 15 1.1. Installation 15 Operating system invariant initial steps 15 Basic setup 16 1.1.1. Configuration wizard 16 1.2. License Activation 21 1.3. Scan Files with Metadefender Core 21 2. Installing or Upgrading Metadefender Core 22 2.1. Recommended System Requirements 22 System Requirements For Server 22 Browser Requirements for the Metadefender Core Management Console 24 2.2. Installing Metadefender 25 Installation 25 Installation notes 25 2.2.1. Installing Metadefender Core using command line 26 2.2.2. Installing Metadefender Core using the Install Wizard 27 2.3. Upgrading MetaDefender Core 27 Upgrading from MetaDefender Core 3.x 27 Upgrading from MetaDefender Core 4.x 28 2.4. Metadefender Core Licensing 28 2.4.1. Activating Metadefender Licenses 28 2.4.2. Checking Your Metadefender Core License 35 2.5. Performance and Load Estimation 36 What to know before reading the results: Some factors that affect performance 36 How test results are calculated 37 Test Reports 37 Performance Report - Multi-Scanning On Linux 37 Performance Report - Multi-Scanning On Windows 41 2.6. Special installation options 46 Use RAMDISK for the tempdirectory 46 3. Configuring Metadefender Core 50 3.1. Management Console 50 3.2.
    [Show full text]
  • Blue, Bluej and Greenfoot
    Kent Academic Repository Full text document (pdf) Citation for published version Kölling, Michael (2016) Lessons from the Design of Three Educational Programming Environments: Blue, BlueJ and Greenfoot. International Journal of People-Oriented Programming, 4 (1). pp. 5-32. ISSN 2156-1796. DOI https://doi.org/10.4018/IJPOP.2015010102 Link to record in KAR http://kar.kent.ac.uk/56662/ Document Version Publisher pdf Copyright & reuse Content in the Kent Academic Repository is made available for research purposes. Unless otherwise stated all content is protected by copyright and in the absence of an open licence (eg Creative Commons), permissions for further reuse of content should be sought from the publisher, author or other copyright holder. Versions of research The version in the Kent Academic Repository may differ from the final published version. Users are advised to check http://kar.kent.ac.uk for the status of the paper. Users should always cite the published version of record. Enquiries For any further enquiries regarding the licence status of this document, please contact: [email protected] If you believe this document infringes copyright then please contact the KAR admin team with the take-down information provided at http://kar.kent.ac.uk/contact.html International Journal of People-Oriented Programming January-June 2015, Vol. 4, No. 1 Table of Contents SIKONL C I T L V PF EP iv Steve Goschnick, Swinburne University of Technology, Melbourne, Australia Leon Sterling, Swinburne University of Technology, Melbourne, Australia
    [Show full text]
  • Full Form of Basic in Computer Language
    Full Form Of Basic In Computer Language Arrased and intransitive Obadiah resit: which Rockwell is soused enough? Prentiss safeguards her nitromethane yesternight, she posed it drastically. How rustling is Morley when comelier and canescent Ned depolarize some banana? Learning pascal are usually, the extern modifier is defined in basic computer full language of sense 3 Popular Types of Computer Language eduCBA. Instead of using machine code it uses a programming language. Programming in one natural language say taken full scope set the English language. BASIC was to early programming language that is still despise the simplest and most popular of programming languages BASIC stands for Beginner's. It is practically impossible to teach good programming to students that have had one prior exposure to BASIC In its classic form BASIC also. Computer Related Full Form PDF For BoardCompetitive Examination BAL Basic Assembly Language BER Bit less Rate BFD Binary File. Included in computer language of computers can be covered in. All Full Forms for Computer Subjectpdf Domain Name. The basics of BASIC the programming language of the 190s. Learn then to program drawings animations and games using JavaScript ProcessingJS or learn how these create webpages with HTML CSS You implement share. Basic Computer Terms. Important Full Forms Related to Programming Languages. BASIC Commands Dartmouth College. An html tags that time and that you are defined rules, compilers convert the habit to create a language of in basic form computer full control. What both RAM & ROM Mean their Business Chroncom. PHP Full Form GeeksforGeeks. What is C The Basics of C Programming HowStuffWorks.
    [Show full text]
  • DUM Č. 1 V Sadě 35. Inf-11 Objektové Programování V Greenfoot
    projekt GML Brno Docens DUM č. 1 v sadě 35. Inf-11 Objektové programování v Greenfoot Autor: Lukáš Rýdlo Datum: 08.06.2014 Ročník: studenti semináře Anotace DUMu: Úvodní informace k celé sadě, metodika. Simulace života zajíce v Greenfoot - seznámení s prostředím aplikace a jazykem. Materiály jsou určeny pro bezplatné používání pro potřeby výuky a vzdělávání na všech typech škol a školských zařízení. Jakékoliv další využití podléhá autorskému zákonu. Sada projektů pro výuku programování mírně pokročilých studentů Úvod k sadě DUMů Tato sada DUMů obsahuje tři části a v ní dva projekty vhodné pro mírně pokročilé studenty programování. Části popořadě obsahují projekt simulační hry „Život zajíce“ v jazyce Java a prostře- dí Greenfoot, druhá část obsahuje tutéž simulační hru v jazyce C s využitím grafické (herní) knihov- ny Allegro (a IDE Dev-C) a třetí část je věnována projektu bitmapového konvertoru v jazyce C pro příkazovou řádku. Tyto tři značně nesourodé projekty mají dát možnost šikovnějším studentům programování srovnat různé přístupy a paradigmata i prostředí. Na rozdíl od ustrnulé individuální a systematické výuky jednoho konkrétního jazyka je mají připravit na reálné programátorské úkoly v reálném prostředí, ve kterém programátor musí často volit různé přístupy nebo paradigmata a učit se vhodnější a pro daný úkol lépe použitelnější jazyk, dohledávat si potřebné informace ve zdrojích na internetu a ne- spoléhat jen na naučenou teorii. V DUMech nebude vysvětlena teorie systematicky, ale zásadně pouze s orientací na řešení konkrét- ního problému a také formou odkazů na externí zdroje. Předpokládám, že studenti již ovládají zá- kladní syntax nějakého C-like jazyka a dovedou minimálně pracovat s proměnnými, podmínkami a (vnořenými) cykly, že dovedou sami a bez pomoci řešit jednoduché úkoly, umí program zkompi- lovat a spustit v nějakém IDE.
    [Show full text]
  • Greenfoot: Combining Object Visualisation with Interaction
    greenfoot: Combining Object Visualisation with Interaction Poul Henriksen Michael Kölling Mærsk McKinney Møller Institute Mærsk McKinney Møller Institute University of Southern Denmark University of Southern Denmark [email protected] [email protected] ABSTRACT infrastructure. These tools range from custom class libraries The introduction of programming education with object- for specific tasks over thematic frameworks to full oriented languages slowly migrates down the curriculum and programming environments. is now often introduced at the high school level. This While a number of useful tools have been produced, there is migration requires teaching tools that are adequate for the considerable room for improvement. Specifically, the intended target audience. introduction of object orientation below the university level, In this paper, we present a new tool for teaching object- e.g. in high schools, is a very recent development that might oriented programming aimed at students at or below college benefit from more targeted tool support. level, with special emphasis of supporting school age learners. The ‘objects-early’ movement has argued for a long time that it This tool was designed by analysing and combining the most is important to teach good object-oriented practices from the beneficial aspects of several existing tools. It aims at start, to avoid having to correct or unlearn bad practices later. combining the simplicity and visual appeal of Karel the Robot While this has led to a wide acceptance of teaching about with much of the flexibility and interaction of BlueJ, while at objects early in first semester college courses, the target has the same time opening up possibilities of new applications.
    [Show full text]
  • Scratch, Blocky & Co., Blocksysteme Zum Programmieren
    Notizen Lothar Griess • 26. Mai 2018 Scratch, Blocky & Co., Blocksysteme zum Programmieren Scratch-Alternativen, … https://wiki.scratch.mit.edu/wiki/Alternatives_to_Scratch HTML5 als Grundlage wär besser, die Zukunft von Flash ist unklar. Liste der Modifikationen ... https://scratch-dach.info/wiki/Liste_der_Modifikationen Enchanting (Scratch Modifikation) ... https://scratch-dach.info/wiki/Enchanting_(Scratch_Modifikation) Beetle Blocks ist wie Scratch oder BlocksCAD für 3D-Grafiken... https://scratch-dach.info/wiki/Beetle_Blocks Beetle Blocks GitHub Repository ... https://github.com/ericrosenbaum/BeetleBlocks Beetle Blocks (3D-Design), … http://beetleblocks.com/ Mod Share … z.B.: Supported Scratch-Modifications … https://wiki.scratch.mit.edu/wiki/Mod_Share Scratch … https://wiki.scratch.mit.edu/wiki/Scratch Snap … https://wiki.scratch.mit.edu/wiki/Snap_(Scratch_Modification) Bingo … https://wiki.scratch.mit.edu/wiki/Bingo_(Scratch_Modification) Panther … https://wiki.scratch.mit.edu/wiki/Panther_(Scratch_Modification) Insanity … https://wiki.scratch.mit.edu/wiki/Insanity_(Scratch_Modification) … weitere: Stack, Kitcat, Ghost, Streak • • • Blockly is used by hundreds of projects, most of them educational: ... https://developers.google.com/blockly/ Blockly, RoboBlockly, ... https://code.org/learn Google Education, 1 Stunde, ... https://hourofcode.com/blockly Got PCs with slow (or non-existent) internet access? Download the Blockly tutorials that were the precursor of the Code.org tutorials - a single 3MB ZIP file can be loaded onto any computer or used off a memory stick Blockly Games … https://blockly-games.appspot.com/ App Inventor … http://appinventor.mit.edu/explore/ Code (div.) … https://code.org/ Ozo Blockly (Mini-Roboter) - Ozobot Bit robot using the OzoBlockly editor. … http://ozoblockly.com/ micro:bit (Raspberrs Pi, MicroPython) … http://microbit.org/ BlocklyProp … www.parallax.com/product/program-blocklyprop wonder workshop (dash-Roboter) … www.makewonder.de Robertar, NEPO (div.) … https://lab.open-roberta.org// Made w/ Code (div.
    [Show full text]
  • BASIC Programming with Unix Introduction
    LinuxFocus article number 277 http://linuxfocus.org BASIC programming with Unix by John Perr <johnperr(at)Linuxfocus.org> Abstract: About the author: Developing with Linux or another Unix system in BASIC ? Why not ? Linux user since 1994, he is Various free solutions allows us to use the BASIC language to develop one of the French editors of interpreted or compiled applications. LinuxFocus. _________________ _________________ _________________ Translated to English by: Georges Tarbouriech <gt(at)Linuxfocus.org> Introduction Even if it appeared later than other languages on the computing scene, BASIC quickly became widespread on many non Unix systems as a replacement for the scripting languages natively found on Unix. This is probably the main reason why this language is rarely used by Unix people. Unix had a more powerful scripting language from the first day on. Like other scripting languages, BASIC is mostly an interpreted one and uses a rather simple syntax, without data types, apart from a distinction between strings and numbers. Historically, the name of the language comes from its simplicity and from the fact it allows to easily teach programming to students. Unfortunately, the lack of standardization lead to many different versions mostly incompatible with each other. We can even say there are as many versions as interpreters what makes BASIC hardly portable. Despite these drawbacks and many others that the "true programmers" will remind us, BASIC stays an option to be taken into account to quickly develop small programs. This has been especially true for many years because of the Integrated Development Environment found in Windows versions allowing graphical interface design in a few mouse clicks.
    [Show full text]
  • GWBASIC User's Manual
    GWBASIC User's Manual User's Guide GW-BASIC User's Guide Chapters 1. Welcome Microsoft Corporation 2. Getting Started Information in this document is subject to change without 3. Reviewing and Practicing notice and does not represent a commitment on the part of 4. The Screen Editor Microsoft Corporation. The software described in this 5. Creating and Using Files document is furnished under a license agreement or 6. Constants, Variables, nondisclosure agreement. It is against the law to copy this Expressions and Operators software on magnetic tape, disk, or any other medium for any Appendicies purpose other than the purchaser's personal use. A. Error Codes and Messages © Copyright Microsoft Corporation, 1986, 1987. All rights B. Mathematical Functions reserved. C. ASCII Character Codes D. Assembly Language Portions copyright COMPAQ Computer Corporation, 1985 E. Converting Programs Simultaneously published in the United States and Canada. F. Communications G. Hexadecimal Equivalents Microsoft®, MS-DOS®, GW-BASIC® and the Microsoft logo H. Key Scan Codes are registered trademarks of Microsoft Corporation. I. Characters Recognized Compaq® is a registered trademark of COMPAQ Computer Glossary Corporation. DEC® is a registered trademark of Digital Equipment Corporation. User's Reference Document Number 410130001-330-R02-078 ABS Function ASC Function ATN Function GW-BASIC User's Reference AUTO Command Microsoft Corporation BEEP Statement BLOAD Command Information in this document is subject to change without BSAVE Command notice and does not represent a commitment on the part of Microsoft Corporation. The software described in this CALL Statement document is furnished under a license agreement or CDBL Function nondisclosure agreement.
    [Show full text]
  • Course Description Java Fundamentals V5
    www.oracle.com/academy Java Fundamentals Overview This course engages students with little or no programming experience to create Java programs. Participants are introduced to object- oriented programming concepts, terminology, and syntax, and the steps required to create basic Java programs using the Alice, Greenfoot, and Eclipse interactive development environments. Hand-on practices figure prominently throughout this course so students can experience firsthand the power of computer programming. Duration • 90 hours Target Audiences Primary Audience • College/university faculty who teach computer programming, information communications technology (ICT), or a related subject • Secondary school teachers who teach computer programming Secondary Audience • None Prerequisites Required • Basic understanding of at least one programming language • The ability to follow software installation instructions and install Alice, Greenfoot, and Eclipse on a computer Suggested • Getting started with Java using Alice and creating Java programs with Greenfoot or previous experience with at least one programming language Suggested Next Courses • Java Programming Lesson-by-Lesson Topics Welcome and Introduction • Welcome • Introduction Storytelling with Alice 3 • Telling a story visually • Creating a scene by adding and positioning objects • Using procedures • Declaring procedures • Using control statements and functions • Using the IF and WHILE control statements • Using expressions • Using variables and keyboard controls to manipulate motion • Correlating
    [Show full text]
  • Programming with Python and Java Honors
    Randolph Township Schools Randolph High School Programming with Python and Java Honors “Mathematics provides a framework for dealing precisely with notions of ‘what is’. Computation provides a framework for dealing precisely with notions of ‘how to’.” -- Margaret Mead Department of Science, Technology, Engineering, and Math Anthony Emmons, Supervisor Curriculum Committee: Matthew Horner Curriculum Developed: June 2018 Date of Board Approval: September 4th, 2018 1 Randolph Township Schools Randolph High School Table of Contents Section Page(s) Mission Statement and Education Goals – District 3 Affirmative Action Compliance Statement 3 Educational Goals – District 4 Introduction 5 Curriculum Pacing Chart 6 APPENDICES 40 2 Randolph Township Schools Mission Statement We commit to inspiring and empowering all students in Randolph schools to reach their full potential as unique, responsible and educated members of a global society. Randolph Township Schools Affirmative Action Statement Equality and Equity in Curriculum The Randolph Township School district ensures that the district’s curriculum and instruction are aligned to the state’s standards. The curriculum provides equity in instruction, educational programs and provides all students the opportunity to interact positively with others regardless of race, creed, color, national origin, ancestry, age, marital status, affectional or sexual orientation, gender, religion, disability or socioeconomic status. N.J.A.C. 6A:7-1.7(b): Section 504, Rehabilitation Act of 1973; N.J.S.A. 10:5; Title IX, Education Amendments of 1972 3 RANDOLPH TOWNSHIP BOARD OF EDUCATION EDUCATIONAL GOALS VALUES IN EDUCATION The statements represent the beliefs and values regarding our educational system. Education is the key to self-actualization, which is realized through achievement and self-respect.
    [Show full text]
  • GREENFOOT in 4 HOURS a Quick Start Guide
    GREENFOOT IN 4 HOURS A Quick Start Guide Version 2.0 October 8, 2015 For questions about this document contact: Jeff Mellinger San Diego State MESA Center [email protected] CALIFORNIA MESA SCHOOLS PROGRAM 2015 Contents Introduction ................................................................................................................................... 2 The Greenfoot Environment ........................................................................................................ 2 Creating New Subclasses .............................................................................................................. 3 Developing a Game Piece by Piece: MoveAndTurn ................................................................. 5 Move and Turn: A better way .................................................................................................... 7 Wrapping an Object ..................................................................................................................... 7 Disappear and Appear .................................................................................................................. 9 Random Motion .......................................................................................................................... 11 Shooting ....................................................................................................................................... 12 Scoreboard ..................................................................................................................................
    [Show full text]