The Art of Programming in a Technical Institute after the Italian Secondary School Reform Alberto Barbero Technical Institute"G. Vallauri, Fossano, Italy Barbara Demo Dip. Informatica, University of Torino, Italy 1ISSEP Bratislava
Summary What kind of CS in high schools – Manifesto for Informatics in schools – Informatics as a science – What do we teach? High school Italian Reform: working with teachers is a must first year technical secondary school students: programming Structured problem solving A proposal using Scratch 2ISSEP Bratislava
Manifesto of Informatics in schools Italian Secondary School Reform What CS in high schools Manifesto published in May 2010 by the main Computer Science academic associations in Italy – CINI, GII, GRIN three basic perceptions of Informatics o Pragmatic : Hardware & software tools to solve everyday problems o Technological: knowing languages and systems in order to implement o Scientific: Informatics is also the science funding hw and sw developments of the middle of the XXiethcentury 3ISSEP Bratislava
Reform of Italian high schools Opportunity to have voice in defining curricula – mandatory feeling involved in schools Opportunity to work with teachers Spontaneous requests by teachers Cooperation with Dschola an Association of schools many technical but not only Other associations are interested, museums, … Activity here described: 4ISSEP Bratislava
new curricula: from schools bottom up from academia top down its time for a large common action for shaping what shall be taught – to pupils of different age levels – in different types of school The point is exactly: what do we have to teach? 5ISSEP Bratislava
A proposal for the curriculum of the first year in Secondary School N. Wirth, Program development by stepwise refinement, CACM, April 1971 in the Reform of Italian Sec. School guidelines: … Introduction to the concept of algorithm not unknown to students thus the introductive part can go quite quickly programmingproblem solving 6ISSEP Bratislava
N. Wirth, Program development by stepwise refinement, CACM, April 1971 Scratch Arduino and S4A The creative activity of programming – to be distinguished from coding- … It is here considered as a sequence of design decisions concerning the decomposition of tasks into subtasks and of data into data structures. programmingproblem solving 7ISSEP Bratislava
Some examples: think a number game Think a number Add 1 Multiply by 3 …….. Tell me the number you finished with Now I can tell you the number you thought at the beginning (x + 1) * 3 – x – 2 … = a x = (a – 1) / 2 Work with maths teachers 8ISSEP Bratislava
Think a number game 9ISSEP Bratislava
Calculator 10ISSEP Bratislava
High-low-guess-a-number Think a number between 1 and 999 I will guess your number with less questions than many humans Introducing time complexity …….. ………… In general: introducing to properties of algorithms 11ISSEP Bratislava
High-low-guess-a-number 12ISSEP Bratislava
What Informatics in high schools? – Programming and problem solving but not only from a technical point of view such as learn coding, also algorithms properties and systems organisation – Interactions with philosophy and history of science particularly in school types where these disciplines are present, for example in Licei, but also, in a softer form, in the other school types – Help from CS in proposing original ways for thinking to traditional concepts from other disciplines Informatics to look at some mathematical concepts from a different perspective Informatics and language 13ISSEP Bratislava
Papers by the group: Also written with teachers – A Contribution to the Discussion on Informatics and Robotics in Secondary Schools, same authors & F. Vaschetto, Robotics in Education, IEEE Conf., Wien, September 2011 B. Demo & all., In and Out of the School Activities Implementing IBSE and Constructionist Learning Methodologies By Robotics, Chapter in Robots in K-12 Education, February, 2012 E. Giovannetti, What kind of CS in secondary schools, Conf. DIDAMATICA, Workshop Informatics in Secondary Schools, Torino, May ISSEP Bratislava
Many thanks for your attention please write your comments to 15ISSEP Bratislava
Teorema di Böhm-Jacopini: Qualsiasi algoritmo può essere trasformato in un algoritmo equivalente composto soltanto di combinazioni di sequenze, selezioni e iterazioni. Chiameremo ben strutturato un algoritmo composto di sole "strutture fondamentali". Sequenza: è la forma più semplice di procedura per strutturare un algoritmo e consiste in una serie di istruzioni una dietro l'altra che la macchina dovrà eseguire in fila. Selezione: struttura algoritmica, che inizia con la verifica di una condizione logica C, cioè di una affermazione che può essere soltanto vera o falsa, che continua con una sequenza di azioni A, se la condizione C è verificata, o altrimenti continua con la sequenza di azioni B, e in entrambi i casi si riconduce, poi, a una continuazione unica. Iterazione: programma in cui la procedura ripete il ciclo fin quando sussistono le condizioni per la ripetizione, mentre nel caso opposto si esce dalla struttura ripetitiva. Fonti:Mauro La Torre; "Principi di informatica ", 1994, La Nuova Italia Editrice 16ISSEP Bratislava