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

    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

    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

    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

    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

    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

    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

    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
    corecore