Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
About

About

I hold a PhD on Computer Science and 'im an Assistant Professor of Computer Science at the Polytechnic Institute of Porto. I'm also a researcher in the field of e-learning interoperability and programming languages learning at the Center for Research in Advanced Computing Systems (CRACS) research group of INESC TEC Porto. I'm also the author of 5 books regarding Android development and almost 100 scientific publications focused on computer science education.

Interest
Topics
Details

Details

  • Name

    Ricardo Queirós
  • Cluster

    Computer Science
  • Role

    Senior Researcher
  • Since

    01st January 2012
001
Publications

2020

Authoring Game-Based Programming Challenges to Improve Students’ Motivation

Authors
Paiva, JC; Leal, JP; Queirós, R;

Publication
Advances in Intelligent Systems and Computing

Abstract
One of the great challenges in programming education is to keep students motivated while working on their programming assignments. Of the techniques proposed in the literature to engage students, gamification is arguably the most widely spread and effective method. Nevertheless, gamification is not a panacea and can be harmful to students. Challenges comprising intrinsic motivators of games, such as graphical feedback and game-thinking, are more prone to have longterm positive effects on students, but those are typically complex to create or adapt to slightly distinct contexts. This paper presents Asura, a game-based programming assessment environment providing means to minimize the hurdle of building game challenges. These challenges invite the student to code a Software Agent to solve a certain problem, in a way that can defeat every opponent. Moreover, the experiment conducted to assess the difficulty of authoring Asura challenges is described. © 2020, Springer Nature Switzerland AG.

2020

GEdIL—Gamified Education Interoperability Language

Authors
Swacha, J; Paiva, JC; Leal, JP; Queiros, R; Montella, R; Kosta, S;

Publication
Information

Abstract
The paper introduces Gamified Education Interoperability Language (GEdIL), designed as a means to represent the set of gamification concepts and rules applied to courses and exercises separately from their actual educational content. This way, GEdIL allows not only for an easy yet effective specification of gamification schemes for educational purposes, but also sharing them among instructors and reusing in various courses. GEdIL is published as an open format, independent from any commercial vendor, and supported with dedicated open-source software.

2020

Game-Based Coding Challenges to Foster Programming Practice

Authors
Paiva, JC; Leal, JP; Queirós, R;

Publication
OpenAccess Series in Informatics

Abstract
The practice is the crux of learning to program. Automated assessment plays a key role in enabling timely feedback without access to teachers but alone is insufficient to engage students and maximize the outcome of their practice. Graphical feedback and game-thinking promote positive effects on students' motivation as shown by some serious programming games, but those games are complex to create and adapt. This paper presents Asura, an environment for assessment of game-based coding challenges, built on a specialized framework, in which students are invited to develop a software agent (SA) to play it. During the coding phase, students can take advantage of the graphical feedback to complete the proposed task. Some challenges also encourage students to think of a SA that plays in a setting with interaction among SAs. In such a case, the environment supports the creation and visualization of tournaments among submitted agents. Furthermore, the validation of this environment from the learners' perspective is also described. 2012 ACM Subject Classification Applied computing ! Interactive learning environments; Applied computing ! E-learning.

2020

On the Nature of Programming Exercises

Authors
Simões, A; Queirós, R;

Publication
OpenAccess Series in Informatics

Abstract
There are countless reasons cited in scientific studies to explain the difficulties in programming learning. The reasons range from the subject's complexity, the ineffective teaching and study methods, to psychological aspects such as demotivation. Still, learning programming often boils down to practice on exercise solving. Hence, it is essential to understand that the nature of a programming exercise is an important factor for the success and consistent learning. This paper explores different approaches on the creation of a programming exercise, starting with realizing how it is currently formalized, presented and evaluated. From there, authors suggest variations that seek to broaden the way an exercise is solved and, with this diversity, increase student engagement and learning outcome. The several types of exercises presented can use gamification techniques fostering student motivation. To contextualize the student with his peers, we finish presenting metrics that can be obtained by existing automatic assessment tools. 2012 ACM Subject Classification Applied computing ! Education.

2019

PROud-A Gamification Framework Based on Programming Exercises Usage Data

Authors
Queiros, R;

Publication
INFORMATION

Abstract
Solving programming exercises is the best way to promote practice in computer programming courses and, hence, to learn a programming language. Meanwhile, programming courses continue to have an high rate of failures and dropouts. The main reasons are related with the inherent domain complexity, the teaching methodologies, and the absence of automatic systems with features such as intelligent authoring, profile-based exercise sequencing, content adaptation, and automatic evaluation on the student's resolution. At the same time, gamification is being used as an approach to engage learners' motivations. Despite its success, its implementation is still complex and based on ad-hoc and proprietary solutions. This paper presents PROud as a framework to inject gamification features in computer programming learning environments based on the usage data from programming exercises. This data can be divided into two categories: generic data produced by the learning environmentsuch as, the number of attempts and the duration that the students took to solve a specific exerciseor code-specific data produced by the assessment toolsuch as, code size, use memory, or keyword detection. The data is gathered in cloud storage and can be consumed by the learning environment through the use of a client library that communicates with the server through an established Application Programming Interface (API). With the fetched data, the learning environment can generate new gamification assets (e.g., leaderboards, quests, levels) or enrich content adaptations and recommendations in the inner components such as the sequencing tools. The framework is evaluated on its usefulness in the creation of a gamification asset to present dynamic statistics on specific exercises.