Search

Published After
Published Before

Search Results

  • Mechanisms for teaching introductory programming using active learning
    407-421
    Views:
    27
    One of the requirements of teaching introductory programming to students whose branch of learning is engineering or science is bridging the gap between in-class lectures and real-world applications. Traditional passive approaches to lecturing often focus on the syntax of a language with little or no discussion of the process involved in using the language to design algorithms to solve real-world problems. One way of overcoming the limitations of traditional lecturing is by tailoring lectures towards becoming more student-oriented, a pedagogical methodology known as active learning. This paper explores mechanisms for implementing active learning in introductory programming courses in computer science.
  • Teaching multiparadigm programming based on object-oriented experiences
    171-182
    Views:
    25
    Multiparadigm programming is an emerging practice in computer technology. Co-existence of object-oriented, generic and functional techniques can better handle variability of projects. The present paper gives an overview of teaching multiparadigm programming approach through typical language concepts, tools in higher education. Students learning multiparadigm-oriented subjects would gain considerable expertise, which is highly needed by the industrial side in large-scale application development.
  • New style in teaching word processing
    417-426
    Views:
    31
    Teaching word processing is confined to looking through some menus and showing some functions of a word processor program, although technology presents just a small part of forming layouts. This fact causes that people who are writing documents spend a lot of time by trying to form, e.g., title pages or inner pages.
    The present paper deals with a design of an online course on word processing that fits better the needs of many users. The online course is designed for teaching (LA)TEX by leading the students to the technical issues of the typesetting system through layout and grammar rules: demonstrates the most important basic recommendations of typography and grammar rules through samples, and shows how to program the currently displayed layout in the (LA)TEX programming languages. This methodology suits better the common working habit, and can be a useful help in word processing documents.
  • Integrating elements of data science into high-school teaching: Naïve Bayes-classification algorithm and programming in Python
    307-316
    Views:
    99

    Probability theory and mathematical statistics are traditionally one of the most difficult chapters of mathematics to teach. One of the authors, Péter Princz has experience in teaching various topics via computer programming of the problem at hand as a class activity. The proposed method is to involve programming as a didactic tool in hard-to-teach topics. The intended goal in this case is to implement a naïve Bayes-classifier algorithm in Python and demonstrate the machine-learning capabilities of it by applying it to a real-world dataset of edible or poisonous mushrooms. The students would implement the algorithm in a playful and interactive way. The proposed incremental development process aligns well with the spirit of Tamás Varga who considered computers as modern tools of experimental problem solving as early as in the 1960s.

    Subject Classification: 97D40, 97D50, 97K50, 97K99, 97M60, 97P40, 97P50, 97U50

  • Teaching Java programming using case studies
    245-256
    Views:
    7
    The paper deals with the technical background and the pedagogical issues of a specific implementation for the collection, assessment and archiving of the students' assignments written in Java. The implemented system automatically applies object-oriented metrics on the collected works in order to measure the characteristic features of the assignments. Tutors use these results for the detection of plagiarisms and for the selection of outstanding works. The paper interprets the measured values within a real Java course held in the 3rd term of the Informatics bachelor study programme at the technical university. Students have several case studies devoted to the simulation of the ATM (Automatic Teller Machine) at disposal. We conclude that the access to the analyzed pool of case studies, blended with the Sun Learning Connection license from the Sun Microsystems, Inc., is an effective way of teaching programming in Java.
  • An interactive animation for learning sorting algorithms: How students reduced the number of comparisons in a sorting algorithm by playing a didactic game
    45-62
    Views:
    36
    Learning programming and understanding algorithms is one of the hardest tasks for novice computer science students. One of the basic algorithms they learn during the introductory programming and algorithms courses are the sorting algorithms. Students like learning these and other algorithms by animations and didactic games, however, these animations are not educationally useful in every case. In this article, we present our educational sorting game, which can be used to introduce the topic of sorting algorithms. The didactic game can be used later too, as a demonstrative tool for explaining the more efficient, quicksort algorithm. We conducted a pedagogical experiment, in which we examined the process of development of sorting algorithms by students while they used the mentioned didactic game. The results showed that students were able to create an algorithm to solve the sorting problem, and they improved its effectiveness by reducing the number of comparisons in the algorithm. They were also able to understand the importance of the efficiency of algorithms when we demonstrated them the quicksort algorithm using the same tool after the experiment.
  • The single-source shortest paths algorithms and the dynamic programming
    25-35
    Views:
    30
    In this paper we are going to present a teaching—learning method that help students look at three single-source shortest paths graph-algorithms from a so called "upperview": the algorithm based on the topological order of the nodes, the Dijkstra algorithm, the Bellman-Ford algorithm. The goal of the suggested method is, beyond the presentation of the algorithms, to offer the students a view that reveals them the basic and even the slight principal differences and similarities between the strategies. In order to succeed in this object, teachers should present the mentioned algorithms as cousin dynamic programming strategies.
  • "Upperview" algorithm design in teaching computer science in high schools
    221-240
    Views:
    39
    In this paper we are going to present a teaching/learning method and suggest a syllabus that help the high school students look at the algorithm design strategies from a so called "upperview": greedy, backtracking, divide and conquer, dynamic programming. The goal of the suggested syllabus is, beyond the presentation of the techniques, to offer the students a view that reveals them the basic and even the slight principal differences and similarities between the strategies. In consensus with the Comenius principle this is essential, if we want to master this field of programming ("To teach means scarcely anything more than to show how things differ from one another in their different purposes, forms, and origins. ... Therefore, he who differentiates well teaches well.").
  • Cultivating algorithmic thinking: an important issue for both technical and HUMAN sciences
    107-116
    Views:
    28
    Algorithmic thinking is a valuable skill that all people should master. In this paper we propose a one-semester, algorithm-oriented computer science course for human science students. According to our experience such an initiative could succeed only if the next recipe is followed: interesting and practical content + exciting didactical methods + minimal programming. More explicitly, we suggest: (1) A special, simple, minimal, pseudo-code like imperative programming language that integrates a graphic library. (2) Interesting, practical and problem-oriented content with philosophical implications. (3) Exciting, human science related didactical methods including art-based, inter-cultural elements.