Torna alla home
Torna alla home
.....
Open menu
Home
 
Search
 
MY
Articoli Salvati
 
Life
Smart Money
The Food Makers
Valore Responsabile
 
That's Round
Cover Story
Dossier
Firme dal futuro
Pitch News
Italiani dell'altro mondo
 
Economy
Education
Impact
Lifestyle
Startup
Tech
 
Agenda
Bandi
Live TV
 
Unstoppable Women
Bandi Istruzioni per l'uso
Imprenditori Sostenibili
Investimenti Digitali E Cripto
 
SIOS
 
STARTUPITALIA
Advisory Board
Area Investor
Lavora con noi
Chi siamo
I nostri autori
desc
EDUCATION

Come insegnare il pensiero computazionale senza programmi complicati

 ⏱ Leggi in 3 min
  ⏱3 min read
EDUCATION
Share article
Set prefered

Come insegnare il pensiero computazionale senza programmi complicati

Share article
Set prefered

Umberto Talamo, insegnante e ingegnere, spiega come il pensiero computazionale si possa insegnare anche ai più piccoli, con Scratch

Umberto Talamo, insegnante e ingegnere, spiega come il pensiero computazionale si possa insegnare anche ai più piccoli, con Scratch

Scuola
author avatar
Guest
17 mar 2016

Faccio una piccola premessa. Vorrei esprimere a tutti voi la mia personale interpretazione relativamente all’insegnamento del Pensiero Computazionale introdotto nella legge detta “la buona scuola”, che dal punto di vista  dei contenuti didattici, ritengo “una buona legge”. Premetto che per più di venti anni, oltre ad insegnare elettronica ed informatica negli Istituti Superiori, ho praticato la professione di ingegnere nel campo dell’automazione industriale e la robotica occupandomi in particolare di software. Ho sviluppato sia applicazioni per PC, PLC, sistemi SCADA, e MOTION SYSTEMS sviluppando software per impianti industriali, macchine di vario tipo e robot industriali. E’ stato bello e ritengo utile, anche alla mia professione di insegnante perché ho potuto riportare l’esperienza esterna nella scuola e quindi ai miei alunni.

scratch-og

Una inversione di paradigma

Chi insegna la materia informatica negli Istituti Tecnici di Istruzione Superiore conosce bene il concetto di paradigma di programmazione un insieme di idee scientifiche collettivamente accettato per dare un senso al mondo dei fenomeni [T.S. Kuhn]. La questione si è posta già negli anni ’60 con la programmazione funzionale, ma il contributo più decisivo in questo senso è stato dato probabilmente negli anni ’70 dalla cosiddetta programmazione logica prima, e dal boom di quella ad oggetti, dopo. Oggi i paradigmi di programmazione citati con una certa frequenza sono almeno una decina, anche se non sempre sono chiari i loro confini o la loro indipendenza. I paradigmi offrono una chiave di classificazione dei linguaggi: diremo che un linguaggio afferisce ad un paradigma se consente di scrivere i programmi in accordo ad esso.

Il pensiero computazionale

La competenza principale di un buon informatico è quella di saper programmare: così come il modo corretto e canonico per un buon docente di informatica è quello di insegnare che

non è corretto scrivere direttamente il codice senza una serie documentata di passaggi fatti a monte

Bene, questi passaggi, che poi portano alla fase finale che è la “codifica” rappresentano quello che viene definito “il pensiero computazionale”.

In sintesi sono:

  • Decomposition
  • Pattern Location
  • Abstraction
  • Algorithm

I bravi insegnanti (ma anche professionisti nel mondo del lavoro) hanno sempre detto: “Se fai tutti questi passaggi, la codifica ti viene  gratis”, cioè facile. La legge 107, art 1 comma 7 ci parla di Pensiero Computazionale e nella stessa non troverete la parola “coding ” o “programmazione” in senso informatico. Ed è giusto che sia così, concordo pienamente con gli autori della legge. In realtà potremmo insegnare il pensiero computazionale senza programmare, cosa tra l’altro possibile attraverso l’utilizzo di  metodi cosiddetti “Unplugged”.

Ma una strada più bella e creativa, più vicina sicuramente alla realtà che vivono i nostri alunni (nativi digitali) è quella di utilizzare il  Computer o le altre tecnologie disponibili (SmartPhone, Tablet, ecc.) e quindi il “coding”, cioè la programmazione. Sembra, la mia una considerazione, banale, scontata, ma se ci pensate bene non lo è, soprattutto per gli esperti della materia. Perché questo rappresenta un vero e proprio cambio di paradigma:

Metodo tradizionale:

Dalla costruzione del pensiero computazionale alla codifica finale (lo troverete in tutti i libri di informatica)

Inversione:

Dalla codifica alla costruzione del Pensiero Computazionale

Il linguaggio semplice: Scratch

Sembra un cosa complicata e contraddittoria, ricordate (se fai tutti questi passaggi, la codifica ti viene facile e gratis) questo perché i linguaggi di programmazione letterali (es. il C, C++, Java e quant’altro) sono complessi in se, con una sintassi che richiede un tempo di apprendimento specifico e una età minima di 15-16 anni (sperimentazione effettuata su una e seconda classe di Liceo durante un corso di Robotica educativa ). La difficoltà di scrivere programmi con linguaggi letterali e quindi “la possibilità  di liberare il pensiero computazionale” è  dimostrata anche dal fatto che nel mondo dell’automazione e della robotica industriale, se pure per finalità differenti (mancanza di tempo relativa alla progettazione di software, tempi stretti di messa in servizio, necessità di chiarezza del software stesso a fini manutentivi), si usano quasi esclusivamente linguaggi a blocchi ed è quasi sempre  “vietato” dalle specifiche dei clienti  l’utilizzo di tali linguaggi letterali. Quindi se avessi un linguaggio che mi permettesse di programmare in modo semplice, intuitivo e scorrevole, che non fosse un ostacolo, ma indicasse in modo naturale al computer le azioni che voglio compiere, potrei utilizzarlo come strumento di insegnamento e non come finalità del mio insegnamento. Per fortuna, questo strumento esiste, si chiama Scratch  ed è anche OpenSource. Esiste anche un ambiente chiamato Blockly che è in realtà una libreria di funzioni per programmatori esperti (sulla quale si basa es. il sito code.org oppure l’applicazione WEB “MIT App Inventor” che serve a creare app per smartphone…) ma io preferisco Scratch e i suoi derivati.

La robotica con Arduino

Questo tipo di approccio può essere usato anche per il Phisical Computing e la Robotica educativa utilizzando mBlock (derivato da Scratch) insieme alla piattaforma Hardware Arduino. Aggiungo in particolare che Arduino rappresenta un buon “entry level” per l’insegnamento dell’elettronica del Phisical computing e della Robotica educativa, a partire dalla scuola primaria, sino al 5° anno della scuola secondaria di secondo grado (negli istituti di indirizzo specifico, si dovrebbe entrare nel merito di sistemi elettronici e informatici più complessi). Spero che questo mio piccolo contributo sia di aiuto ad orientarsi nel complesso mondo di innovazione tecnologica e didattica nel quale ci stiamo addentrando.*

*articolo precedentemente pubblicato su CoderdojoTaranto.it

Umberto Talamo

 

Tags: #CODING #PENSIERO-COMPUTAZIONALE #PROGRAMMAZIONE #SCRATCH
Iscriviti alla newsletter di SI

Info, networking, best practice sull'innovazione digitale in Italia.

Home
Il magazine dell'innovazione e delle startup italiane
facebook
twitter
instagram
linkedin

 

LifeValore ResponsabileSmart MoneyThe food makers

 

TechEconomyEducationLifestyleStartupImpact

StartupItalia

Advisory BoardArea InvestorSIOSShoppingAgendaBandiLavora con noi
loading autori
StartupItalia! è una testata registrata presso il tribunale di Roma n. 167/2012
StartupItalia! SRL, Cagliari, Via Sassari 3, 09123, PIVA 13733231008, REA - CA - 352408, Capitale Sociale: € 28.924,60, PEC startupitalia (at) legalmail.it
Privacy 
|
 Cookie 
|
 Change privacy settings
Torna alla home
Life
Smart Money
The food makers
Valore Responsabile
That's Round
Cover Story
Dossier
Firme dal futuro
Pitch News
Italiani dell'altro mondo
Economy
Education
Impact
Lifestyle
Startup
Tech
Agenda
Bandi
LIVE TV
SIOS
RUBRICHE
Unstoppable Women
Bandi Istruzioni per l'uso
Imprenditori Sostenibili
Investimenti Digitali E Cripto
MY
Articoli Salvati
STARTUPITALIA
Advisory Board
Area Investor
Lavora con noi
Chi siamo