16 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

    A collaborative approach to learning programming: a hybrid learning model

    Get PDF
    The use of cooperative working as a means of developing collaborative skills has been recognised as vital in programming education. This paper presents results obtained from preliminary work to investigate the effectiveness of Pair Programming as a collaborative learning strategy and also its value towards improving programming skills within the laboratory. The potential of Problem Based Learning as a means of further developing cooperative working skills along with problem solving skills is also examined and a hybrid model encompassing both strategies outlined

    iJava: un nuevo lenguaje para facilitar el paso del paradigma imperativo al orientado a objetos

    Get PDF
    La aplicación del enfoque procedural permite una presentación paulatina y escalonada de los conceptos de programación imperativa. Sin embargo, algunos alumnos tienen dificultades al pasar a estudiar orientación a objetos (OO), especialmente si se utiliza un lenguaje distinto en cada paradigma. Por otro lado, el empleo de Java en la docencia de ambos modelos es criticado por lo inadecuado que resulta desde el punto de vista pedagógico y la confusión, y malos hábitos, que puede llegar a generar en los alumnos. Para continuar aplicando el enfoque procedural facilitando la transición del paradigma imperativo al OO se ha desarrollado un nuevo lenguaje de programación imperativo denominado iJava. En este artículo se describe este lenguaje y su entorno de desarrollo específico, los aspectos pedagógicos que se han tenido en cuenta en su diseño y cómo favorece una transición paulatina hacia Java durante el aprendizaje de las bases de la programación imperativa. Finalmente se comenta la experiencia de su aplicación durante el curso 2008-09.Peer Reviewe

    The Effects of Objects-First and Objects-Late Methods on Achievements of OOP Learners

    Get PDF
    Our research explored the effects of objects-first and objects-late methods on achievements of object-oriented programming (OOP) learners during a graduate course. The course’s scope was virtually identical for two groups, but the structure of the contents differed in sequence. The objects-first method emphasized the design and discussion of the object-oriented concepts from the very beginning while the objects-late deferred these concepts to the late lectures. The objects-first learners used all visual functionalities of BlueJ IDE. However, the objects-late learners started with only the text-based interfaces of BlueJ and they benefited its visual support in the last lectures. At the end of the study, we found that there was a statistically significant difference between OOP learner groups

    Follow the river and you will find the C

    Full text link

    Student success model in programming course: A case study in UUM

    Get PDF
    The complexity and difficulty ascribed to computer programming has been asserted to be the causes of its high rate of failure record and attrition. It is opined that programming either to novice, middle learner, and the self-branded geeks is always a course to be apprehensive of different studies with varying findings. Studies on factors leading to the success of programming course in higher institution have been carried out. The record at Universiti Utara Malaysia (UUM) shows that 38% of semester one undergraduate students failed the programming course in 2013. This really motivates this study, which aims at investigating the practical factors affecting the success of programming courses, and to position its’ theoretically findings to complement the existing findings. Data were gathered using a quantitative approach, in which a set of questionnaire were distributed to 282 sampled respondents, who are undergraduate and postgraduate students of Information Technology (IT) and Information and Communication Technology (ICT). Having screened and cleaned the data, which led to the deletion of four outlier records, independent T-test, correlation, and regression were run to test the hypotheses. The results of Pearson correlation test reveal that teaching tools, OOP concepts, motivation, course evaluation, and mathematical aptitude are positively related to academic success in programming course, while fear is found to be negatively related. In addition, the regression analysis explains that all the elicited independent variables except fear are strongly related. Besides, the independent T-test also discovers no deference between groups with and without previous programming experience

    Why teach unix?

    Full text link
    This paper examines computing academics' conceptions of the Unix operating system, and the purpose of teaching Unix. Interview transcripts from nine academics were analysed phenomenographically. A small number of qualitatively different conceptions of Unix were identified, within two broad categories. The first broad category manifested a technical approach to Unix. Within this broad category, the conceptions of Unix were, from the least to most sophisticated ! (1) Unix as a set of unrelated commands; (2) Unix as a command line interface superior to GUIs; and (3) Unix as a problem solving tool. The second broad category was a non technical conception of Unix, in which Unix was seen as a resource that is cheap, secure and robust. With regard to teaching Unix, two broad categories of reasons were identified ! practical and pedagogical. These results for teachers are broadly consistent with an earlier phenomenographic study of student conceptions of Unix. © 2007, Australian Computer Society, Inc

    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

    Controversy on how to teach CS 1: A discussion on the SIGCSE-members mailing list

    No full text
    A discussion took place on the SIGCSE mailing list in late March of 2004 that raised important issues on how to teach introductory courses using Java. This article attempts to summarize several of the important points raised during this discussion, among them whether or how objects should be taught early or late in a CS 1 course, or indeed whether object-oriented languages should be postponed until a second course. There has been a tremendous shift to the use of Java in the CS 1 course at colleges and universities in the last several years. Reflecting this change, the Advanced Placement course in Computer Science, designed to provide a college-level computer science course for high school students, moved to Java in the 2003-2004 academic year. However, the use of Java and other object-oriented languages in introductory CS courses seems to be generating a lot of controversy among college faculty. Strong feelings about whether or how Java should be taught in introductory courses erupted in March, 2004, on the SIGCSE mailing list. Looking back at introductory textbooks using Java, there seems to have been a gradual change in approach over time. The first wave of Java textbooks primarily followed the structure of C+

    Teaching introductory programming: a quantitative evaluation of different approaches

    Get PDF
    © ACM, 2014. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Computing Education, 2014, Vol. 14, No. 4, Article 26, DOI: http://dx.doi.org/10.1145/266241
    corecore