65 research outputs found

    Computational thinking and online learning: A systematic literature review

    Get PDF
    This paper introduces research concerned with investigating how Computational Thinking and online learning can be successfully married to help empower secondary teachers to teach this subject. To aid this research, a systematic literature review was undertaken to investigate what is currently known in the academic literature on where Computational Thinking and online learning intersect. This paper presents the findings of this systematic literature review. It outlines the methodology used and presents the current data available in the literature on how Computational Thinking is taught online. Using a systematic process eight hundred articles were initially identified and then subsequently narrowed down to forty papers. These papers were analysed to answer the following two questions: 1. What are the current pedagogical approaches to teaching Computational Thinking online? 2. What were the categories of online learning observed in the teaching of Computational Thinking? Our findings show that a wide range of pedagogical approaches are used to teach Computational Thinking online, with the constructivist theory of learning being the most popular. The tools used to teach Computational Thinking were also varied, video game design, playing video games, competitions, and unplugged activities, to name a few. A significant finding was the dependency between the tool used and the definition of the term Computational Thinking. Computational Thinking lacks consensus on a definition, and thus the definition stated in the literature changed depending on the tool. By considering a significant body of research up to the present, our findings contribute to teachers, researchers and policy makers understanding of how computational thinking may be taught online at second level

    Algorithmic pedagogy: Using code analysis to deliver targeted supplemental instruction

    Get PDF
    Doctor of PhilosophyCurriculum and Instruction ProgramsJacqueline D SpearsLearning to program has long been known to be a difficult task, requiring a student to develop both fluency in the syntax and grammar of a formal programming language and learn the problem-solving approaches and techniques of computational thinking. The successful teaching strategies of the past have involved maintaining small teacher-student ratios and large amounts of supplemental instruction in lab courses. However, recent growth in the demand for programming courses from both computer science major and nonmajor students has drastically outpaced the expansion of computer science faculty and created a shortage in available lab space and time across American universities. This study involved creating a software tool for automatically delivering targeted supplemental instruction to students based on a real-time algorithmic analysis of the program code they were writing. This approach was piloted with students enrolled in a sophomore-level object-oriented software development course. The majority of students reported finding the detection and reporting of issues in their code helpful. Moreover, students who were less proficient programmers entering the course who utilized the tool showed statistically significant improvement in their final exam grade over those who did not. Thus, adopting the strategy piloted in this study could improve instruction in larger classes and relieve some of the strain on overburdened computer science departments while providing additional learning benefits for students

    A Conceptual Framework for a Software Development Process based on Computational Thinking

    Get PDF
    A software development process is a mechanism for problem solving to help software developers plan, design and structure the development of software to solve a problem. Without a process to guide the structured evolution of a solution, it is extremely likely that at least some aspect of the resulting software will be omitted or incorrectly implemented. Even though the importance of utilising a software process for solving problems is accepted in the business and academic communities, it is a topic that is addressed very lightly (if at all) in most freshman undergraduate computing courses with most courses focussing on programming procedures rather than the process of how to develop a solution. A consequence of this is that some students go on to develop maladaptive cognitive practices where they rush to implement solutions to problems with little planning. Typically these maladaptive practices involve surface practices such as coding by rote learning and cutting and pasting code from existing projects. Such practices can be very difficult to unlearn and can result in students lacking skills in planning and designing solutions to problems which can persist to graduation. Despite these issues, little active research has been found on the development of software processes aimed at freshman third level learners and consequently there are few approaches available to help freshman students through all stages of the software process. However, there is a wealth of current research into computational thinking (CT) as a mechanism to help solve computational problems. Even though CT is seen as a key practice of computer science, most of the research into CT (as a named area) is aimed at 1st and 2nd level education with CT being a more implicit part of third level computing courses. This suggests that there is an exciting opportunity to explicitly exploit the affordances and skills of CT into a software process aimed at freshman third level learners. This paper presents work which has been carried out as part of an ongoing research project into this issue in which the key skills associated with computational thinking are incorporated into a conceptual framework which will provide a structure for a software process aimed at freshman undergraduate computing students. This research is not tied to any particular programming paradigm but its use is assumed to be in the context of imperative, commercial programming languages. The framework is centred on declarative knowledge (in the form of threshold concepts) and procedural knowledge (in the form of CT skills) scaffolding freshman software development from initial planning through to final solution. The framework known as Computational Analysis and Design Engineered Thinking (CADET) – once operationalised as a software process with an accompanying support tool - aims to support the structured development of both software and student self-efficacy in the topic

    Learning by building: A visual modelling language for psychology students

    Get PDF
    Cognitive modelling involves building computational models of psychological theories in order to learn more about them, and is a major research area allied to psychology and artificial intelligence. The main problem is that few psychology students have previous programming experience. The course lecturer can avoid the problem by presenting the area only in general terms. This leaves the process of building and testing models, which is central to the methodology, an unknown. Alternatively, students can be introduced to one of the existing cognitive modelling languages, though this can easily be overwhelming, hindering rather than helping their understanding. Our solution was to design and build a programming language for the intended population. The result is Hank, a visual cognitive modelling language for the psychologist. Our informal analyses have investigated the effectiveness of Hank in its intended context of use, both as a paper and pencil exercise for individuals, and as a computer based project to be carried out in groups. The findings largely support the Hank design decisions, and illuminate many of the challenges inherent in designing a programming language for an educational purpose

    Computers for learning : an empirical modelling perspective

    Get PDF
    In this thesis, we explore the extent to which computers can provide support for domain learning. Computer support for domain learning is prominent in two main areas: in education, through model building and the use of educational software; and in the workplace, where models such as spreadsheets and prototypes are constructed. We shall argue that computerbased learning has only realised a fraction of its full potential due to the limited scope for combining domain learning with conventional computer programming. In this thesis, we identify some of the limitations in the current support that computers offer for learning, and propose Empirical Modelling (EM) as a way of overcoming them. We shall argue that, if computers are to be successfully used for learning, they must support the widest possible range of learning activities. We introduce an Experiential Framework for Learning (EFL) within which to characterise learning activities that range from the private to the public, from the empirical to the theoretical, and from the concrete to the abstract. The term ‘experiential’ reflects a view of knowledge as rooted in personal experience. We discuss the merits of computer-based modelling methods with reference to a broad constructionist perspective on learning that encompasses bricolage and situated learning. We conclude that traditional programming practice is not well-suited to supporting bricolage and situated learning since the principles of program development inhibit the essential cognitive model building activity that informs domain learning. In contrast, the EM approach to model construction directly targets the semantic relation between the computer model and its domain referent and exploits principles that are closely related to the modeller’s emerging understanding or construal. In this way, EM serves as a uniform modelling approach to support and integrate learning activities across the entire spectrum of the EFL. This quality makes EM a particularly suitable approach for computer-based model construction to support domain learning. In the concluding chapters of the thesis, we demonstrate the qualities of EM for educational technology with reference to practical case studies. These include: a range of EM models that have advantages over conventional educational software due to their particularly open-ended and adaptable nature and that serve to illustrate a variety of ways in which learning activities across the EFL can be supported and scaffolded

    Learning by Building: A Visual Modelling Language for Psychology Students

    Get PDF

    Computers for learning : an empirical modelling perspective

    Get PDF
    In this thesis, we explore the extent to which computers can provide support for domain learning. Computer support for domain learning is prominent in two main areas: in education, through model building and the use of educational software; and in the workplace, where models such as spreadsheets and prototypes are constructed. We shall argue that computerbased learning has only realised a fraction of its full potential due to the limited scope for combining domain learning with conventional computer programming. In this thesis, we identify some of the limitations in the current support that computers offer for learning, and propose Empirical Modelling (EM) as a way of overcoming them. We shall argue that, if computers are to be successfully used for learning, they must support the widest possible range of learning activities. We introduce an Experiential Framework for Learning (EFL) within which to characterise learning activities that range from the private to the public, from the empirical to the theoretical, and from the concrete to the abstract. The term ‘experiential’ reflects a view of knowledge as rooted in personal experience. We discuss the merits of computer-based modelling methods with reference to a broad constructionist perspective on learning that encompasses bricolage and situated learning. We conclude that traditional programming practice is not well-suited to supporting bricolage and situated learning since the principles of program development inhibit the essential cognitive model building activity that informs domain learning. In contrast, the EM approach to model construction directly targets the semantic relation between the computer model and its domain referent and exploits principles that are closely related to the modeller’s emerging understanding or construal. In this way, EM serves as a uniform modelling approach to support and integrate learning activities across the entire spectrum of the EFL. This quality makes EM a particularly suitable approach for computer-based model construction to support domain learning. In the concluding chapters of the thesis, we demonstrate the qualities of EM for educational technology with reference to practical case studies. These include: a range of EM models that have advantages over conventional educational software due to their particularly open-ended and adaptable nature and that serve to illustrate a variety of ways in which learning activities across the EFL can be supported and scaffolded.EThOS - Electronic Theses Online ServiceGBUnited Kingdo

    Introductory programming: a systematic literature review

    Get PDF
    As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming. This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research

    Tangible programming bricks : an approach to making programming accessible to everyone

    Get PDF
    Thesis (S.M.)--Massachusetts Institute of Technology, Program in Media Arts & Sciences, February 2000.Includes bibliographical references (leaves 65-68).Thanks to inexpensive microprocessors, consumer electronics are getting more powerful. They offer us greater control over our environment, but in a sense they are getting too powerful for their own good. A programmable thermostat can make my home more comfortable and save energy, but only if I successfully program it to match my life-style. Graphical, direct manipulation user interfaces are step in the direction of making devices easier to program, but it is still easier to manipulate physical objects in the real world than it is to interact with virtual objects "inside" a computer display. Tangible, or graspable user interfaces help bridge the gap between the virtual world and the physical world by allowing us to manipulate digital information directly with our hands. Tangible Programming Bricks are physical building blocks for constructing simple programs. In this thesis I provide technical details of the Bricks themselves, demonstrate that they are useful for controlling a variety of digital "everyday objects," from toy cars to kitchen appliances, and set the stage for future research that will more rigorously support my hypothesis that tangible programming is easier to understand, remember, explain to others, and perform in social settings, when compared to traditional programming mechanisms.by Timothy Scott McNerney.S.M
    corecore