26,403 research outputs found

    Visual and Textual Programming Languages: A Systematic Review of the Literature

    Get PDF
    It is well documented, and has been the topic of much research, that Computer Science courses tend to have higher than average drop out rates at third level. This is a problem that needs to be addressed with urgency but also caution. The required number of Computer Science graduates is growing every year but the number of graduates is not meeting this demand and one way that this problem can be alleviated is to encourage students at an early age towards studying Computer Science courses. This paper presents a systematic literature review on the role of visual and textual programming languages when learning to program, particularly as a first programming language. The approach is systematic, in that a structured search of electronic resources has been conducted, and the results are presented and quantitatively analysed. This study will give insight into whether or not the current approaches to teaching young learners programming are viable, and examines what we can do to increase the interest and retention of these students as they progress through their education.Comment: 18 pages (including 2 bibliography pages), 3 figure

    Functional Baby Talk: Analysis of Code Fragments from Novice Haskell Programmers

    Get PDF
    What kinds of mistakes are made by novice Haskell developers, as they learn about functional programming? Is it possible to analyze these errors in order to improve the pedagogy of Haskell? In 2016, we delivered a massive open online course which featured an interactive code evaluation environment. We captured and analyzed 161K interactions from learners. We report typical novice developer behavior; for instance, the mean time spent on an interactive tutorial is around eight minutes. Although our environment was restricted, we gain some understanding of Haskell novice errors. Parenthesis mismatches, lexical scoping errors and do block misunderstandings are common. Finally, we make recommendations about how such beginner code evaluation environments might be enhanced

    Learning to communicate computationally with Flip: a bi-modal programming language for game creation

    Get PDF
    Teaching basic computational concepts and skills to school children is currently a curricular focus in many countries. Running parallel to this trend are advances in programming environments and teaching methods which aim to make computer science more accessible, and more motivating. In this paper, we describe the design and evaluation of Flip, a programming language that aims to help 11–15 year olds develop computational skills through creating their own 3D role-playing games. Flip has two main components: 1) a visual language (based on an interlocking blocks design common to many current visual languages), and 2) a dynamically updating natural language version of the script under creation. This programming-language/natural-language pairing is a unique feature of Flip, designed to allow learners to draw upon their familiarity with natural language to “decode the code”. Flip aims to support young people in developing an understanding of computational concepts as well as the skills to use and communicate these concepts effectively. This paper investigates the extent to which Flip can be used by young people to create working scripts, and examines improvements in their expression of computational rules and concepts after using the tool. We provide an overview of the design and implementation of Flip before describing an evaluation study carried out with 12–13 year olds in a naturalistic setting. Over the course of 8 weeks, the majority of students were able to use Flip to write small programs to bring about interactive behaviours in the games they created. Furthermore, there was a significant improvement in their computational communication after using Flip (as measured by a pre/post-test). An additional finding was that girls wrote more, and more complex, scripts than did boys, and there was a trend for girls to show greater learning gains relative to the boys

    Introducing novice programmers to functions and recursion using computer games

    Get PDF

    Learning Dimensions: Lessons from Field Studies

    Get PDF
    In this paper, we describe work to investigate the creation of engaging programming learning experiences. Background research informed the design of four fieldwork studies involving a range of age groups to explore how programming tasks could best be framed to motivate learners. Our empirical findings from these four studies, described here, contributed to the design of a set of programming "Learning Dimensions" (LDs). The LDs provide educators with insights to support key design decisions for the creation of engaging programming learning experiences. This paper describes the background to the identification of these LDs and how they could address the design and delivery of highly engaging programming learning tasks. A web application has been authored to support educators in the application of the LDs to their lesson design

    An evaluation of a professional learning network for computer science teachers

    Get PDF
    This paper describes and evaluates aspects of a professional development programme for existing CS teachers in secondary schools (PLAN C) which was designed to support teachers at a time of substantial curricular change. The paper’s particular focus is on the formation of a teacher professional development network across several hundred teachers and a wide geographical area. Evidence from a series of observations and teacher surveys over a two-year period is analysed with respect to the project’s programme theory in order to illustrate not only whether it worked as intended, by why. Results indicate that the PLAN C design has been successful in increasing teachers’ professional confidence and appears to have catalysed powerful change in attitudes to learning. Presentation of challenging pedagogical content knowledge and conceptual frameworks, high-quality teacher-led professional dialogue, along with the space for reflection and classroom trials, triggered examination of the teachers’ own current practices

    Facilitating Online Learning via Zoom Breakout Room Technology : A Case of Pair Programming Involving Students with Learning Disabilities

    Get PDF
    The coronavirus disease of 2019 (COVID-19) pandemic has required many educators to redesign how they deliver their courses. In this study, we develop innovative procedures and pedagogy to teach pair programming via Zoom breakout rooms in a cloud environment. We report six fundamental innovative teaching mechanisms and procedures: 1) strategically planning a course, 2) effectively managing teaching resources, 3) enhancing faculty responsiveness, 4) selecting reliable technology, 5) mandating online educator’s training, and 6) accommodating students with learning disabilities. From teaching pair programming via Zoom breakout rooms, we have gained valuable experience in promoting collaborative, engaging, active, and problem-based learning activities in a cloud environment. Our results enrich our knowledge of delivering online education and contribute to pair programming literature in general
    corecore