Academic Year 2023-2024

COMPUTER SCIENCE EDUCATION

Teachers

Claudio Mirolo
Unit Credits
6
Teaching Period
Second Period
Course Type
Supplementary
Prerequisites. Basic concepts of computer science and programming.
Teaching Methods. Theoretical lessons and discussion of meaningful examples.
Verification of Learning. Organization of the exams:

Report and oral discussion relative to either a (proposed) learning unit or one ore more articles of computing education research.

Assessment marks:

https://www.uniud.it/it/didattica/corsi/area-scientifica/scienze-matematiche-informatiche-multimediali-fisiche/laurea/informatica/studiare/criteri.pdf

More Information. materials:

https://www.dmif.uniud.it/claudio/teaching/didattica_informatica/

Objectives
The course proposes a reflection on the scientific and methodological foundations of computer science, in general, and on computer programming as a key activity to appreciate the nature of computing.

On this basis, it discusses the implications for the learning of computing topics and skills.

The course will first discuss the nature, foundations and richness of computer science in connection with the related educational goals.

Then, it will consider the learning of programming and the key role of abstraction in the programming tasks.

Finally, a selection of research topics in computer science education will be discussed.

Dublin Descriptors

1.1. Knowledge and understanding

– Knowledge of the historical and epistemological roots of computer science;

– Knowledge of the main curricular models for teaching computing;

– Knowledge of tools to support the learning of computing and programming;

– Knowledge of assessment techniques to monitor the learning of the discipline;

– Knowledge of the main research topics in computing and programming education.

1.2 Applying knowledge and understanding

– Being able to analyze the computing concepts from an educational viewpoint;

– Being able to design simple learning units to introduce computing and programming concepts.

2.1 Making judgements

– Being able to analyze the topics of the discipline from an educational viewpoint;

– Being able to schedule the content of a learning unit in a suitable order.

– Being able to choose appropriate tools to support the learning of concepts or the development of skills in computing and programming.

2.2 Communication skills.

– Being able to present a computing concept in a suitable form for learning purposes.

2.3 Learning skills

– Being able to plan literature on computing education research;

– Being able to understand research papers on computing education.

See also:

https://www.uniud.it/it/didattica/info-didattiche/regolamento-didattico-del-corso/LM-informatica/all-B2

Contents
The course proposes a reflection on the scientific and methodological foundations of computer science, in general, and on computer

programming as a key activity to appreciate the nature of computing.

On this basis, it discusses the implications for the learning of computing topics and skills.

The course will first discuss the nature, foundations and richness of computer science in connection with the related educational goals.

Then, it will consider the learning of programming and the key role of abstraction in the programming tasks.

Finally, a selection of research topics in computer science education will be discussed.

Part I – Historical/epistemological foundations of computer science and computing education

– Computing as a tool vs. computing as a discipline.

– Development of school computing education in Europe.

– Curricular models: syllabi and teaching approaches.

– The nature of computing: mathematical, scientific and engineering perspectives.

– Other perspective about computing.

– Examples of learning units in connection with the diversity of perspectives.

– Computing concepts in a historical perspective.

Part II – Nature and teaching of programming

– Introductory programming in the CC2001 models.

– Imperative-first, functional-first and object-first approaches.

– Programming paradigms from an educational perspective.

– Environments and tools for learning programming.

– Research on the teaching and learning of programming.

Texts
Sally A. Fincher & Anthony V. Robins, editors

The Cambridge Handbook of Computing Education Research

Cambridge University Press, 2019