Raspberry Pi era stato progettato per permettere alle persone nel settore dell'istruzione di acquistare un computer Linux economico da usare per insegnare la programmazione a un bambino. Raspbian è il sistema operativo predefinito di Linux, e Scratch è installato in questo sistema operativo.
Scratch è un linguaggio di programmazione visivo gratuito usato per insegnare i concetti base della programmazione ai principianti. Per far muovere un oggetto sullo schermo facendo interagire l'utente non c'è alcun bisogno di scrivere righe di codice. Molti bambini hanno creato migliaia di giochi grazie a questo linguaggio, e Scratch ha dimostrato a molti che la programmazione è divertente e non è più riservata solo agli specialisti.
In questo articolo, abbiamo creato un programma in cui il nome "Arrow" si muove sullo schermo seguendo un esagono.
Nel linguaggio Scratch, gli oggetti si chiamo sprite. Possiamo creare un nuovo sprite usando il paint editor, anche se qui è stata importata l'immagine del logo di Arrow.
Ora, possiamo designare lo script per questo sprite. Il programma si avvia quando si clicca sulla bandiera verde. Quindi, dalla finestra di controllo, il pezzo del puzzle "quando si spunta la bandiera verde" viene trascinato sulla finestra dello script. Poiché vogliamo ripetere in modo indefinito questo programma, metteremo una grande parentesi "per sempre" intorno a tutte le funzioni che useremo. Ora selezioniamo "cancella" per cancellare la finestra quando viene visualizzata l'immagine, e attendiamo 1 secondo che lo sprite raggiunga la posizione (0,0). Successivamente, aspettiamo 1 altro secondo e lo sprite si sposta sulla posizione (0,100). Visto che vogliamo disegnare l'esagono, selezioniamo l'elemento puzzle "penna giù". Quindi, il programma si sposta sui sei vertici dell'esagono, con un tempo di attesa di 1 secondo su ogni vertice. Quando il logo di Arrow torna sul primo vertice nella posizione (0,100), l'esagono è stato completato, e possiamo aggiungere l'elemento "penna su". Dopodiché, attenderemo un secondo che torni al centro, ossia nella posizione (0,0), e un altro secondo affinché il programma si avvii nuovamente dopo che la finestra è stata cancellata.
Questo programma utilizza solo alcune funzioni, ma grazie al loro nome, l'attività che viene eseguita è ovvia. Le funzioni sono divise in otto gruppi come illustrato nella tabella sottostante.
Movimento: muove gli sprite e modifica gli angoli
Aspetto: controlla gli elementi visivi dello sprite; inserisce una nuvoletta di dialogo o pensiero, modifica lo sfondo, ingrandisce o riduce
Suono: riproduce file audio e sequenze programmabili
Penna: disegna controllando la larghezza, il colore e la sfumatura della penna
Controllo: affermazioni condizionali se, per sempre, ripeti e stop
Sensori: gli sprite possono interagire con il mouse, ad esempio
Operatori: operatori matematici, generatore di numeri casuale, dichiarazione e-o che confronta le posizioni degli sprite
Grazie all'interfaccia utente, trascinare, rilasciare e visualizzare in maniera immediata l'effetto di qualsiasi modifica è semplicissimo. Scratch consente agli utenti di divertirsi mentre fanno i primi passi nella programmazione, e crea delle buone basi per i futuri programmatori, basi che si trasformeranno successivamente in linguaggi più avanzati come Java o Python, ad esempio.