Search Results

Documents authored by Santos, André L.


Document
Complete Volume
OASIcs, Volume 122, ICPEC 2024, Complete Volume

Authors: André L. Santos and Maria Pinto-Albuquerque

Published in: OASIcs, Volume 122, 5th International Computer Programming Education Conference (ICPEC 2024)


Abstract
OASIcs, Volume 122, ICPEC 2024, Complete Volume

Cite as

5th International Computer Programming Education Conference (ICPEC 2024). Open Access Series in Informatics (OASIcs), Volume 122, pp. 1-238, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Copy BibTex To Clipboard

@Proceedings{santos_et_al:OASIcs.ICPEC.2024,
  title =	{{OASIcs, Volume 122, ICPEC 2024, Complete Volume}},
  booktitle =	{5th International Computer Programming Education Conference (ICPEC 2024)},
  pages =	{1--238},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-347-8},
  ISSN =	{2190-6807},
  year =	{2024},
  volume =	{122},
  editor =	{Santos, Andr\'{e} L. and Pinto-Albuquerque, Maria},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2024},
  URN =		{urn:nbn:de:0030-drops-209684},
  doi =		{10.4230/OASIcs.ICPEC.2024},
  annote =	{Keywords: OASIcs, Volume 122, ICPEC 2024, Complete Volume}
}
Document
Front Matter
Front Matter, Table of Contents, Preface, Conference Organization

Authors: André L. Santos and Maria Pinto-Albuquerque

Published in: OASIcs, Volume 122, 5th International Computer Programming Education Conference (ICPEC 2024)


Abstract
Front Matter, Table of Contents, Preface, Conference Organization

Cite as

5th International Computer Programming Education Conference (ICPEC 2024). Open Access Series in Informatics (OASIcs), Volume 122, pp. 0:i-0:xii, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Copy BibTex To Clipboard

@InProceedings{santos_et_al:OASIcs.ICPEC.2024.0,
  author =	{Santos, Andr\'{e} L. and Pinto-Albuquerque, Maria},
  title =	{{Front Matter, Table of Contents, Preface, Conference Organization}},
  booktitle =	{5th International Computer Programming Education Conference (ICPEC 2024)},
  pages =	{0:i--0:xii},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-347-8},
  ISSN =	{2190-6807},
  year =	{2024},
  volume =	{122},
  editor =	{Santos, Andr\'{e} L. and Pinto-Albuquerque, Maria},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2024.0},
  URN =		{urn:nbn:de:0030-drops-209694},
  doi =		{10.4230/OASIcs.ICPEC.2024.0},
  annote =	{Keywords: Front Matter, Table of Contents, Preface, Conference Organization}
}
Document
A Domain-Specific Language for Dynamic White-Box Evaluation of Java Assignments

Authors: Afonso B. Caniço and André L. Santos

Published in: OASIcs, Volume 122, 5th International Computer Programming Education Conference (ICPEC 2024)


Abstract
Programming exercises involving algorithms typically involve time and spatial constraints. Automated assessments for such implementations are often carried out in a black-box manner or through static analysis of the code, without considering the internal execution properties, which could lead to falsely positive evaluations of students' solutions. We present Witter, a domain-specific language for defining white-box test cases for the Java language. We evaluated programming assignment submissions from a Data Structures and Algorithms course against Witter’s test cases to determine if our approach could offer additional insight regarding incomplete algorithmic behaviour requirements. We found that a significant amount of student solutions fail to meet the desired algorithmic behavior (approx. 21%), despite passing black-box tests. Hence, we conclude that white-box tests are useful to achieve a thorough automated evaluation of this kind of exercises.

Cite as

Afonso B. Caniço and André L. Santos. A Domain-Specific Language for Dynamic White-Box Evaluation of Java Assignments. In 5th International Computer Programming Education Conference (ICPEC 2024). Open Access Series in Informatics (OASIcs), Volume 122, pp. 2:1-2:13, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Copy BibTex To Clipboard

@InProceedings{b.canico_et_al:OASIcs.ICPEC.2024.2,
  author =	{B. Cani\c{c}o, Afonso and Santos, Andr\'{e} L.},
  title =	{{A Domain-Specific Language for Dynamic White-Box Evaluation of Java Assignments}},
  booktitle =	{5th International Computer Programming Education Conference (ICPEC 2024)},
  pages =	{2:1--2:13},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-347-8},
  ISSN =	{2190-6807},
  year =	{2024},
  volume =	{122},
  editor =	{Santos, Andr\'{e} L. and Pinto-Albuquerque, Maria},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2024.2},
  URN =		{urn:nbn:de:0030-drops-209715},
  doi =		{10.4230/OASIcs.ICPEC.2024.2},
  annote =	{Keywords: White-box assessment, student assessment, programming education}
}
Document
Educational Program Visualizations Using Synthetized Execution Information

Authors: Rodrigo Mourato and André L. Santos

Published in: OASIcs, Volume 122, 5th International Computer Programming Education Conference (ICPEC 2024)


Abstract
Visualization is a powerful tool for explaining, understanding, and debugging computations. Over the years, several visualization tools have been developed for educational purposes. Most of these tools feed visualization engines using the raw program state data available provided by the debugger API. While this suffices in certain contexts, there are situations where additional relevant information could aid in building up more comprehensive visualizations. This paper presents two novel visualizations of Paddle, an educational programming environment based on synthesized program execution information. We generate execution traces and relevant program states through static and dynamic analysis of the execution data. The synthesized information captures program behaviors that facilitate the creation of comprehensive and rich visualizations involving arrays that depict position reads, writes, moves, and swaps.

Cite as

Rodrigo Mourato and André L. Santos. Educational Program Visualizations Using Synthetized Execution Information. In 5th International Computer Programming Education Conference (ICPEC 2024). Open Access Series in Informatics (OASIcs), Volume 122, pp. 10:1-10:8, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Copy BibTex To Clipboard

@InProceedings{mourato_et_al:OASIcs.ICPEC.2024.10,
  author =	{Mourato, Rodrigo and Santos, Andr\'{e} L.},
  title =	{{Educational Program Visualizations Using Synthetized Execution Information}},
  booktitle =	{5th International Computer Programming Education Conference (ICPEC 2024)},
  pages =	{10:1--10:8},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-347-8},
  ISSN =	{2190-6807},
  year =	{2024},
  volume =	{122},
  editor =	{Santos, Andr\'{e} L. and Pinto-Albuquerque, Maria},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2024.10},
  URN =		{urn:nbn:de:0030-drops-209799},
  doi =		{10.4230/OASIcs.ICPEC.2024.10},
  annote =	{Keywords: Introductory programming, visualization, comprehension}
}
Document
Invited Talk
Shifting programming education assessment from exercise outputs toward deeper comprehension (Invited Talk)

Authors: André L. Santos

Published in: OASIcs, Volume 112, 4th International Computer Programming Education Conference (ICPEC 2023)


Abstract
Practice and assessment in introductory programming courses are typically centered on problems that require students to write code to produce specific outputs. While these exercises are necessary and useful for providing practice and mastering syntax, their solutions may not effectively measure the learners’ real understanding of programming concepts. Misconceptions and knowledge gaps may be hidden under an exercise solution with correct outputs. Furthermore, obtaining answers has never been so easy in the present era of chatbots, so why should we care (much) about the solutions? Learning a skill is a process that requires iteration and failing, where feedback is of utmost importance. A programming exercise is a means to build up reasoning capabilities and strategic knowledge, not an end in itself. It is the process that matters most, not the exercise solution. Assessing if the learning process was effective requires much more than checking outputs. I advocate that introductory programming learning could benefit from placing more emphasis on assessing learner comprehension, over checking outputs. Does this mean that we should not check if the results are correct? Certainly not, but a significant part of the learning process would focus on assessing and providing feedback regarding the comprehension of the written code and underlying concepts. Automated assessment systems would reflect this shift by comprising evaluation items for such a purpose, with adequate feedback. Achieving this involves numerous challenges and innovative technical approaches. In this talk, I present an overview of past and future work on tools that integrate code comprehension aspects in the process of solving programming exercises.

Cite as

André L. Santos. Shifting programming education assessment from exercise outputs toward deeper comprehension (Invited Talk). In 4th International Computer Programming Education Conference (ICPEC 2023). Open Access Series in Informatics (OASIcs), Volume 112, pp. 1:1-1:5, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)


Copy BibTex To Clipboard

@InProceedings{santos:OASIcs.ICPEC.2023.1,
  author =	{Santos, Andr\'{e} L.},
  title =	{{Shifting programming education assessment from exercise outputs toward deeper comprehension}},
  booktitle =	{4th International Computer Programming Education Conference (ICPEC 2023)},
  pages =	{1:1--1:5},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-290-7},
  ISSN =	{2190-6807},
  year =	{2023},
  volume =	{112},
  editor =	{Peixoto de Queir\'{o}s, Ricardo Alexandre and Teixeira Pinto, M\'{a}rio Paulo},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2023.1},
  URN =		{urn:nbn:de:0030-drops-184970},
  doi =		{10.4230/OASIcs.ICPEC.2023.1},
  annote =	{Keywords: Introductory programming, assessment, comprehension}
}
Document
Sprinter: A Didactic Linter for Structured Programming

Authors: Francisco Alfredo, André L. Santos, and Nuno Garrido

Published in: OASIcs, Volume 102, Third International Computer Programming Education Conference (ICPEC 2022)


Abstract
Code linters are tools for detecting improper uses of programming constructs and violations of style issues. Despite that professional linters are available for numerous languages, they are not targeted to introductory programming, given their prescriptive nature that does not take into consideration a didactic viewpoint of learning programming fundamentals. We present Sprinter, a didactic code linter for structured programming supporting Java whose novelty aspects are twofold: (a) providing formative feedback on code with comprehensive explanatory messages (rather then prescriptive); (b) capability of detecting some control-flow issues to a deeper extent than professional linters. We review Sprinter features against popular tools, namely IntelliJ IDEA and Sonarlint.

Cite as

Francisco Alfredo, André L. Santos, and Nuno Garrido. Sprinter: A Didactic Linter for Structured Programming. In Third International Computer Programming Education Conference (ICPEC 2022). Open Access Series in Informatics (OASIcs), Volume 102, pp. 2:1-2:8, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022)


Copy BibTex To Clipboard

@InProceedings{alfredo_et_al:OASIcs.ICPEC.2022.2,
  author =	{Alfredo, Francisco and Santos, Andr\'{e} L. and Garrido, Nuno},
  title =	{{Sprinter: A Didactic Linter for Structured Programming}},
  booktitle =	{Third International Computer Programming Education Conference (ICPEC 2022)},
  pages =	{2:1--2:8},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-229-7},
  ISSN =	{2190-6807},
  year =	{2022},
  volume =	{102},
  editor =	{Sim\~{o}es, Alberto and Silva, Jo\~{a}o Carlos},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2022.2},
  URN =		{urn:nbn:de:0030-drops-166063},
  doi =		{10.4230/OASIcs.ICPEC.2022.2},
  annote =	{Keywords: structured programming, code quality, code linter}
}
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail