A growing number people with different backgrounds writes programs of some sort. Programming has an inherent essential difficulty that is considered hard to learn (and teach) for many people.
I was involved in the organization of catalog of programming misconceptions (see https://progmiscon.org, in collaboration with the LuCE Research Lab).
I have participated in a Dagstuhl Seminar on Notional Machines and Programming Language Semantics in Education.
I often serve as PC member of ITiCSE - ACM Conference on Innovation and Technology in Computer Science Education and Koli Calling - International Conference on Computing Education Research, 2016-22. I am a member of the International Committee of the SIGSCE Technical Symposium.
I work on tools to facilitate understanding of program state (variable behaviour) and programming metaphors (object-orientation).
Click on the icon to see related publications.
Jinter
- Jinter: A Hint Generation System for Java Exercises.
Jorge A. Gonçalves, André L. Santos
ITiCSE 2023
A system capable of generating feedback hints about how to proceed or fix a Java exercise targeting the first stages of programming learning. This work was developed in the MSc thesis of Jorge Gonçalves.
Jask
- Jask: Generation of Questions About Learners' Code in Java.
André L. Santos, Tiago Soares, Nuno Garrido, Teemu Lehtinen
ITiCSE 2022 - Let's Ask Students About Their Programs, Automatically.
Teemu Lehtinen, André L. Santos, Juha Sorva
ICPC 2021
A system capable of generating questions about the Java code (static and dynamic) targeting the first stages of programming learning. In collaboration with the LeTech Research Group. This work was developed in the MSc thesis of Tiago Soares.
PandionJ
- Enhancing Visualizations in Pedagogical Debuggers by Leveraging on Code Analysis.
André L. Santos
Koli Calling 2018 - An exploratory study of how programming instructors illustrate variables and control flow.
André L. Santos, Hugo S. Sousa
Koli Calling 2017 - PandionJ: a pedagogical debugger featuring illustrations of variable tracing and look-ahead.
André L. Santos, Hugo S. Sousa
Koli Calling 2017
An educational Java debugger that leverages on detecting variable roles to provide rich are meaningful visualisations of state. This work was initially developed in the MSc thesis of Hugo Sousa.
This tool also includes most of the ideas previously developed in AguiaJ. The tool is currently being used at the introductory programming courses of our institution. Downloads and more information available at: https://pandionj.iscte-iul.pt
AguiaJ
- Novel interaction metaphors for object-oriented programming concepts.
André L. Santos
Koli Calling 2014 - An open-ended environment for teaching Java in context.
André L. Santos
ITiCSE 2012 - Developing contexts for teaching Java using AGUIA/J.
André L. Santos
ITiCSE 2012 - AGUIA/J: a tool for interactive experimentation of objects.
André L. Santos
ITiCSE 2011
An educational runtime for Java (based on class reflection) that embodies metaphors of object-orientation allowing fast experimentation of objects. (website URL no longer available, visit the old one)