mercoledì 17 febbraio 2016

Olimpiadi del Problem Solving

OLIMPIADI DEL PROBLEM SOLVING

Oggi i più grandi tra i nostri SuperEroi si sono cimentati nella sfida a squadre delle Olimpiadi del Problem Solving

http://www.olimpiadiproblemsolving.com/

E' stata una bella sfida: si sono allenati poco ma sono riusciti a completare tutti i 12 esercizi lavorando in squadra. Hanno formato un team e hanno raggiunto lo scopo.
Spesso i ragazzi hanno risorse che noi vecchiardi sottovalutiamo. Io ed Eminem non volevamo neanche iscriverli perchè avevamo avuto poco tempo per allenarli e invece loro hanno insistito e alla fine hanno avuto ragione. Sono riusciti a completare la prova. E' stato bello vederli lavorare in team: c'era il leader, c'era il gregario, c'era il filosofo, c'era la mente, c'era il servitore ....e solo lavorando tutti insieme hanno raggiunto la meta.
Alla fine avevano le teste che fumavano ma proprio l'aria soddisfatta: si sono divertiti.
E questo è quello che conta. In classe dovremmo far provare questa emozione ogni giorno.....

Ecco i nostri SMOKING HEADS





Programma il futuro

GIOCARE CON PROGRAMMA IL FUTURO - IL LABIRINTO

Uno degli obbiettivi di questo corso è quello di sviluppare il pensiero computazionale cioè risolvere problemi attraverso procedure chiare e univoche. La risoluzione di un problema complesso  richiede che esso venga suddiviso in problemi più semplici. La piattaforma di “Programma il Futuro” prevede una serie di problemi a difficoltà crescente  che richiedono l’identificazione di procedure. Spesso le procedure accettabili sono multiple ma una è più giusto di altre: la più semplice perchè richiede  meno comandi (dati) di altre. L’interfaccia di programma il futuro, attraverso giochi realizzati con i personaggi dei giochi più popolari come angry birds, permette di esplorare l’ambito delle procedure dando al fruitore, in tempo reale, un feed back sulla loro correttezza. Quando la procedura è sbagliata non si raggiunge l’obbiettivo, quando è giusta ma troppo complicata il sistema informa che esiste un modo più semplice per risolvere il problema. E così si raffinano i comandi  attraverso l’errore, si impara a elaborare una procedura corretta attraverso l’analisi degli errori, sviluppando apprendimento in modo autonomo attraverso un processo metacognitivo.
Nella lezione di oggi i nostri supereroi devono individuare la serie esatta di comandi per far raggiungere obbiettivi spaziali ai personaggi di angry birds. La procedura si compone con dei “blocchi azione” che vengono proposti dall’interfaccia. I blocchi sono molto simili a quelli che utilizza il sistema Scratch che verrà introdotto da Eminem nella sua lezione creativa.

Gli obbiettivi della lezione sono i seguenti:
  • comprendere cosa sia il pensiero computazionale;
  • riconoscere problemi;
  • scomporre il problema in problemi più semplici;
  • individuarne schemi ricorrenti nei problemi;
  • astrarre il problema;
  • sviluppare  procedure per risolvere problemi attraverso l’appropriato algoritmo;
  • saper selezionare le procedure migliori;
  • usare i “Blocchi Azione” per risolvere i problemi proposti;

I concetti che emergeranno in questa lezione:
  • Pensiero computazionale;
  • Comando;
  • Procedura;
  • Blocchi Azione semplici;
  • Blocchi Azione che implicano una ripetizione (RIPETI- RIPETI FINCHE’);
  • Blocchi Azione che implicano una condizione (SE- SE ALTRIMENTI);


Attività 1
La lezione inizia con la visione di un filmato
Dopo la visione chiedo di riassumerne il contenuto e di spiegare cosa ha a che fare con il pensiero computazionale. Le idee dei miei “magnifici 22” servono per elaborare una definizione condivisa di pensiero computazionale.

Attività 2
Illustro la piattaforma di “Programma il Futuro”, registro i magnifici 22 sulla piattaforma e dò inizio alle danze. Le attività che verranno svolte nel corso sono contenute nel “Corso Rapido” che si trova al seguente indirizzo e si basa su 10 sessioni di lavoro a difficoltà crescente.

Ogni allievo ha a disposizione una postazione di lavoro e deve nel tempo di 45 minuti risolvere i problemi proposti nella prima lezione dal titolo  “Il labirinto”.
I blocchi di comando azione necessari per i primi giochi  (dal n.1al n.5)sono semplici:

VAI AVANTI
GIRA A DESTRA
GIRA A SINISTRA

Negli esercizi successivi si introducono comandi che servono a ottimizzare la procedura:
 
RIPETI n. VOLTE   
RIPETI FINO A QUANDO TROVI
SE
SE ALTRIMENTI

L’obbiettivo di tutti gli esercizi è quello di raggiungere una particolare posizione percorrendo piccoli labirinti a difficoltà crescente. I nuovi comandi vengono introdotti da un video che ne spiega il significato  e poi viene proposto un esercizio che ne richiede l’applicazione. Nel video, non è l’insegnante a parlare ma una star del mondo dello sport o dell’informatica, comunque quasi sempre conosciuto dai miei supereroi. Il tutorial è sempre in inglese con sottotitoli in italiano. Così si imparano anche nuovi termini in inglese senza faticare troppo.

domenica 31 gennaio 2016

Ancora byte!

Troppo interesante la lezione di Margaret sul codice binario e di sicuro non potevamo lasciarci scappare l'occasione per rifletterci su anche con scratch e giocarci un po'.
Così alla sfida di mercoledì scorso ho portato una specie di calcolatrice che faceva la conversione immediata fra una cifra espressa in codice binario in quella equivalente in decimale.
I ragazzi si sono impegnati molto e hanno eseguito i loro lavori.
Il risultato? Allego lo Scratch di gianpi2409

venerdì 22 gennaio 2016

CODICE BINARIO


Oggi per i 22 super eroi che seguono il corso ho preparato una lezione sul linguaggio binario, ho studiato a casa in solitudine, ho provato le attività e adesso è arrivato il momento di proporle.

Gli obbiettivi della lezione sono i seguenti:
  • Comprendere cosa sia  l’informatica e a cosa serva;
  • Riflettere sulla differenza tra dato e informazione;
  • Comprendere il doppio ruolo del computer: uno strumento da usare  e uno strumento per creare;
  • Divenire fruitori responsabili delle nuove tecnologie;
  • Riconoscere successioni;
  • Sviluppare combinazioni;
  • Scrivere informazioni usando nuovi codici;
  • Decodificare messaggi scritti in nuovi codici;

I Concetti che si sono trattatati:
  • Codice Binario
  • Bit e Byte
  • Codice ASCII

Tutti i miei allievi hanno uno smart phone e lo usano per molte più delle ragioni per cui lo uso io: telefonare, chattare, filmare, ascoltare musica, giocare, cercare info sull’ultima star del momento, cercare la strada per tornare a casa…. quindi sono grandi fruitori di tecnologia ma non hanno idea di come questa tecnologia che loro utilizzano si crei e sia a loro accessibile. Come fa il telefonino a catturare un’immagine e a tenerla in memoria? Come viene generata la musica che loro ascoltano? Come possono trovare le informazioni che loro cercano? Come è stato creato il gioco che gli ruba ore di sonno ogni giorno? Come fanno a trovare un amico usando facebook? e potrei continuare. Molti di loro vivranno benissimo senza conoscere queste risposte bisogna solo accompagnarli ad essere dei fruitori responsabili e competenti di tecnologia ma per i più curiosi, per chi si chiede ma come è possibile tecnicamente  trovare con il mio telefonino la musica che voglio ascoltare o vedere il video che voglio vedere, bisognerà cominciare a dare qualche risposta, semplice e adatta alla loro età, che gli faccia scoprire l’altra faccia della medaglia non solo saper usare la tecnologia ma scoprire il linguaggio che la tecnologia  utilizza.

Attività 1
Comincio la lezione mostrando il video di benvenuto del sito  Codeweek intitolato  “Il linguaggio delle cose” (http://codeweek.it/). Il filmato mi permette di introdurre  il linguaggio che rende tutto ciò possibile: il linguaggio binario meglio noto come “Codice binario”. I computer son macchine complesse capaci di immagazzinare informazioni di ogni genere: testi, immagini, video  e musica. Tutte queste informazioni vengono introdotte nel computer sotto forma di dati fatti di una serie lunghissima di 0 e 1 che in una macchina corrispondono ad un impulso elettrico del tipo acceso/spento. .

Attività 2
Distribuisco  5 carte con 1,2,4,8,16 pallini. I 22 supereroi ci mettono due nano secondi per capire il legame nascosto tra le 5 carte: sono una il doppio dell’altra. Bene, ottimo punto di partenza, adesso si passa alle combinazioni numeriche. Come posso comporre il  numero 3 corrispondente a 3 pallini? e il numero 5? e così via. E poi  propongo il domandone: ma secondo voi posso comporre tutti i numeri che voglio con una serie basata su carte che sono una il doppio dell’altra? e dopo una piccola esplorazione tutti e 22 sono d’accordo nel dire si.
Non sanno ancora cosa sia il codice binario ma ne hanno già capito il meccanismo e le poitenzialità. A questo punto si sale in cattedra e si formalizza come si possa passare dai pallini alla serie di 0 e 1.

° =1
°°=2
°°°=4
°°°°=8
°°°°°=16




Si illustra la posizione che devono assumere le carte per far funzionare il codice binario:

°°°°° °°°° °°° °° °
16 8 4 2 1

a destra la carta che ha 1 pallino e si cresce verso sinistra. Quando una carta viene usata per comporre il numero si utilizza la cifra 1 quando non la uso la cifra 0 che corrispondono a ON e OFF o a + e -.

per esempio per scrivere 5 uso le carte con il segno + mentre le altre no (segno -)

°°°°° °°°° °°° °° °
16 8 4 2 1
- - + - +
Off Off On Off On
0 0 1 0 1

quindi in linguaggio binario 5=00101

oppure 19:

°°°°° °°°° °°° °° °
16 8 4 2 1
+ - - + +
On Off Off On On
1 0 0 1 1

quindi in linguaggio binario 19=10011

Capito il meccanismo si passa alle sfide. Divido la classe in 2 squadre: una squadra propone all’altra un numero scritto in codice binario. E incredibilmente l’altra lo indovina. E’ solo una questione di codice, applicare il codice logicamente. Capito il segreto è un gioco da ragazzi!

Scrivere i numeri in questo modo è anche l’occasione di introdurre il concetto di “Bit”, per scrivere un numero come 19 sono necessarie 5 carte e cioè 5 bit per numeri più grossi  come 125, saranno necessarie un maggior numero di carte e cioè un numero maggiore di bit.  


Attività 3
La potenzialità di un codice basato solo su due elementi può essere sfruttato anche per scrivere un testo. Le lettere possono essere trasformate in una serie di 0 e 1 , cioè di impulsi elettrici acceso e spento. E allora ecco un potenziale convertitore  binario utile per giocare a fare gli agenti segreti che comunicano con il codice segreto. Numeri e lettere corrispondono a corte sequenze di 0e 1 . Tutti i caratteri possono essere racchiusi in 8 carte cioè 8 Bit che corrispondono a  1 BYTE.

Il Byte dipende dalla macchina, normalmente le macchine utilizzano 8 bit per inserire dati e 8 bit corrispondono a 1 a byte. Con 8 bit il numero di combinazioni di carte corrispondono a 28 sufficienti per coprire tutti i caratteri necessari a a scrivere. Ecco il convertitore che ci permette di decodificare il messaggio in codice.
La maggior parte dei computer oggi usa una rappresentazione standard chiamata ASCII (American Standard Code for Information Interchange) che è basato su un sistema a 8bit. Questo codice va bene per tutte le lingue europee compreso l’italiano e l’inglese mentre le lingue con più simboli hanno bisogno di più bit.
Questa scheda è la semplificazione della rappresentazione ASCII e servirà per giocare a decifra il codice.




I nostri 22 agenti speciali del controspionaggio sono divisi in due squadre ogni squadra inventa una frase corta, la scrive in codice binario e la passa alla squadra avversaria che dovrà decifrarne il contenuto. E così divertendoci impariamo a capire come funzionano le macchine e come vengono inserite e trasferite le informazioni.
Per riscaldarli gli propongo di decodificare una frase semplice :

0100 1101===>M
0100 1001===>I

0100 0011===>C
0100 1000===>H
0100 1001===>I
0100 0001===>A
0100 1101===>M
0100 1111===>O

0100 1101===>M
0100 0001===>A
0101 0010===>R
0100 0111===>G
0100 1000===>H
0100 0101===>E
0101 0010===>R
0100 1001===>I
0101 0100===>T
0100 0001===>A










Quando un computer memorizza un testo lo fa come una serie lunghissima di 0 e 1 che corrispondono alle lettere che servono a comporre le parole, che servono a comporre il testo.
E qui la domanda dei miei supereroi sorge spontanea: ma per inserire una lettera devo digitare 8 elementi, non è economico, è molto più facile schiacciare un tasto solo. E qui da insegnante si sale in cattedra e si spiega che il computer funziona con impulsi elettrici passa o non passa la corrente. Gli zero corrispondono al non passa l’1 al passa la corrente. E così solo con un passa e un non passa si inseriscono i dati che poi diventano informazioni: testi, immagini, video, musica. In realtà per la musica e i video lo 0 corrisponde a un non passaggio di luce mentre l’1 al suo passaggio. La velocità di un computer dipende da quanti bit può leggere contemporaneamente. I bit e i byte sono usati dal computer per trasmettere e memorizzare le informazioni.
Prima di concludere la lezione invito i miei super eroi a riassumere cosa hanno fatto. Ci mettiamo in cerchio e loro mi raccontano cosa hanno imparato. E’ incredibile ma si ricordano tutto!

sabato 9 gennaio 2016

Il Mago

É sempre difficile trovar spazi adeguati al racconto delle esperienze scolastiche. Si corre infatti spesso il rischio di perdersi nei tecnicismi delle discipline o, al contrario, sciogliere ciò che c'è di buono in una comunicazione banale, poco significativa. Vorremmo Margaret ed io trovare una via di mezzo. Consapevoli che difficilmente sfuggiremo almeno al secondo dei rischi, vogliamo tenere una sorta di diario delle occasioni, delle impressioni e delle singolari occorrenze che altrimenti perderemmo. Questa esperienza di un laboratorio dedicato al coding e al pensiero computazione è stata tenecemente perseguita e per questo non vorremo ora, programmato tutto e avviato il percorso, perderci l'occasione di annotare i processi messi in opera dai ragazzi attorno alle sfide che gli proponiamo. Saranno note volutamente poco sistematiche, legate alle nostre impressioni più che a cadenze tematiche o scadenze cronologiche. Non c'era quindi post migliore per inaugurare questo blog del Diario di bordo di Margaret.


giovedì 7 gennaio 2016

Diario di bordo

Ho davanti 22 ragazzini, per lo più maschi. Solo 3 femmine si sono lasciate attirare dal corso di coding che io e Eminem abbiamo organizzato. Potremmo aprire un dibattito sul genere e le scelte ma non ho tempo e ho voglia di raccontarvi perchè mi trovo qui davanti a 22 ragazzini.
A dire il vero il corso di coding l’ha organizzato più Eminem di me, fino a quest’estate non ne sapevo nulla di coding, di scratch e tutto ciò che ci gira attorno.  Ma la sete di novità, la sfida dell’imparare mi persegue da sempre per cui non mi sono tirata indietro ed eccoci qui.   Alla fine dell’anno scolastico, Eminem cercava qualcuno che insegnasse matematica e che avesse voglia di far emergere il pensiero logico matematico che sta dietro alla sua passione: l’informatica.
Ma andiamo per ordine: Eminem è il mio collega tecnologico che insegna lettere è che da sempre si interessa delle nuove tecnologie, le usa per impostare la sua didattica ma siccome è un tipo smart ha colto la potenzialità di questo strumento per insegnare il pensiero logico matematico in modo divertente e poco convenzionale. Visto che la sua area di insegnamento resta la storia, la geografia e l’italiano ha pensato bene di coinvolgere me Margaret Went insegnante di matematica e scienze che dice sempre di si alle nuove sfide, che tende ad annoiarsi quando una cosa si ripete, che ha voglia di imparare ancora  come fosse un piccolo fanciullo e che è sufficientemente incosciente da pensare di potercela fare. Quindi sarò adeguata per introdurre il pensiero compurtazionale a questi 22 ragazzini ? Assolutamente no, ma sono qui e ho voglia di imparare, la differenza sta nel fatto che oggi imparo e insegno qualcosa in parallelo, prima ci provo io e poi lo propongo mentre quando insegno la matematica nelle mie ore tradizionali preparo la lezione ma senza imparare la sostanza che conosco dalla notte dei tempi.