La scrittura, la stampa, i caratteri e i font: “programmare una parola”

Scrivere a mano è sempre stato il modo più semplice ed economico di scrivere. Incidere o depositare “colori” era il modo per scrivere.
I problemi principali da sempre 3: trasportabilità, riutilizzo e copia.
La famosa tavoletta di cera era riutilizzabile, la “carta” (di papiro, di pelle, di legno o di …) era trasportabile ma spesso cara.
Pochissimi sapevano leggere, meno sapevano scrivere, inoltre realizzare testi in più copie (copiare) spesso non serviva.
Per poter realizzare più copie, col tempo, si è passati dalla scrittura a mano, alla stampa. Inizialmente i caratteri venivano incisi, spesso in legno, delle dimensioni che servivano, con lo stile che serviva.
Per “stampe personali” arrivò la macchina da scrivere. Serviva a scrivere più veloce e in maniera leggibile, poteva fare almeno una copia, grazie alla carta carbone, si potevano “correggere errori” con il bianchetto, si potevano riscrivere porzioni (ad es. solo pagina 2).
Il salto effettuato con l’avvento del digitale non è stato solo la “smaterializzazione” del supporto dove leggere/scrivere/modificare (con lo schermo posso anche decidere di non stampare o stampare dove voglio) ma soprattutto il passaggio dal carattere fisico al carattere digitale.
I caratteri digitali sono raggruppati in font.
I font hanno gradi versatilità incredibile:
i caratteri possono essere utilizzati di qualsiasi grandezza e non solo a video ma anche in stampa e mantenendo la qualità (non sono immagini e se utilizzati grandissimi non si sgranano)
i caratteri possono essere utilizzati di qualsiasi colore e non solo a video ma anche in stampa
possiamo per ogni carattere cambiare il tipo di font e questo vuol dire di ogni carattere cambiare lo stile ma soprattutto consentire semplicemente l’utilizzo di lingue con ideogrammi o caratteri per noi speciali. Possiamo in questo modo comporre frasi multilingue tenendo presente anche che alcune lingue non si scrivono/leggono come la nostra da sinistra a destra e dall’alto in basso.
In tutta questa versatilità bisogna osservare che grassetto e italico (ed anche grassetto+italiaco) non sono delle istruzioni del tipo, usa un tratto più spesso con la font normale o inclina la font normale bensì usa grassetto e usa italico significano, di quella famiglia di font, con il carattere della stessa grandezza, usa l’equivalente font grassetto e l’equivalente font italico.
Ovvero, se volessimo creare un font, dovremmo disegnare quella normale, ma anche quella grassetto, italico e grassetto+italico.
Ora sappiamo molto su la scrittura, la stampa, i caratteri e i font ma se volessimo capire di più non utilizziamo un font, non proviamo a disegnare un font ma proviamo a “programmare una parola”.
Per programmare una parola non intendo un programma moderno del tipo: utilizza il font …, seleziona la grandezza del font, seleziona il colore del font, posizionati e scrivi.
Per programmare una parola intendo, utilizzando le primitive di disegno fornite, programma (fai disegnare dal programma) una parola.
Ovviamente per una tale attività utilizzeremo la programmazione visuale. Io prediligo Scratch ma anche Snap va benissimo.
Problemi:
1) bisogna conoscere gli assi cartesiani
2) bisogna saper disegnare (segmenti) utilizzando i punti sugli assi cartesiani
3) in scratch non esiste la primitiva linea, se si insegna la necessità e come crearla si è riusciti a spiegare il concetto di codice riutilizzabile e come passare i parametri (uno dei principi fondamentali della programmazione)
4) è subito evidente la difficoltà di disegnare curve
5) bisogna inventarsi un font utilizzando linee. La scelta più semplice è utilizzare tutto maiuscolo in una sorta di primitiva font. Per quanto il tutto risulti abbastanza scontato per non incorrere nella complessità (ad esempio la O sarà un rettandolo) emergono delle difficoltà e la necessità di piccole scelte di stile. Ad esempio: come differenziare O da 0? Oppure come fare la gambetta della Q?
6) si dovrà evidenziare che caratteri così costruiti non sono larghi tutti in egual misura
7) il punto 6) implica che non sarà semplice calcolare la larghezza di una parola e di conseguenza sarà molto complesso centrarla a priori rispetto allo spazio assegnato. Non esiste un comando del tipo seleziona tutta la parola e per centrarla muovila a destra o sinistra di un po’.
8) l’importanza di predefinire correttamente sia gli spazi orizzontali (tra due lettere) che verticali (tra due linee). Pensate in questo contesto la complessità di definire tasto “semplice” come il TAB.
9) 6), 7) e 8) fanno capire la complessità della formattazione, dell’impaginare con uno stile e fare in modo che tutto (testo, fotografie, didascalie, …) dinamicamente e senza errori si aggiornino.
Capite come solo la programmazione, come solo cercare di re-inventare tutto da zero ci può far capire come funzionano realmente le cose?
Sicuramente utilizzate tutti i giorni Word. Sicuramente non avete mai percepito la complessità di sviluppare word e la complessità di gestire al meglio il testo e la versatilità dei font.
Tenete sempre presente questo: più l’informatica diventa semplice da utilizzare (front end), più diventa difficile “dietro” (back end).

Mostre d’Arte e Coding: Secessioni Europee

Cosa c’è di più distante nella mente delle persone tra arte e programmazione?
L’arte è considerata creatività allo stato puro.
La programmazione un’attività sterile e rigorosa (chi creerà i videogiochi?).
Ho creato un semplice programma Scratch che può essere la base per un corso per bambini sia sulla parte artistica della mostra sia per una introduzione alla programmazione visuale.
Insegnare a scrivere ad un programma non è proprio una banalità perché richiede la comprensione degli assi cartesiani, la comprensione di come non sia semplice disegnare segmenti ed unirli a formare le lettere e di conseguenza quanto possa essere complesso disegnare curve.
Insegnare che bisogna rallentare il computer perché una persona riesca ad apprezzare il risultato (il computer è velocissimo).
Altri spunti possono emergere perché come si riesce a muovere una matita virtuale si può fa muovere un robot.

Tutti fanno corsi di coding per ragazzi. E per i genitori e i nonni?

Mille ragazzi tra i 7 e i 14 anni in cinque città italiane (Roma, Milano, Torino, Genova e Padova) potranno apprendere le basi dello sviluppo software tramite i corsi di “coding” gratuiti in partenza a ottobre e realizzati da TAG Innovation School, la scuola dell’innovazione digitale di Talent Garden, e Poste Italiane, che sostiene l’alfabetizzazione digitale con particolare attenzione alle famiglie. Il progetto “Coding Generation” prevede una serie di corsi che si svolgeranno il sabato, a partire dal 14 ottobre, nei Campus di Talent Garden. I partecipanti saranno organizzati in due gruppi per fasce d’età (7-10 anni, 11-14 anni), per permettere a ogni partecipante di sperimentare divertendosi.
[…]
Il “coding”, cioè la programmazione informatica, è diventato la chiave per comprendere il mondo tecnologico che abitiamo, per passare da semplici consumatori di tecnologia a creatori, assumendo una maggiore consapevolezza nei confronti dell’economia digitale. Attraverso le potenzialità di tecnologie all’avanguardia come Scratch i partecipanti sperimenteranno la creazione di oggetti animati e interattivi per la realizzazione del loro primo dispositivo informatico. Partendo da questo obiettivo il progetto permette di applicare principi di matematica, scienze, fisica e geometria allo sviluppo di un software, apprendere in modo collaborativo i fondamenti dei meccanismi di logica e programmazione e sviluppare creatività, curiosità e capacità di lavorare in gruppo divertendosi.

Mi viene proprio da dire, CHE BELLO! tutti si stanno accorgendo della necessità del coding.

Tra i due paragrafi:
Alla formazione dei più giovani si affianca un Workshop dedicato ai genitori dei partecipanti in cui esperti di tecnologie digitali insegneranno come configurare sistemi di controllo parentale e come evitare che i figli accedano a contenuti inappropriati.

FUTURO: il ruolo di genitori e formatori in un’epoca all’insegna della tecnologia

Ho volutamente inserito la parola tecnologia nel titolo.
La tecnologia condiziona la vita moderna, la condizionerà sempre più e sta condizionando la formazione.
STEM, tablet, scuola digitale ed altri termini futurologi sono importanti, sono fondamentali nella formazione ma:

  • i genitori stanno demandando ai formatori (insegnanti) la formazione, e non solo, dei propri figli
  • la formazione è sempre più specialistica e l’importante è che vengano insegnate delle modalità, delle conoscenze, delle nozioni
  • il fine ultimo è che la formazione permetta di trovare lavoro

Sono tutti punti corretti e vanno seguiti ma chi più insegna, con il proprio esempio, i valori?
L’unico eroe rimasto il donatore (di sangue, di organi, di midollo, di …).
Per rendersene conto è sufficiente vedere i nuovi monumenti da 20-30 anni ad oggi.
Per avere conferma basta vedere la televisione o leggere il giornale:
Politici, manager, … ogni professione è priva di esempi da emulare / di eroi comprese forze dell’ordine e sportivi.
Di conseguenza genitori e parenti non possono essere diversi.

Inoltre il futuro oltre ad essere sempre più tecnologico è sempre più virtuale.
Ovvero la realtà si svolgerà sempre più in spazi virtuali. Per partecipare alla realtà non avrò bisogno di spostare fisicamente il corpo.

Se per noi adulti questo dualismo può essere compreso, le nuove generazioni faranno sempre più fatica a distinguerlo. Vivere la vita vorrà dire vivere una realtà mista materiale-virtuale.
Il ruolo di genitori e formatori dovrà per questo ritornare ai fondamenti:

  • ri-insegnare il valore della fisicità
  • ri-insegnare l’importanza dei valori

Sto esplorando Google Classroom

Sto esplorando Google Classroom, sono anni che uso il cloud e Google Docs (Drive).
Il core è Google Docs e si appoggia a Google Calendar.
In google docs c’è già quasi tutto per gestire una classe ma in Google Classroom viene razionalizzato e organizzato.
Se devi gestire più classi e contemporaneamente mi sembra molto utile.
Lo approfondirò nei prossimi corsi facendolo diventare strumento di lavoro.

La scuola e gli alunni giapponesi: il sistema educativo giapponese

Fin da bambino ho praticato Judo e mi sono scontrato ed apprezzato la cultura giapponese.
Oggi mi sono imbattutto in questo video, probabilmente da prendere con le pinze, ma sicuramente interessante per cercare di capire una mentalità completamente diversa da quella occidentale, la loro scuola e il sistema educativo giapponese.

100% iscritti nel ciclo di scuole obbligatorie, 0% di analfabetismo, 96% di iscrizione alle scuole superiori (100% nelle città).
Ragazzi: solo una pettinatura.
Ragazze: non possono truccarsi, depilarsi le gambe e truccarsi.
Per tutti la divisa (pulita e stirata) e non possono alterarla e devono indossarla anche fuori dalla scuola.
E’ vietato avere relazioni sentimentali.
I ragazzi devono mangiare in classe con gli insegnanti e fare le pulizie. Devono mangiare quello che c’è e sono obbligati a finire tutto.
Il lavoro caparbio è più importante del talento. Ogni persona ha qualcosa da offrire anche se non è talentuosa o intelligente.
Chirurgia estetica per avere i denti disordinati come bellezza infantile.

E chi non riesce a reggere questi ritmi?
Malattia del diploma, giovani adulti rinchiusi in casa e isolati da tutti (hikikomori), incesto madri e figli (eccesso del fenomeno kyōiku mama), rapporti professori alunni, il maggior numero di suicidi giovanili, …

STEM femminile in un film: An American Girl Story: Summer Camp, Friends For Life

Un bel film fa comprendere l’importanza della STEM soprattutto per ragazzine partendo dallo studio della natura.
Assolutamente da guardare: An American Girl Story: Summer Camp, Friends For Life!

Don’t let anyone rob you of your imagination, your creativity, or your curiosity.
It’s your place in the world; it’s your life.
Go on and do all you can with it, and make it the life you want to live.

Dr. Mae Jamison, Astronaut, NASA

Il Machine Learning (apprendimento automatico) per Apple

Il Machine Learning (apprendimento automatico) è sicuramente uno dei settori più promettenti per la tecnologia informatica. In questo nuovo blog machinelearning.apple.com la visione di Apple.

Welcome to the Apple Machine Learning Journal. Here, you can read posts written by Apple engineers about their work using machine learning technologies to help build innovative products for millions of people around the world. If you’re a machine learning researcher or student, an engineer or developer, we’d love to hear your questions and feedback. Write us at machine-learning@apple.com

La formazione degli adulti è necessaria, io vorrei aggiungere il coding

Sono 13 milioni gli italiani senza titolo di studio. L’emergenza educativa non è marginale, riguarda quasi il 50% degli adulti.
Il 41% degli italiani tra i 25 e i 64 anni ha al massimo una licenza media, con picchi drammatici in Sardegna, Sicilia e Calabria, dove più della metà della popolazione non ha un diploma dato Istat 2014.
Nel 2012 la percentuale di 25-34enni senza diploma del secondario superiore (28%) era la terza più alta dei Paesi dell’Europa a 21, dopo Portogallo (42%) e Spagna (35%), ed era molto più alta rispetto alla media del 15,7% dell’UE.

In un tale contesto la formazione degli adulti è necessaria ed io vorrei aggiungere il coding come unico reale modo per comprendere i cambiamenti tecnologici/internet che ci coinvolgono!