8 research outputs found

    objectKarel

    No full text

    Teachers’ Perspectives on Learning and Programming Environments for Secondary Education

    No full text
    Part 2: Programming and Computer Science EducationInternational audienceTeaching and learning programming is a challenge. Although several learning and programming environments have been proposed for classes, there seems to be more dissent than consensus as to which tools are preferable over others. This paper investigates teachers’ perspectives on popular learning and programming environments used in secondary computer science education in Germany. The environments investigated are: BlueJ, Scratch, Greenfoot, Eclipse, MIT App Inventor, Processing IDE, and Alice. Based on prior research, a catalogue of environment features supporting the learning processes of students was constructed. Using these criteria, an online-survey was conducted with computer science teachers in North Rhine-Westphalia, Germany. In the survey, the participating teachers evaluated the selected tools’ adequacy for teaching object-oriented programming. The findings support the results of prior research conducted with students, stressing the importance of a simple and user-friendly graphical user interface (GUI) as well as the option to visualise classes and objects. Contrary to prior studies, the results show that teachers do not see the editor as equally important, as students do, and that there is no consensus about the role of the area of application for choosing an integrated development environment (IDE). Student-friendly debugging messages as well as a step-by-step execution of programs were identified as important features. Although no tool excelled for every criterion, the clear favourite was BlueJ

    On the Students’ Misconceptions in Object-Oriented Language Constructs

    No full text
    Analyze the Object-oriented (OO) source code developed by students provides useful formative tips to instructors. According to this, it is essential to understand the student’s real difficulties allowing instructors to shape effective courses. To provide run-time feedback to students and to study and analyze the evolution of their performances offline and over time we designed a framework and developed a tool. It allows to identify students’ misconceptions analysing source code and to create personalized student reports automatically. In this paper, we present an empirical study, conducted using our toolchain, that involves 1627 projects extracted from the multi-institution Blackbox dataset. We identified a violation model for Java language constructs based on established results in the computing education community. Afterwards, we grouped such violations in categories and analyzed the relations among them. Our contributions might be helpful in delivering formative feedback and supporting instructors who teach Java and object-oriented programming in general

    Learning to Code and Collaborate in a Web Environment

    No full text
    Programming is a core skill that all computer science students should adopt, but mastering that skill is a demanding task. Educational institutions must find a way to alleviate problems associated with learning programming and to offer a service to an increased number of applicants. Part of these efforts is the use of Web tools in acquiring programming skills. The Web is a social platform and is designed to promote communication, collaboration, and sharing. Use of these tools in teaching programming prepares students for work in a distributed work environment but also opens up a possibility of improving learning process through new forms of interaction between students and lecturers. The aim of this paper is to provide an overview of Web programming tools with an emphasis on collaborative editors and discuss challenges they are addressing as well as possibilities of their application in the learning environment. As a follow up, a new taxonomy of programming learning tools is proposed to facilitate the comparison of these tools and selection of a suitable one for the particular learning activity
    corecore