5,629 research outputs found

    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

    Diogene-CT: tools and methodologies for teaching and learning coding

    Get PDF
    AbstractComputational thinking is the capacity of undertaking a problem-solving process in various disciplines (including STEM, i.e. science, technology, engineering and mathematics) using distinctive techniques that are typical of computer science. It is nowadays considered a fundamental skill for students and citizens, that has the potential to affect future generations. At the roots of computational-thinking abilities stands the knowledge of computer programming, i.e. coding. With the goal of fostering computational thinking in young students, we address the challenging and open problem of using methods, tools and techniques to support teaching and learning of computer-programming skills in school curricula of the secondary grade and university courses. This problem is made complex by several factors. In fact, coding requires abstraction capabilities and complex cognitive skills such as procedural and conditional reasoning, planning, and analogical reasoning. In this paper, we introduce a new paradigm called ACME ("Code Animation by Evolved Metaphors") that stands at the foundation of the Diogene-CT code visualization environment and methodology. We develop consistent visual metaphors for both procedural and object-oriented programming. Based on the metaphors, we introduce a playground architecture to support teaching and learning of the principles of coding. To the best of our knowledge, this is the first scalable code visualization tool using consistent metaphors in the field of the Computing Education Research (CER). It might be considered as a new kind of tools named as code visualization environments

    Proceedings of The Rust-Edu Workshop

    Get PDF
    The 2022 Rust-Edu Workshop was an experiment. We wanted to gather together as many thought leaders we could attract in the area of Rust education, with an emphasis on academic-facing ideas. We hoped that productive discussions and future collaborations would result. Given the quick preparation and the difficulties of an international remote event, I am very happy to report a grand success. We had more than 27 participants from timezones around the globe. We had eight talks, four refereed papers and statements from 15 participants. Everyone seemed to have a good time, and I can say that I learned a ton. These proceedings are loosely organized: they represent a mere compilation of the excellent submitted work. I hope you’ll find this material as pleasant and useful as I have. Bart Massey 30 August 202

    Social Worked-Examples Technique to Enhance Student Engagement in Program Visualization

    Get PDF
    يعد تعلم البرمجة من بين أهم التحديات في تعليم علوم الكمبيوتر. حاليا، يتم استخدام تصوير البرامج ) PV ( كأداة للتغلب علىمعدلات الفشل والتسرب العالية في مادة اساسيات البرمجة. ومع ذلك، هناك مخاوف متزايدة بشأن فعالية أدوات تصوير البرامج الحالية استناداالى النتائج المختلطة المستمدة من الدراسات المختلفة. تعتبر مشاركة الطلاب أيضًا عاملاً حيويًا في بناء PV ناجحًا، كما تعد أيضًا جزءًا مهمًامن عملية التعلم بشكل عام. تم إدخال العديد من التقنيات لتعزيز المشاركة في أدوات تصوير البرامج؛ ومع ذلك، فإن مشاركة الطلاب في PVلا يزال يمثل تحديًا كبيراً. استخدمت هذه الورقة ثلاث نظريات مختلفة: البنيوية، والبناء الاجتماعي، والحمل المعرفي لاقتراح تقنية لتعزيزمشاركة الطلاب في استخدام أدوات تصوير البرامج. تعمل تقنية الأمثلة المكتملة الاجتماعية ) SWE ( على تحويل المثال المكتمل التقليدي إلىنشاط اجتماعي ، حيث يتم التركيز بشكل أكبر على دور التعاون في بناء معرفة الطلاب. حددت هذه الدراسة ثلاثة مبادئ يمكن أن تعززمشاركة الطلاب من خلال تقنية SWE : التعلم النشط والتعاون الاجتماعي والأنشطة ذاتس التحميل المنخفض.Learning programming is among the top challenges in computer science education. A part of that, program visualization (PV) is used as a tool to overcome the high failure and drop-out rates in an introductory programming course. Nevertheless, there are rising concerns about the effectiveness of the existing PV tools following the mixed results derived from various studies. Student engagement is also considered a vital factor in building a successful PV, while it is also an important part of the learning process in general. Several techniques have been introduced to enhance PV engagement; however, student engagement with PV is still challenging. This paper employed three theories—constructivism, social constructivism and cognitive load to propose a technique for enhancing student engagement with program visualisation. The social worked-examples (SWE) technique transforms the traditional worked-example into a social activity, whereby a greater focus is placed on the collaboration role in constructing students’ knowledge. This study identified three principles that could enhance student engagement through the SWE technique: active learning, social collaboration and low-load activity

    C Tutor usage in relation to student achievement and progress: a study of introductory programming courses in Portugal and Serbia

    Get PDF
    Previous research studies on introductory programming courses in engineering education in Portugal and Serbia have indicated that although high motivation and high expectations seem to be reported by students, many students may fail the course. This prompted a further inquiry into student attitudes, behavior, and achievement, and it also led to the introduction of C Tutor, a widely known program visualization tool, into courses in both countries. As a result, in the present study, self‐reported student achievement (grades), self‐reported student progress (knowledge improvement and confidence), and self‐reported usage and helpfulness of C Tutor were investigated. Anonymous data about students and their experience in the course, which also included the usage of C Tutor, were collected in a survey in Portugal and Serbia. Quantitative methods, including descriptive statistics, clustering, statistical testing of independence, and partial correlation analysis, were applied in analyses of survey data. The distribution of grades differed between the two countries, but overall attitudes were similar. Various uncovered patterns involving student attitudes and usage of C Tutor may serve as a starting point for new research studies.info:eu-repo/semantics/publishedVersio
    corecore