1,633 research outputs found

    Python for teaching introductory programming: A quantitative evaluation

    Get PDF
    This paper compares two different approaches of teaching introductory programming by quantitatively analysing the student assessments in a real classroom. The first approach is to emphasise the principles of object-oriented programming and design using Java from the very beginning. The second approach is to first teach the basic programming concepts (loops, branch, and use of libraries) using Python and then move on to oriented programming using Java. Each approach was adopted for one academic year (2008-09 and 2009-10) with first year undergraduate students. Quantitative analysis of the student assessments from the first semester of each year was then carried out. The results of this analysis are presented in this paper. These results suggest that the later approach leads to enhanced learning of introductory programming concepts by students

    Emergent requirements for supporting introductory programming

    Get PDF
    The problems associated with learning and teaching first year University Computer Science (CS1) programming classes are summarized showing that various support tools and techniques have been developed and evaluated. From this review of applicable support the paper derives ten requirements that a support tool should have in order to improve CS1 student success rate with respect to learning and understanding

    Teaching and learning in live online classrooms

    Get PDF
    Online presence of information and services is pervasive. Teaching and learning are no exception. Courseware management systems play an important role in enhancing instructional delivery for either traditional day, full-time students or non-traditional evening, party-time adult learners enrolled in online programs. While online course management tools are with no doubt practical, they limit, however, live or synchronous communication to chat rooms, whose discourse has little in common with face-to-face class communication. A more recent trend in online teaching and learning is the adoption and integration of web conferencing tools to enable live online classrooms and recreate the ethos of traditional face-to-face sessions. In this paper we present the experience we have had with the adoption of the LearnLinc® web conferencing tool, an iLinc Communications, Inc. product. We have coupled LearnLinc with Blackboard®, for the online and hybrid computer science courses we offered in the past academic year in the evening undergraduate and graduate computer science programs at Rivier College. Twelve courses, enrolling over 150 students, have used the synchronous online teaching capabilities of LearnLinc. Students who took courses in the online or hybrid format could experience a comparable level of interaction, participation, and collaboration as in traditional classes. We solicited student feedback by administering a student survey to over 100 students. The 55% response rate produced the data for this paper\u27s study. We report on the study\u27s findings and show students\u27 rankings of evaluation criteria applied to hybrid and online instructional formats, with or without a web conferencing tool. Our analysis shows that students ranked favorably LearnLinc live sessions added to Blackboard-only online classes. In addition, how they learned in live online classrooms was found to be the closest to the hybrid class experience with regard to teaching practices they perceived as most important to them, such as seeking instructor\u27s assistance, managing time on task, and exercising problem solving skills

    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

    A citation analysis of the ACE2005 - 2007 proceedings, with reference to the June 2007 CORE conference and journal rankings

    Full text link
    This paper compares the CORE rankings of computing education conferences and journals to the frequency of citation of those journals and conferences in the ACE2005, 2006 and 2007 proceedings. The assumption underlying this study is that citation rates are a measure of esteem, and so there should be a positive relationship between citation rates and rankings. The CORE conference rankings appear to broadly reflect the ACE citations, but there are some inconsistencies between citation rates and the journal rankings. The paper also identifies the most commonly cited books in these ACE proceedings. Finally, in the spirit of "Quis custodiet ipsos custodes?" the paper discusses some ways in which the CORE rankings process itself might in future be made more transparent and open to scholarly discourse. © 2008, Australian Computer Society, Inc

    Exploring machine learning methods to automatically identify students in need of assistance

    Full text link
    Copyright 2015 ACM. Methods for automatically identifying students in need of assistance have been studied for decades. Initially, the work was based on somewhat static factors such as students' educational background and results from various questionnaires, while more recently, constantly accumulating data such as progress with course assignments and behavior in lectures has gained attention. We contribute to this work with results on early detection of students in need of assistance, and provide a starting point for using machine learning techniques on naturally accumulating programming process data. When combining source code snapshot data that is recorded from students' programming process with machine learning methods, we are able to detect high- and low-performing students with high accuracy already after the very first week of an introductory programming course. Comparison of our results to the prominent methods for predicting students' performance using source code snapshot data is also provided. This early information on students' performance is beneficial from multiple viewpoints. Instructors can target their guidance to struggling students early on, and provide more challenging assignments for high-performing students. Moreover, students that perform poorly in the introductory programming course, but who nevertheless pass, can be monitored more closely in their future studies

    Проблемите в обучението на начинаещите програмисти и възможности за тяхното преодоляване

    Get PDF
    Доклад, поместен в сборника на Националната конференция "Образованието в информационното общество", Пловдив, май, 2011 г.Начинаещите програмисти намират въведението в програмирането за доста трудно. Множеството от нови знания, които трябва да бъдат усвоени, действат демотивиращо. На по-късен етап от обучението се регистрира наличие на пропуски в познанията относно основните алгоритмични конструкции и парадигми. Представя се една възможност за повишаване на способностите за решаване на задачи чрез среда за анимирано представяне на алгоритми.Асоциация "Развитие на информационното общество", Институт по математика и информатика при БАН, Пловдивски университе

    Performance and Consistency in Learning to Program

    Get PDF
    Performance and consistency play a large role in learning. Decreasing the effort that one invests into course work may have short-term benefits such as reduced stress. However, as courses progress, neglected work accumulates and may cause challenges with learning the course content at hand. In this work, we analyze students' performance and consistency with programming assignments in an introductory programming course. We study how performance, when measured through progress in course assignments, evolves throughout the course, study weekly fluctuations in students' work consistency, and contrast this with students' performance in the course final exam. Our results indicate that whilst fluctuations in students' weekly performance do not distinguish poor performing students from well performing students with a high accuracy, more accurate results can be achieved when focusing on the performance of students on individual assignments which could be used for identifying struggling students who are at risk of dropping out of their studies.Peer reviewe

    Introductory Programming and the Didactic Triangle

    Full text link
    In this paper, we use Kansanen's didactic triangle to structure and analyse research on the teaching and learning of programming. Students, teachers and course content are the three entities that form the corners of the didactic triangle. The edges of the triangle represent the relationships between these three entities. We argue that many computing educators and computing education researchers operate from within narrow views of the didactic triangle. For example, computing educators often teach programming based on how they relate to the computer, and not how the students relate to the computer. We conclude that, while research that focuses on the corners of the didactic triangle is sometimes appropriate, there needs to be more research that focuses on the edges of the triangle, and more research that studies the entire didactic triangle. © 2010, Australian Computer Society, Inc
    corecore