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

    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 ICER 2005-07 proceedings

    Full text link
    This paper identifies the most commonly cited conferences, journals and books of the 43 papers within the first three ICER proceedings. A large array of conferences, journals, and books were cited. However, only a small set of journals and conferences were cited frequently, and the majority were only cited within a single paper, which is consistent with a power law distribution, as predicted by Zipf's Law. The most commonly cited books are concerned with education in general (29%) or psychology (20%), while 17% of books are concerned with computer science education and 12% with computing content. The citation results for ICER are contrasted with earlier published citation analyses of SIGCSE 2007 and ACE2005-07. © 2009, Australian Computer Society, Inc

    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

    Web Science: expanding the notion of Computer Science

    No full text
    Academic disciplines which practice in the context of rapid external change face particular problems when seeking to maintain timely, current and relevant teaching programs. In different institutions faculty will tune and update individual component courses while more radical revisions are typically departmental-wide strategic responses to perceived needs. Internationally, the ACM has sought to define curriculum recommendations since the 1960s and recognizes the diversity of the computing disciplines with its 2005 overview volume. The consequent rolling program of revisions is demanding in terms of time and effort, but an inevitable response to the change inherent is our family of specialisms. Preparation for the Computer Curricula 2013 is underway, so it seems appropriate to ask what place Web Science will have in the curriculum landscape. Web Science has been variously described; the most concise definition being the ‘science of decentralized information systems’. Web science is fundamentally interdisciplinary encompassing the study of the technologies and engineering which constitute the Web, alongside emerging associated human, social and organizational practices. Furthermore, to date little teaching of Web Science is at undergraduate level. Some questions emerge - is Web Science a transient artifact? Can Web Science claim a place in the ACM family, Is Web Science an exotic relative with a home elsewhere? This paper discusses the role and place of Web Science in the context of the computing disciplines. It provides an account of work which has been established towards defining an initial curriculum for Web Science with plans for future developments utilizing novel methods to support and elaborate curriculum definition and review. The findings of a desk survey of existing related curriculum recommendations are presented. The paper concludes with recommendations for future activities which may help us determine whether we should expand the notion of computer science

    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
    • 

    corecore