1,769 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

    Teaching programming using computer games: a program language agnostic approach

    Get PDF

    A collaborative and experiential learning model powered by real-world projects

    Get PDF
    Information Technology (IT) curricula\u27s strong application component and its focus on user centeredness and team work require that students experience directly real-world projects for real users of IT solutions. Although the merit of this IT educational tenet is universally recognized, delivering collaborative and experiential learning has its challenges. Reaching out to identify projects formulated by actual organizations adds significantly to course preparation. There is a certain level of risk involved with delivering a useful solution while, at the same time, enough room should be allowed for students to experiment with, be wrong about, review, and learn. Challenges pertaining to the real-world aspect of problem-based learning are compounded by managing student teams and assessing their work such that both individual and collective contributions are taken into account. Finally, the quality of the project releases is not the only measure of student learning. Students should be given meaningful opportunities to practice, improve, and demonstrate their communication and interpersonal skills. In this paper we present our experience with two courses in which teams of students worked on real-world projects involving three external partners. We describe how each of the challenges listed above has impacted the course requirements, class instruction, team dynamics, assessment, and learning in these courses. Course assessment and survey data from students are linked to learning outcomes and point to areas where the collaborative and experiential learning model needs improvement

    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

    Teaching Discrete Structures: A systematic review of the literature

    Get PDF
    This survey paper reviews a large sample of publications on the teaching of discrete structures and discrete mathematics in computer science curricula. The approach is systematic, in that a structured search of electronic resources has been conducted, and the results are presented and quantitatively analysed. A number of broad themes in discrete structures education are identified relating to course content, teaching strategies and the means of evaluating the success of a course

    Teaching Discrete Structures: A systematic review of the literature

    Get PDF
    This survey paper reviews a large sample of publications on the teaching of discrete structures and discrete mathematics in computer science curricula. The approach is systematic, in that a structured search of electronic resources has been conducted, and the results are presented and quantitatively analysed. A number of broad themes in discrete structures education are identified relating to course content, teaching strategies and the means of evaluating the success of a course
    • …
    corecore