2,268 research outputs found

    Teaching programming at a distance: the Internet software visualization laboratory

    Get PDF
    This paper describes recent developments in our approach to teaching computer programming in the context of a part-time Masters course taught at a distance. Within our course, students are sent a pack which contains integrated text, software and video course material, using a uniform graphical representation to tell a consistent story of how the programming language works. The students communicate with their tutors over the phone and through surface mail. Through our empirical studies and experience teaching the course we have identified four current problems: (i) students' difficulty mapping between the graphical representations used in the course and the programs to which they relate, (ii) the lack of a conversational context for tutor help provided over the telephone, (iii) helping students who due to their other commitments tend to study at 'unsociable' hours, and (iv) providing software for the constantly changing and expanding range of platforms and operating systems used by students. We hope to alleviate these problems through our Internet Software Visualization Laboratory (ISVL), which supports individual exploration, and both synchronous and asynchronous communication. As a single user, students are aided by the extra mappings provided between the graphical representations used in the course and their computer programs, overcoming the problems of the original notation. ISVL can also be used as a synchronous communication medium whereby one of the users (generally the tutor) can provide an annotated demonstration of a program and its execution, a far richer alternative to technical discussions over the telephone. Finally, ISVL can be used to support asynchronous communication, helping students who work at unsociable hours by allowing the tutor to prepare short educational movies for them to view when convenient. The ISVL environment runs on a conventional web browser and is therefore platform independent, has modest hardware and bandwidth requirements, and is easy to distribute and maintain. Our planned experiments with ISVL will allow us to investigate ways in which new technology can be most appropriately applied in the service of distance education

    Towards a debugging tutor for object-oriented environments

    Get PDF
    Programming has provided a rich domain for Artificial Intelligence in Education and many systems have been developed to advise students about the bugs in their programs, either during program development or post-hoc. Surprisingly few systems have been developed specifically to teach debugging. Learning environment builders have assumed that either the student will be taught these elsewhere or thatthey will be learnt piecemeal without explicit advice.This paper reports on two experiments on Java debugging strategy by novice programmers and discusses their implications for the design of a debugging tutor for Java that pays particular attention to how students use the variety of program representations available. The experimental results are in agreement with research in the area that suggests that good debugging performance is associated with a balanced use ofthe available representations and a sophisticated use of the debugging step facility which enables programmers to detect and obtain information from critical momentsin the execution of the program. A balanced use of the available representations seemsto be fostered by providing representations with a higher degree of dynamic linkingas well as by explicit instruction about the representation formalism employed in the program visualisations

    Programming Tools for Prolog Environments

    Get PDF

    Evaluating Hank, a cognitive modelling language for psychologists

    Get PDF
    Hank is a visual programming language devised specically for the use of cognitive psychologists rather than computer programmers. This paper introduces an eighteen month evaluation project on the use of Hank. This project began on November the 1st 1998, the initial findings and planned evaluation programme will be presented at the workshop in January

    Teaching programming with computational and informational thinking

    Get PDF
    Computers are the dominant technology of the early 21st century: pretty well all aspects of economic, social and personal life are now unthinkable without them. In turn, computer hardware is controlled by software, that is, codes written in programming languages. Programming, the construction of software, is thus a fundamental activity, in which millions of people are engaged worldwide, and the teaching of programming is long established in international secondary and higher education. Yet, going on 70 years after the first computers were built, there is no well-established pedagogy for teaching programming. There has certainly been no shortage of approaches. However, these have often been driven by fashion, an enthusiastic amateurism or a wish to follow best industrial practice, which, while appropriate for mature professionals, is poorly suited to novice programmers. Much of the difficulty lies in the very close relationship between problem solving and programming. Once a problem is well characterised it is relatively straightforward to realise a solution in software. However, teaching problem solving is, if anything, less well understood than teaching programming. Problem solving seems to be a creative, holistic, dialectical, multi-dimensional, iterative process. While there are well established techniques for analysing problems, arbitrary problems cannot be solved by rote, by mechanically applying techniques in some prescribed linear order. Furthermore, historically, approaches to teaching programming have failed to account for this complexity in problem solving, focusing strongly on programming itself and, if at all, only partially and superficially exploring problem solving. Recently, an integrated approach to problem solving and programming called Computational Thinking (CT) (Wing, 2006) has gained considerable currency. CT has the enormous advantage over prior approaches of strongly emphasising problem solving and of making explicit core techniques. Nonetheless, there is still a tendency to view CT as prescriptive rather than creative, engendering scholastic arguments about the nature and status of CT techniques. Programming at heart is concerned with processing information but many accounts of CT emphasise processing over information rather than seeing then as intimately related. In this paper, while acknowledging and building on the strengths of CT, I argue that understanding the form and structure of information should be primary in any pedagogy of programming

    Learning by Building: A Visual Modelling Language for Psychology Students

    Get PDF

    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

    "Boring formal methods" or "Sherlock Holmes deduction methods"?

    Full text link
    This paper provides an overview of common challenges in teaching of logic and formal methods to Computer Science and IT students. We discuss our experiences from the course IN3050: Applied Logic in Engineering, introduced as a "logic for everybody" elective course at at TU Munich, Germany, to engage pupils studying Computer Science, IT and engineering subjects on Bachelor and Master levels. Our goal was to overcome the bias that logic and formal methods are not only very complicated but also very boring to study and to apply. In this paper, we present the core structure of the course, provide examples of exercises and evaluate the course based on the students' surveys.Comment: Preprint. Accepted to the Software Technologies: Applications and Foundations (STAF 2016). Final version published by Springer International Publishing AG. arXiv admin note: substantial text overlap with arXiv:1602.0517

    Investigating Engagement with In-Video Quiz Questions in a Programming Course

    Get PDF
    In-video quizzes are common in many distance learning platforms, including those from Coursera and EdX. However the effectiveness of in-video quizzes has not previously been assessed. In this paper we describe the construction and instrumentation of an Interactive Video Lecture Platform to measure student engagement with in-video quizzes. We also investigate the use of in-video quizzes as an approach to mitigate the lack of feedback available to students and lecturers in videos and traditional lectures. Finally, we evaluate the effectiveness of augmenting video with the ability to answer and receive feedback to quiz questions embedded directly within the video. We observed that student engagement with in-video questions was consistently high (71-86%) across two cohorts (N1=81, N2=84) with a rate of 1 question per 8.7 minutes of video. We identified three broad levels of engagement with the quiz questions and four motivations, including challenge seeking and completionism, which explain some of the observed behaviour. The results from this investigation demonstrate that in-video quizzes were successful in creating an engaging and interactive mode of content delivery. We recommend that in-video quizzes be used to increase the interactivity of video content as well as supporting formative assessment within a flipped classroom environment.This is the author accepted manuscript. The final version is available from IEEE via http://dx.doi.org/10.1109/TLT.2015.244437
    • 

    corecore