4 research outputs found

    The Italian Job: Moving (Massively) Online a National Olympiad

    Get PDF
    The COVID-19 pandemic is having a pervasive effect worldwide, including local, national and international Olympiads in Informatics. Most national Olympiads had to be moved online, a process which poses a number of serious challenges. Help across countries is of uttermost importance in this context, to enable a successful continuation of the IOI during globally hard times. In this paper, we share the experience gained and tools produced during a year of online Olympiads in Italy, hoping that other countries can take profit of these (freely available) tools and suggestions for their own Olympiads

    Make your programs compete and watch them play in the Code Colosseum

    No full text
    Games have a role in many aspects of science, technology, and society. Also, games attract humans' interest and offer unique learning opportunities. Indeed, the role of games in education has a long tradition. In this paper we introduce Code Colosseum, a platform that takes competitive programming in the direction of games, instead of problems. By taking this direction, we aim to create a more engaging environment for students to compete in. The platform allows programs written by the contestants to compete in a realtime multiplayer game. The platform also allows to spectate the matches between the programs. The design and implementation of Code Colosseum has been kept as simple as possible, to facilitate participation, maintenance and setup. To assess the effectiveness of the approach, we organized a tournament with 16 students, from both high schools and universities, as a pilot experience for Code Colosseum. In this tournament they created programs to play the Royal Game of Ur, a board racing game. The feedback from the students about the experience was positive, and the suggestions received will be implemented for future experiences

    RStream: Simple and Efficient Batch and Stream Processing at Scale

    No full text
    Distributed data processing platforms aim to provide a balance between ease of use and performance. The question is: do they succeed? Systems like Apache Spark or Apache Flink offer a high-level programming model that results in simple and concise definition of the processing tasks, abstracting away most of the concerns associated to concurrency and distribution but at the cost of a large performance gap with custom programs that use low-level primitives to control distribution and resource usage. May we fill this gap? May alternative design choices yield better performance without sacrificing simplicity?This paper answers the above questions by introducing RStream, a novel data processing platform written in Rust. RStream provides a high-level programming model similar to that of mainstream data processing systems, which supports batch and stream processing, data transformations, grouping, aggregation, iterative computations, and time-based analytics, incurring in a much lower overhead, closer to that of custom, low-level code. In numerical terms, our evaluation shows that RStream programs present nearly identical complexity as similar programs written in Flink, delivering from 2X to 20X the throughput of Flink, rivaling custom MPI implementations

    Learning analytics in competitive programming training systems

    No full text
    In this paper we discuss the use of Analytics in oii-web, an online programming contest training system. We first provide an overview of the challenges in training for programming contests. Then we discuss the data collected in these years using oii-web, a platform devoted to the training of students for the Italian Olympiads in Informatics (Olimpiadi Italiane di Informatica-OII), and analyze them comparing two distinct groups of users in two distinct platforms built on oii-web, one devoted to students and one to their teachers. Most notably, the two groups are more similar than one would expect when dealing with programming contest training
    corecore