An Evaluation of Programming Assistance Tools to Support the Learning of IT Programming: a Case Study in South African Secondary Schools

Total Page:16

File Type:pdf, Size:1020Kb

An Evaluation of Programming Assistance Tools to Support the Learning of IT Programming: a Case Study in South African Secondary Schools An Evaluation of Programming Assistance Tools to Support the Learning of IT Programming: A Case Study in South African Secondary Schools by Melisa Koorsse Submitted in fulfilment of the requirements for the degree of Philosophiae Doctor in Computer Science at the Nelson Mandela Metropolitan University Promoter: Prof C.B. Cilliers Co-Promoter: Prof. A.P. Calitz January 2012 Declaration I, Melisa Koorsse (199201064), hereby declare that the thesis for my qualification to be awarded is my own work and that it has not previously been submitted for assessment or completion of any postgraduate qualification to another University or for another quali- fication. M. Koorsse Copyright © 2012 Nelson Mandela Metropolitan University All rights reserved. ii Summary Worldwide, there is a decline in interest in the computer science profession and in the subject at secondary school level. Novice programmers struggle to understand introduc- tory programming concepts and this difficulty of learning to program is contributing to the lack of interest in the field of computer science. Information Technology (IT) learners in South African secondary schools are novice programmers, introduced to introductory programming concepts in the subject which also includes topics on hardware and system software, e-communication, social and ethical issues, spreadsheets and databases. The difficulties faced by IT learners are worsened by the lack of suitably qualified teachers, a saturated learning programme that allocates very little time to the understanding of complex programming concepts and limited class time where practical examples can be implemented with the support of the IT teacher. This research proposes that IT learners could be supported by a programming assistance tool (PAT). A PAT is a software program that can be used by novice programmers to learn how to program and/or improve their understanding of programming concepts. PATs use different techniques to assist novice programmers. The main objective of this research was to determine whether the use of a PAT impacted IT learners’ understanding of pro- gramming concepts and motivation towards programming. The literature study and feedback from IT learners and teachers were used to identify novice programming difficulties and IT learner programming difficulties, respectively. Se- lection criteria were derived from the programming difficulties identified. The selection criteria were grouped into three categories, namely, programming concepts, programming knowledge and programming skills. Existing PATs were evaluated using the selection cri- teria and three PATs, namely, RoboMind, Scratch and B#, were selected as suitable for use by IT learners. RoboMind was adapted in this research study, allowing it to support the Delphi programming language. The three PATs were evaluated by participating IT learners at four schools. The findings of this research provided no conclusive evidence that IT learners who used a PAT had a significantly better understanding of programming concepts and motivation iii SUMMARY iv towards programming than learners who did not use a PAT. IT learner feedback was used to identify the strengths and shortcomings of the three PATs and to provide recommen- dations for the development of PATs specifically to support IT learners. This research study has provided several theoretical and practical contributions, including the research design, selection criteria, adaptations to RoboMind and the evaluation of the three PATs. In addition, IT teachers and learners have been made aware of PATs and the support that can be provided by these PATs. IT teachers have also been provided with a means of selecting PATs applicable to the IT curriculum. All the research contribu- tions have formed the basis for future work, such as improving and extending RoboMind’s functionality and support of programming concepts, the refinement of the selection cri- teria and, ultimately, the development of a new PAT, specifically designed to support IT learner understanding of programming concepts and motivation towards programming. Acknowledgements This research could not have been completed without the contributions of many different people, who have supported and assisted in this research in different ways. I would like to extend my appreciation to the following: I would like to thank God for the perseverance and wisdom that He has bestowed upon me during this research, and throughout my life. The following words have been a constant source of encouragement: “I can do all things through Christ who strengthens me.” (Phillipians 4:13) My promoters, Charmain Cilliers and André Calitz, for their invaluable guidance and continuous support for the duration of this research. Their advice and suggestions were always constructive and improved the quality of the work. The participating schools and learners for their co-operation during this study. A special thank you to the IT teachers at the participating schools for their time and co-operation with regards to the administration of questionnaires and class tests. Their contribution has been invaluable to this research study. The Department of Computing Sciences for allowing me to conduct this research and for providing ongoing research support. Prof. Danie Venter and John Cullen for their time and assistance with statistical analysis and language editing, respectively. Clayton Burger for giving his time to provide feedback and technical support. Finally, I would like to thank my family, in particular my mother, for unconditional support and encouragement throughout a challenging time. The financial assistance of the National Research Foundation (NRF) towards this research is hereby acknowledged. Opinions expressed and conclusions arrived at, are those of the author and are not necessarily to be attributed to the NRF. v Dedications This thesis is dedicated to my grandmother Dorothy Enith Cunningham vi Contents Acknowledgements v Dedications vi Contents vii List of Figures xii List of Tables xiv Listings xvi 1 Introduction 1 1.1 Background . 1 1.2 Research Relevance . 4 1.3 Research Outline . 5 1.3.1 Problem Statement . 6 1.3.2 Thesis Statement . 6 1.3.3 Research Objectives . 7 1.4 Research Methodology . 9 1.5 Scope and Limitations . 10 1.6 Conclusion and Thesis Structure . 12 2 Research Design and Methods 15 2.1 Introduction . 15 2.2 Research Strategy . 15 2.2.1 Identification of Suitable PATs . 17 2.2.2 Evaluation of Proposed PATs . 18 2.3 Research Hypotheses . 22 2.4 Participant Selection . 23 2.5 Data Collection . 23 2.5.1 Questionnaires . 24 2.5.1.1 IT Teacher Questionnaires . 24 2.5.1.2 IT Decision Questionnaire . 25 vii CONTENTS viii 2.5.1.3 Perceived Difficulty of Programming Questionnaire . 26 2.5.1.4 Motivated Strategies for Learning Questionnaire (MSLQ) . 27 2.5.1.5 Visual, Aural, Read/Write, Kinaesthetic (VARK) Ques- tionnaire . 28 2.5.1.6 PAT Evaluation Questionnaire . 29 2.5.2 Class Tests . 31 2.6 Data Analysis . 32 2.7 Risks and Limitations . 33 2.8 Conclusion . 33 3 Introductory Programming 35 3.1 Introduction . 35 3.2 Difficulties of Learning to Program . 36 3.2.1 Programming Skills and Knowledge . 36 3.2.2 Teaching Approach . 40 3.2.3 Programming Language and Environment . 42 3.2.4 Programming Concepts . 43 3.3 Approaches to Address Programming Difficulties . 45 3.4 Conclusion . 47 4 Selection Criteria for PATs to Support IT Programming 50 4.1 Introduction . 50 4.2 IT Teacher Feedback . 51 4.2.1 Teaching IT in South African Secondary Schools . 51 4.2.2 Teaching IT Programming Content . 53 4.2.3 Selection Criteria from IT Teacher Feedback . 55 4.3 IT Learner Feedback . 56 4.3.1 Perceived Difficulty of IT . 57 4.3.2 Selection Criteria from IT Learner Feedback . 60 4.4 Selection Criteria . 60 4.5 Conclusion . 63 5 Programming Assistance Tool Selection 65 5.1 Introduction . 65 5.2 Techniques Used by PATs . 66 5.2.1 Definition of a PAT . 66 5.2.2 Evaluation of Techniques used by PATs . 68 5.2.3 Learning Preferences of IT learners . 69 5.3 Programming Assistance Tools for IT . 72 5.3.1 RoboMind . 73 5.3.2 BlueJ . 74 CONTENTS ix 5.3.3 Greenfoot . 75 5.3.4 Scratch . 76 5.3.5 B# . 78 5.3.6 Jeliot . 79 5.3.7 Ville . 80 5.3.8 PlanAni . 81 5.3.9 Alice . 82 5.3.10 jGRASP . 84 5.4 PAT Selection . 85 5.4.1 Programming Knowledge . 85 5.4.2 Programming Skills . 87 5.4.3 Programming Concepts . 88 5.4.4 Techniques used by the PATs . 90 5.4.5 PAT Selection for this Research Study . 91 5.5 Conclusion . 92 6 PAT Preparation for IT Learners 94 6.1 Introduction . 94 6.2 Programming Concepts in Delphi and the PATs . 95 6.2.1 Delphi . 96 6.2.2 RoboMind . 101 6.2.2.1 Unadapted RoboMind . 102 6.2.2.2 Adapted RoboMind . 103 6.2.3 Scratch . 109 6.2.4 B# . 113 6.3 Conclusion . 116 7 The Impact of PATs on the Understanding of Programming Concepts 118 7.1 Introduction . 118 7.2 Application of Experimental Procedure . 119 7.2.1 Research Sample . 119 7.2.2 Supplementary Support . 120 7.2.3 Data Collection, Analysis and Presentation . 121 7.2.4 Overall Results . 124 7.2.5 Difficulties Experienced . 124 7.3 Evaluation of PATs ..
Recommended publications
  • DM2 Week 15 PHP Mysql.Pptx
    PHP and MySQL ATLS 3020 Digital Media 2 Aileen Pierce Web Database Applications PHP Working with Databases ¤ PHP scripts can easily access many different databases ¤ MySQL ¤ Oracle ¤ Informix ¤ mSQL ¤ ODBC ¤ PHP provides functions that begin with mysqli_ to access MySQL databases. PHP Communicating with MySQL ¤ PHP works with MySQL using the following process: 1. Connect to MySQL 2. Prepare a SQL statement 3. Execute the statement and save the result 4. Extract the data from the result 5. Prepare the resulting page Connecting PHP to MySQL ¤ Connect to MySQL $dbc= mysqli_connect(“hostname”, “username”, “password”, “db_name”); ¤ Hostname is the URL of the MySQL server. ¤ Use localhost if PHP and MySQL servers are on the same machine (as on redwood). ¤ Username and password are for MySQL. ¤ Database name is identikey+db (apiercedb) ¤ Must assign the connection to a variable to use throughout your script. Connecting PHP to MySQL ¤ mysqli_connect_error() returns an error if the connection is not made. $dbc= mysqli_connect(“hostname”, “username”, “password”, “db_name”) OR die ('Could not connect to MySQL: ' . mysqli_connect_error() ); ¤ die() will cause the script to exit ¤ Prints out an error message SQL Statements ¤ The mysqli_query() function allows you to pass any SQL command to the database and the result is returned. $result= mysqli_query(“db connection”, “SQL”); ¤ Use phpmyadmin to help you create the SQL statement $result = mysqli_query($dbc, “SELECT * from drink” ); SQL Statements ¤ Or assign the SQL statement to a variable $sql = “INSERT INTO drink (name, caf, whip, calories) VALUES ('cappuccino', 'yes', 'no', '90')”; ¤ Then pass the SQL statement to the database connection $result = mysqli_query($dbc, $sql); ¤ You must assign the result to a variable.
    [Show full text]
  • CSCE A201 Computer Programming I Lab 0
    CSCE A201 Computer Programming I Lab 0 Lecture Instructors: Dr. Kenrick Mock, MW 11:30‐12:45pm Dr. Frank Witmer, TR 10‐11:15am Lab Assistants: Deanna Flynn Elisha Waugh Goals for Today • Introduce lab assistants • Meet some of your classmates • Introduction to Dr. Java • Understand platform independence • Write your first (!?) Java program Syllabus Highlights wrt. Lab • May students collaborate on lab assignments? • May students collaborate on programming assignments? • What percentage of the total course grade is determined by lab? • How is the lab grade determined? Introduce your Neighbor 1. Name 2. Hometown 3. Something interesting (e.g. hobby or recent trip) Some Java Development Environments • Dr. Java – from Rice University, simple & effective – standalone executable (installation instructions on Blackboard) • jGRASP – NSF funded at Auburn University • Intellij IDEA – good code completion & error messages – https://www.jetbrains.com/idea/ • NetBeans – from Oracle, good for multiple, larger projects • Eclipse – more plug‐ins, more customizable – good for Android development) • TextPad (initially free, but then ~$30) • Any text editor & command line – Notepad++ with Cygwin/DOS – emacs, vim, nano with unix/linux • See also Appendix 1 in Savitch book Java Example • Class Hello must be stored in file Hello.java public class Hello { public static void main(String[] args) { System.out.println("Hello world."); } } Platform Independence Demo • Compile java & C++ programs on linux – Which executable/bytecode will run on a Windows machine? Platform Independence • Use ‘javac’ command to compile Java source code .java files high‐level language • Use ‘java’ command to run Java bytecode .class and .jar (Java Archive) files low‐level language Same bytecodes can run any platform with an appropriate JVM (‘java’) Lab 0 Exercise 1.
    [Show full text]
  • Towards Actionable Visualisation in Software Development
    Towards Actionable Visualisation in Software Development Leonel Merino, Mohammad Ghafari, and Oscar Nierstrasz Software Composition Group, University of Bern Bern, Switzerland {merino, ghafari, oscar}@inf.unibe.ch Abstract—Although abundant studies have shown how visual- are still unaware of existing visualisation techniques to isation can help software developers to perform their daily tasks, adopt for their particular needs. A few studies have tried to visualisation is still not a common practice since developers address this issue by investigating to which software engi- have little support for adopting a proper visualisation for their needs. neering tasks particular visualisation techniques have been In this paper we review the 346 papers published in SOFT- applied [13]–[15]. Nevertheless, we believe these studies are VIS/VISSOFT venues and identify 65 design study papers that still coarse-grained to match a suitable visualisation to their describe how visualisation is used to alleviate various difficulties concrete needs. in software development. We classify these studies into several When developers perform a particular programming task problem domains that we collected from the research on soft- ware development community, and highlight the characteristics they ask some questions such as “what code is related to a of each study. On the one hand, we support software developers change?” or “where is this method called?”. Several studies to put visualisation in action by mapping existing techniques have investigated such questions and classified them into to particular needs in various problem domains. On the other groups [16]–[18]. Indeed, such questions reflect developer hand, we help researchers in the field by exposing domains with needs, and we believe mapping them to existing types of little visualisation support.
    [Show full text]
  • Oracle® Transparent Gateway for Microsoft SQL Server Administrator’S Guide 10G Release 2 (10.2) for Microsoft Windows (32-Bit) B14270-01
    Oracle® Transparent Gateway for Microsoft SQL Server Administrator’s Guide 10g Release 2 (10.2) for Microsoft Windows (32-bit) B14270-01 June 2005 Oracle Transparent Gateway for Microsoft SQL Server Administrator’s Guide, 10g Release 2 (10.2) for Microsoft Windows (32-bit) B14270-01 Copyright © 2002, 2005, Oracle. All rights reserved. Primary Author: Amitai Sela Contributing Author: Laurel Hale, Cynthia Kibbe, Kishan Peyetti, Juan Ahues-Vasquez, Govind Lakkoju Contributor: Orit Curiel, Jacco Draaijer, Vira Goorah The Programs (which include both the software and documentation) contain proprietary information; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited. The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. This document is not warranted to be error-free. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose. If the Programs are delivered to the United States Government or anyone licensing or using the Programs on behalf of the United States Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S.
    [Show full text]
  • A Relational Multi-Schema Data Model and Query Language for Full Support of Schema Versioning?
    A Relational Multi-Schema Data Model and Query Language for Full Support of Schema Versioning? Fabio Grandi CSITE-CNR and DEIS, Alma Mater Studiorum – Universita` di Bologna Viale Risorgimento 2, 40136 Bologna, Italy, email: [email protected] Abstract. Schema versioning is a powerful tool not only to ensure reuse of data and continued support of legacy applications after schema changes, but also to add a new degree of freedom to database designers, application developers and final users. In fact, different schema versions actually allow one to represent, in full relief, different points of view over the modelled application reality. The key to such an improvement is the adop- tion of a multi-pool implementation solution, rather that the single-pool solution usually endorsed by other authors. In this paper, we show some of the application potentialities of the multi-pool approach in schema versioning through a concrete example, introduce a simple but comprehensive logical storage model for the mapping of a multi-schema database onto a standard relational database and use such a model to define and exem- plify a multi-schema query language, called MSQL, which allows one to exploit the full potentialities of schema versioning under the multi-pool approach. 1 Introduction However careful and accurate the initial design may have been, a database schema is likely to undergo changes and revisions after implementation. In order to avoid the loss of data after schema changes, schema evolution has been introduced to provide (partial) automatic recov- ery of the extant data by adapting them to the new schema.
    [Show full text]
  • Possibilities of Simulating Robot Generations in Public Education
    Possibilities of Simulating Robot Generations in Public Education ABONYI-TÓTH Andor Abstract. An important part of teaching robotics is describing different robot generations, which represent the characteristic stages of technological development. These generations are also identifiable in case of educational robots. The categories refer to the tasks and problems which can be solved with a given robot. However, the development of robot generations can also be presented to students with the help of algorithmization and coding tasks which simulate the behaviour of robots in a programming environment. These activities can prepare students to work with real educational robots or complement the activities they do with them. This article summarizes the opportunities and advantages of the simulation of robot generations, and shows a concrete example of their implementation. Keywords: Robotics, Robot Generations, Simulation, Scratch, RoboMind, VEXcode VR, Virtual Robotics Toolkit, MakeCode for LEGO MINDSTORMS Education EV3 1. Introduction When introducing students to robotics, it is worth assessing the existing knowledge children have about the topic. For that, first we have to define the equipment which children perceive as robots. It can be done in a brainstorming session when we collect the robots they know of and mention some tasks those robots can perform. [1] In these sessions, students often mention everyday objects (e.g. robot vacuum cleaners, robot lawn mowers, humanoid toy robots, industrial robots in an assembly plant, etc.) and fictional robots existing only in films and books (e.g. shape-shifting robots, doctor robots, combat robots). Of course, it is worth clarifying which robots actually exist, and which aspects of fictional robots are rooted in reality.
    [Show full text]
  • ASA- R-20222 / / ;' P Q DEPARTMENT of COMPUTER SCIENCE COLLEGE of SCIENCES OLD DOMINION UNIVERSITY NORFOLK, VIRGINIA 23529
    INASA-_R-20222 / / ;' p Q DEPARTMENT OF COMPUTER SCIENCE COLLEGE OF SCIENCES OLD DOMINION UNIVERSITY NORFOLK, VIRGINIA 23529 INFORMATION TECHNOLOGY: A TOOL TO CUT HEALTH L) CARE COSTS © By Dr. Ravi Mukkamala, Principal Investigator Final Report For the period ended August 31, 1996 Prepared for National Aeronautics and Space Administration Langley Research Center Hampton, VA 23681-0001 Under Research Grant Number NAG-l-1690 Wayne H. Bryant, Technical Monitor O Submitted by the Old Dominion University Research Foundation P.O. Box 6369 Norfolk, VA 23508-0369 September 1996 DEPARTMENT OF COMPUTER SCIENCE COLLEGE OF SCIENCES OLD DOMINION UNIVERSITY NORFOLK, VIRGINIA 23529 INFORMATION TECHNOLOGY: A TOOL TO CUT HEALTH CARE COSTS By Dr. Ravi Mukkamala, Principal Investigator Final Report For the period ended August 31, 1996 Prepared for National Aeronautics and Space Administration Langley Research Center Hampton, VA 23681-0001 Under Research Grant Number NAG-l-1690 Wayne H. Bryant, Technical Monitor Submitted by the Old Dominion University Research Foundation P.O. Box 6369 Norfolk, VA 23508-0369 September 1996 Information Technology: A Tool to Cut Health Care Costs Final Report (NAG-l-1690) R. Mukkamala K.J. Maly C.M. Overstreet E.C. Foudriat Department of Computer Science Old Dominion University Norfolk, Virginia 23529. Abstract We report on the work done as part of the NASA LaRC grant NAG-l-1690. As part of this effort, we have designed and built a prototype for an integrated medical record system. MRS (Medical Record System) is written in Tcl/Tk. While the initial version of the prototype had patient information hard coded into the system, the later versions used an INGRES database for storing patient information.
    [Show full text]
  • Overview of Jgrasp and the Tutorials
    Overview (v1.8) 8/9/2005 Overview of jGRASP and the Tutorials jGRASP is a lightweight integrated development environment IDE), created specifically to provide visualizations for improving the comprehensibility of software. jGRASP is implemented in Java, and thus, runs on all platforms with a Java Virtual Machine. As with the previous versions, jGRASP supports Java, C, C++, Ada, and VHDL, and it comes configured to work with several popular compilers to provide “point and click” compile and run. jGRASP, which is based on its predecessors, pcGRASP and UNIX GRASP (written in C/C++), is the latest IDE from the GRASP (Graphical Representations of Algorithms, Structures, and Processes) research group at Auburn University. jGRASP currently provides for the automatic generation of three important software visualizations: (1) Control Structure Diagrams (Java, C, C++, Ada, and VHDL) for source code visualization, (2) UML Class Diagrams (Java) for architectural visualization, and (3) Data Structure Diagrams (Java). jGRASP also provides an innovative Object Workbench and Debugger which are tightly integrated with these visualizations. Each is briefly described below. The Control Structure Diagram (CSD) is an algorithmic level diagram generated for Ada, C, C++, Java and VHDL. The CSD is intended to improve the comprehensibility of source code by clearly depicting control constructs, control paths, and the overall structure of each program unit. The CSD, designed to fit into the space that is normally taken by indentation in source code, is an alternative to flow charts and other graphical representations of algorithms. The goal was to create an intuitive and compact graphical notation that is easy to use.
    [Show full text]
  • CAIS Author Template
    Indonesian Journal of Informatics Education Research Paper ISSN: 2549-0389 The Use of Robomind Application in Problem Based Learning Model to Enhance Student’s Understanding in the Conceptual Programming Algorithm Anggun Nofitasari Informatics Education Department, Faculty of Teacher Training and Education, Sebelas Maret University [email protected] Rosihan Ari Yuana Dwi Maryono Informatics Education Department,Faculty of Teacher Informatics Education Department, Faculty of Teacher Training and Education,Sebelas Maret University Training and Education,Sebelas Maret University Abstract: The purpose of this research was to improve understanding of basic programming algorithms concept of class X TKJ 1 SMK N 1 Banyudono on Basic Programming lesson using robomind application through Problem Based Learning model. This research was a Classroom Action Research, with research subjects were 33 students of class X TKJ 1 SMK N 1 Banyudono. This research was started by identifying the problems occured in the classroom. Then, we designed actions to solve the problem in a cycle of actions. In this research, the actions were done in two cycles. Each cycle consists of planning, implementation, observation and reflection. Data was collected by observation of the learning activities in the classroom and comprehension tests after each cycle. Analysis of the data was performed using quantitative and qualitative analysis interactive technique. The results showed that the implementation of the Problem Based Learning model using media assistance robomind applications could enhance students' understanding of the program algorithm. It is shown by the completeness of comprehension tests on pre-cycle 37.5%, 44.8% in the first cycle, and 93.3% in the second cycle.
    [Show full text]
  • Minjoo Bun Technical Skills
    MinJoo Bun 126 E. Columbia Ave. Apt 8 Palisades Park, NJ, 07650 Email: [email protected] Cell: 1-201-403-4672 Technical Skills: Programing Languages: C, C++, C#, Java, and Python, JQuery Web Development: HTML, CSS, JavaScript, and PHP Game Development: Unity IDE: jGRASP, Eclipse, and Visual Studio, phpStorm OS: Linux, macOS, and Windows Database: MySQL and Oracle Platform: Heroku, Github, Unity Other: Microsoft Office 360 Education: New Jersey Institute of Technology – also known as “NJIT” Attendance: Fall 2014 to current Expected graduation: Spring 2020 Major: Information Technology (IT) Work Experience: Verizon Wireless 2017 March - 2017 October 225 Broad Ave Suite 110, Palisades Park, NJ 07650 Mon-Sat: 9:30 AM - 8:00 PM (201) 815-1234 Dentist Assistant Align Dental Care 321 Broad Ave Bdg F5 Ridgefield, NJ 07657 Tue, Thu: 10:00 AM - 7:00 PM/Sat 10:00 AM - 4:00 PM Bakery/Café Employee 2014 September - 2017 March BB Bakery: 354 Broad Ave, Leonia, NJ 07605 Open: 6:30 AM - 10:00 PM (201) 944-1230 Online Shopping Mall Manager 2018 May - 2018 October Argus Global LLC 35 Prospect St. Palisades Park NJ 07650 10:00am - 8:00pm Turtle and Hughes Summer Internship – 2019 1900 Lower Rd. Linden NJ 07036s 10:00am – 5:00pm Ellim USA LLC August 2019 – Now 460 Bergen Blvd. Suite 380 Palisades Park NJ 0760 9:00am – 4:00pm School Projects: Unity Game – Fall 2017 Goal of the game is to have protagonist to dodge the antagonists in the map and get to the end zone with safety Using C#, an object-oriented language, multiple classes were used to enable a functional gameplay Different data structures such as arrays and lists have been incorporated into the game Sometimes a type had to be converted to another – example: int to double Website Development – Summer – 2019 Used php program such as Phpstorm to create a website that allows user to login to the website and using the website it will such for database to show questions that was previously asked for you want to ask.
    [Show full text]
  • Teaching Saudi Children How to Code
    INTERNATIONAL JOURNAL OF EDUCATIONAL TECHNOLOGY Meccawy, M. (2017). Raising a programmer: Teaching Saudi children how to Code. International Journal of Educational Technology, 4(2), 56-65. OPEN IJET Original Paper ACCESS Journal homepage: http://educationaltechnology.net/ijet/ Raising a programmer: Teaching Saudi children how to code Maram Meccawy* Faculty of Computer Science & Information Technology, King Abdulaziz University, Saudi Arabia KEYWORDS A B S T R A C T Programming Teaching computer coding to children from a young age provides with them a Arab children competitive advantage for the future in a continually changing workplace. Programming IT strengthens logical and critical thinking as well as problem solving skills, which lead to Software creative solutions for today’s problems. The Little Programmer is an application for E-learning mobile devices that introduces the basic programming concepts to Arab children aged Mobile learning (8-12) years. It aims to develop a sense of coding and its importance among those Visualization children. User trials results showed that the application was helpful and allowed its users Interactive interface to identify the concepts of computer programming with immense curiosity. Moreover, it showed that linking difficult or newer concepts to familiar entities and objects through visualization can facilitate the learner to grasp innovative knowledge. Introduction Technology has enforced a great influence on the daily practices. Many individuals utilize various technologies to improve their lifestyle. IT specialists employ functional tools for performing differential activities efficiently. The basic aim of this study is to identify the awareness level of computer programming among youngsters in Saudi Arabia. Individuals, who are sanctified with creative ideas and possess the necessary technical skills to transform their ideas into reality, have made a great fortune over the last two decades in the IT industry.
    [Show full text]
  • 01 Front.Pdf
    Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and private study only. The thesis may not be reproduced elsewhere without the permission of the Author. Developing a Courseware Database for The AudioGraph A Thesis presented in partial fulfilment of the requirements for the degree of Master m Computer Science At Massey University, Palmerston North, New Zealand. Jun Pan 2000 Dedication To memory of my auntie, Jin Yuan Pan To my eldest sister, Feng Lan Pan To my lovely daughter, Shu Ke Acknowledgments I would like to take this opportunity to thank the people who have helped to make my thesis a reality. First, I would like to thank my supervisor, Chris Jesshope, for providing valuable guidance and suggestions along the way. I would also like to thank Elizabeth Kemp, who was very careful of checking my thesis and giving suggestions. Second, I would like to give my thanks to Zhenzi Zhang, my colleague and my best friend, for her ability to endure my demands for improvement. Without her continued help, my thesis wouldn't be handed in on time. Thanks to my friend, Margaret Rollinson for checking my English grammar and for making this a smooth and understanding process. Thanks to my colleagues, Simon Zhang, Robin Luo and Y ongqiu Liu. They gave me valuable feedback for my coding test. Finally I give my thanks to my lovely daughter, Shu for her support and understanding during thesis writing. Giving up mum time has not been easy for her.
    [Show full text]