Teaching Programming with Graphics: Pitfalls and a Solution

Luca Chiodini, Juha Sorva, Matthias Hauswirth

Research output: Chapter in Book/Report/Conference proceedingConference article in proceedingsScientificpeer-review

43 Downloads (Pure)


Many introductory programming courses employ graphics libraries that promote engagement and enable fun visuals. However, student excitement over graphical outputs is not a guarantee of conceptual understanding of programming, and graphics may even distract from intended learning outcomes. Our contribution is twofold. First, we analyze a selection of existing graphics libraries designed for novice programmers. We consider how these libraries foster clean decomposition, direct students’ attention to key content, and manage complexity; we find shortcomings in these respects. These shortcomings involve the libraries’ support for global coordinates and external graphics, as well as their rich APIs; we argue that these features, although powerful, are also potential pitfalls in student learning. Second, we present the design of a new graphics library, PyTamaro, which avoids the pitfalls with a minimalist design that eschews coordinates; we also outline a pedagogical approach that builds on PyTamaro’s strengths and deliberate limitations. We briefly discuss PyTamaro’s trade-offs in comparison to coordinate-based libraries. The work reported here paves the way for future empirical evaluations of PyTamaro and associated teaching practices.
Original languageEnglish
Title of host publicationProceedings of the 2023 ACM SIGPLAN International Symposium on SPLASH-E
EditorsMolly Q. Feldman, Michael Hilton
Number of pages12
ISBN (Electronic)979-8-4007-0390-4
Publication statusPublished - 18 Oct 2023
MoE publication typeA4 Conference publication
EventACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity - Cascais, Portugal
Duration: 22 Oct 202327 Oct 2023


ConferenceACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity
Abbreviated titleSPLASH
Internet address


Dive into the research topics of 'Teaching Programming with Graphics: Pitfalls and a Solution'. Together they form a unique fingerprint.

Cite this