Richard Stallman: Talking to the Mailman. New Left Review 113, September-October 2018.
https://newleftreview.org/II/113/richard-stallman-talking-to-the-mailman richard stallman TALKING TO THE MAILMAN Interview by Rob Lucas You’re widely recognized as the world’s leading campaigner for software freedom, having led the development of the gnu operating system. Today, the gnu /Linux operating system, and free (libre) software more broadly, underpin much of the internet, yet new structures have emerged that can wield a great deal of power over users. We’d like to talk to you about the present computing landscape and the political relevance of free software. But may we start by asking about your formation, as a programmer and as a thinker—how did it all begin? I grew up in Manhattan, born in 1953. I was a behavioural problem—I couldn’t go to a public school without getting in trouble—and started working with computers at an early age. In 1969, during my last year of high school, an ibm lab let me come and use their computers. In 1970 I had a summer job there. They gave me a project to do, implementing a certain algorithm to see how well it would work. I finished that in a few weeks, so they let me spend the rest of the summer being paid to write whatever I felt like. I went to Harvard to study physics, and carried on programming there. Towards the end of my first year I started visiting computer labs to look at their manuals, to see how the computers differed. When I visited the Artificial Intelligence Lab at mit, they didn’t have much by way of a manual, because they had developed their own time-sharing system. The administrator there decided to hire me more or less straight away. So although I graduated from Harvard in 1974, I had actually been an employee at mit for three years. Harvard’s computer was a lot better to play with than ibm’s, but it didn’t have a lot of memory, whereas mit’s computer at the ai Lab had plenty. Not only that, they let me change the time-sharing system; in fact, that was my job—they hired me to work on that system. I added lots of features to lots of different programs—whatever I thought of, or people suggested to me, that seemed like a good idea, I would implement and then people would use it. And this was absolutely delightful—and gratifying to make things that people used and appreciated—so I kept working there. From that point on, I did programming using the machine at mit. [...] (Sent from my wireless device; please excuse brevity and typos (if any))
Grazie veramente per aver condiviso questa intervista. E' fantastico come in RMS si combinino un acume straordinario ed una disarmante ingenuità. Personalmente sono d'accordo con molti passaggi del suo ragionamento (tanto da stupirmi quando utilizza persino le stesse parole che ho usato io in diverse occasioni). Al contempo, non condivido alcune assunzioni importanti, che credo derivino dalla sua cultura di origine e dall'epoca in cui si è formato. Anzitutto, tecnicamente, la visione dell'utente come colui che ha accesso fisico all'hardware che esegue il software, per quanto ormai diffusa e radicata, è superata dalla realtà. Per descriverla in modo efficace dobbiamo considerare utente di un software chiunque interagisca con esso, fornendo informazioni ad esso (anche indirettamente) o ottenendo dati da esso (anche indirettamente). Accedendo a Facebook, le persone non usano solo il browser, ma anche tutto il software sul server con cui interagiscono, in modo sincrono o asincrono. Il fatto che tale software sia usato ANCHE da dipendenti di Facebook non è rilevante: per quanto primitiva ed inefficiente, si tratta di una computazione multi utente distribuita. Questo è però un errore veniale, riconducibile alla formazione di Stallman che lui stesso descrive, su bestioni pesantissimi come il PDP-10 che nessuno si sarebbe sognato di chiamare fumosamente "nuvola". Il problema di fondo del suo ragionamento però lo sintetizza lui stesso:
I don’t think that everyone has to learn how to program—not everybody has a talent for it.
Uno scriba, 5000 anni, fa avrebbe detto lo stesso della scrittura. L'unico modo efficace di minimizzare la mungitura dei dati personali non è legale, ma culturale e tecnologico. Bisogna spostare la computazione nelle case, ponendola sotto il controllo consapevole delle persone che ivi abitano. Non tutti avranno il talento di Gates, Torvalds, de Raadt o Lenrek, come non tutti sono Chef pentastellati o scrittori di successo. Ma se tutti siamo capaci di scrivere la lista della spesa, possiamo tutti gestire un mail server o un firewall. Le Libertà garantite dal software libero sono vuote senza la Conoscenza per adoperarle. Giacomo Il giorno ven 26 ott 2018 alle ore 17:36 J.C. DE MARTIN <demartin@polito.it> ha scritto:
https://newleftreview.org/II/113/richard-stallman-talking-to-the-mailman
richard stallman
TALKING TO THE MAILMAN
Interview by Rob Lucas
You’re widely recognized as the world’s leading campaigner for software freedom, having led the development of the gnu operating system. Today, the gnu /Linux operating system, and free (libre) software more broadly, underpin much of the internet, yet new structures have emerged that can wield a great deal of power over users. We’d like to talk to you about the present computing landscape and the political relevance of free software. But may we start by asking about your formation, as a programmer and as a thinker—how did it all begin?
I grew up in Manhattan, born in 1953. I was a behavioural problem—I couldn’t go to a public school without getting in trouble—and started working with computers at an early age. In 1969, during my last year of high school, an ibm lab let me come and use their computers. In 1970 I had a summer job there. They gave me a project to do, implementing a certain algorithm to see how well it would work. I finished that in a few weeks, so they let me spend the rest of the summer being paid to write whatever I felt like. I went to Harvard to study physics, and carried on programming there. Towards the end of my first year I started visiting computer labs to look at their manuals, to see how the computers differed. When I visited the Artificial Intelligence Lab at mit, they didn’t have much by way of a manual, because they had developed their own time-sharing system. The administrator there decided to hire me more or less straight away. So although I graduated from Harvard in 1974, I had actually been an employee at mit for three years. Harvard’s computer was a lot better to play with than ibm’s, but it didn’t have a lot of memory, whereas mit’s computer at the ai Lab had plenty. Not only that, they let me change the time-sharing system; in fact, that was my job—they hired me to work on that system. I added lots of features to lots of different programs—whatever I thought of, or people suggested to me, that seemed like a good idea, I would implement and then people would use it. And this was absolutely delightful—and gratifying to make things that people used and appreciated—so I kept working there. From that point on, I did programming using the machine at mit.
[...]
(Sent from my wireless device; please excuse brevity and typos (if any)) _______________________________________________ nexa mailing list nexa@server-nexa.polito.it https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa
Il 27/10/2018 01:54, Giacomo Tesio ha scritto:
I don’t think that everyone has to learn how to program—not everybody has a talent for it. Uno scriba, 5000 anni, fa avrebbe detto lo stesso della scrittura. L'unico modo efficace di minimizzare la mungitura dei dati personali non è legale, ma culturale e tecnologico. Bisogna spostare la computazione nelle case, ponendola sotto il controllo consapevole delle persone che ivi abitano. Non tutti avranno il talento di Gates, Torvalds, de Raadt o Lenrek, come non tutti sono Chef pentastellati o scrittori di successo. Ma se tutti siamo capaci di scrivere la lista della spesa, possiamo tutti gestire un mail server o un firewall.
Le Libertà garantite dal software libero sono vuote senza la Conoscenza per adoperarle.
Mi dispiace dissentire, Giacomo, ma l'analogia scrittura-programmazione è solo un'analogia, suggestiva ed utile a sostenere l'importanza di dare sin dalla scuola un'educazione informatica seria (ne ho parlato l'ultima volta qua https://www.agendadigitale.eu/scuola-digitale/ma-quale-coding-a-scuola-serve...) ma che è pericoloso sostenere letteralmente. Programmare è equivalente a dare ordini ad una persona, per svolgere un compito che può essere anche estremamente complesso, con la complicazione aggiuntiva ed essenziale che la persona può usare il suo bagaglio di esperienza e la sua intelligenza per risolvere casi non- o mal-specificati. Con la programmazione l'onere di sbrogliare questa matassa è tutto sulle spalle del programmatore, e non tutti sono in grado di farlo. È vero che a scuola insegniamo a tutti a scrivere, ma poi non sono molti quelli in grado di usare la scrittura in modo efficace. Se scrivi un testo mal congegnato, nel caso pessimo sarai l'unico lettore, se scrivi un programma mal fatto, puoi creare qualche problema in più. Non tutti sono in grado di governare altre persone, è un dato di fatto e penso non ci sia nulla di male nell'osservarlo, come in fondo fa Stallman Il che non mi impedisce di essere un fermo sostenitore del fatto che la programmazione e l'informatica come scienza vadano insegnate nella scuola, fin dalle elementari. Quando parli di "controllo consapevole delle persone" sono d'accordo, ma questo per me non vuol dire programmare il firewall o il mail server di casa, vuol dire capire la scienza e la tecnologia che lo fanno funzionare. Ciao, enrico -- EN ===================================================================== Prof. Enrico Nardelli Dipartimento di Matematica - Universita' di Roma "Tor Vergata" Via della Ricerca Scientifica snc - 00133 Roma tel: +39 06 7259.4204 fax: +39 06 7259.4699 mobile: +39 335 590.2331 e-mail: nardelli@mat.uniroma2.it home page: http://www.mat.uniroma2.it/~nardelli blog: http://www.ilfattoquotidiano.it/blog/enardelli/ http://link-and-think.blogspot.it/ ===================================================================== --
Il giorno sab 27 ott 2018 alle ore 10:52 Enrico Nardelli < nardelli@mat.uniroma2.it> ha scritto:
Il 27/10/2018 01:54, Giacomo Tesio ha scritto:
I don’t think that everyone has to learn how to program—not everybody
has a talent for it.
Uno scriba, 5000 anni, fa avrebbe detto lo stesso della scrittura. Mi dispiace dissentire, Giacomo,
A me non dispiace affatto. Senza antitesi non è possibile iniziare a cercare una sintesi.
ma l'analogia scrittura-programmazione è solo un'analogia [...] che è pericoloso sostenere letteralmente.
Io invece credo che, mutatis mutandis, esista un parallelo incredibilmente utile fra l'informatica odierna e la scrittura nell'antico Egitto. In entrambi siamo di fronte a tecnologie primitive che diventano strumento di un potere egemone sul piano politico, economico, culturale e religioso. Entrambe sono affidate a professionisti di cui il resto della popolazione non comprende a pieno i misteri. Entrambe attengono alla comunicazione fra umani e la rivoluzionano.
Programmare è equivalente a dare ordini ad una persona
Proviamo in inglese: "Count from 1 to 10" Quanti modi diversi, tutti in inglese, puoi usare per ordinare la stessa cosa ad un computer? Solo in C ne puoi pensare una decina senza impegnarti. In Haskell? In Java? In Javascript? In Python? In Lisp? In Rust? In Bash? In PowerShell? In Perl? In Scratch? In Excel? Tutti linguaggi equivalenti eppure diversissimi. E ne esistono migliaia di altri: se non ricordo male, solo GHC compila 2^99 dialetti di Haskell diversi. Non fraintendermi questa varietà è bellissima, ma è una evidenza inequivocabile del fatto che procediamo alla cieca esplorando una seva smisurata di possibilità. E stiamo solo parlando di linguaggi di programmazione! Quante altri meccanismi possiamo rappresentare come calcoli in un computer ^senza muovere un singolo cavo"? La verità è che non lo sappiamo.
per svolgere un compito che può essere anche estremamente complesso, con la complicazione aggiuntiva ed essenziale che la persona può usare il suo bagaglio di esperienza e la sua intelligenza per risolvere casi non- o mal-specificati.
Beh... anche con il rischio di fraintendimenti, ma certamente l'intelligenza umana ha qualche milione di anni di vantaggio.
Con la programmazione l'onere di sbrogliare questa matassa è tutto sulle spalle del programmatore, e non tutti sono in grado di farlo.
È vero che a scuola insegniamo a tutti a scrivere, ma poi non sono molti quelli in grado di usare la scrittura in modo efficace.
Beh, non tutti sono in grado di scrivere la Divina Commedia o Amleto. Ma tutti possono scrivere una lettera. O una favola. O un articolo di giornale. O il resoconto di una riunione.
Se scrivi un testo mal congegnato, nel caso pessimo sarai l'unico lettore, se scrivi un programma mal fatto, puoi creare qualche problema in più.
Dipende da cosa deve fare il programma. E dal linguaggio usato per realizzarlo. Il parallelo con i geroglifici è straordinariamente attinente, in questo caso. Non si tratta solo di insegnare l'informatica a tutti, si tratta anche di renderla insegnabile a tutti. Se non avessimo inventato l'alfabeto, oggi avremmo ancora il faraone. Lo stesso tipo di evoluzione avverrà in Informatica.
Non tutti sono in grado di governare altre persone, è un dato di fatto e penso non ci sia nulla di male nell'osservarlo, come in fondo fa Stallman
Temo che sia un paragone molto appropriato. La Democrazia assume (e la nostra Costituzione suggerisce) che qualunque cittadino possa imparare a governare. Mi rendo conto che in questo periodo ricordare che la Politica, in una Democrazia, non può essere una professione è fuori moda. Ma è così. Una democrazia non è compiuta fin quando tutti i cittadini non partecipano attivamente alla vita politica. Anche ricoprendo incarichi istituzionali. Imparando alla bisogna e lungo il percorso ciò che serve. Altrimenti con un paio di concorsi pubblici potremmo risparmiarci campagne elettorali e costi di scrutinio. Con l'informatica è esattamente lo stesso. Infatti viviamo in un mondo cibernetico. Se vogliamo vivere in una Democrazia cibernetica (invece che in una plutocrazia cibernetica) dobbiamo assumere che chiunque possa imparare a programmare. Perché la Tecnologia è Politica, e non possiamo accettare che una parte della popolazione sia esclusa da tale strumento di espressione politica.
Il che non mi impedisce di essere un fermo sostenitore del fatto che la programmazione e l'informatica come scienza vadano insegnate nella scuola, fin dalle elementari.
Lo so: è stato il tuo articolo a farmi realizzare che oggi l'informatica è condizione di cittadinanza!
Quando parli di "controllo consapevole delle persone" sono d'accordo, ma questo per me non vuol dire programmare il firewall o il mail server di casa, vuol dire capire la scienza e la tecnologia che lo fanno funzionare.
Non sono d'accordo. La matematica, la scienza e la tecnologia sono strumenti fondamentali del uomo (vedi http://www.tesio.it/2018/10/11/math-science-and-technology.html ). Ma chi sa, fa. Io non vedo l'informatica come uno strumento economico, ma come uno strumenti di emancipazione capace di veicolare valori importanti per una Nazione. Fra cui, primo, a dialogare in modo onesto e chiaro. Peraltro a breve inizierò un breve corso di Informatica (per il momento sono previste 6 ore) per la quinta elementare di mia figlia. Si tratta, come puoi immaginare, di un hack. Voglio spiegare ai bambini in modo giocoso ma efficace concetti come - la differenza fra informazione e dato - la differenza fra algoritmo e programma - concetti di crittografia seria (one time pad) - cosa è un filesystem - cosa è un protocollo di comunicazione - cosa significa autenticazione - cosa è un log - cosa significano riservatezza, segretezza e privacy - come funzionano le reti - cos'è un IP - come funziona il routing di un pacchetto - cos'è un dns - cosa si intende per client e server Conto di portarli in aula informatica una volta sola alla fine, per fargli vedere come trovare ulteriore materiale per approfondire questi temi. Il resto delle lezioni sarà basato su simulazioni fatte con carta e spago. Se fossimo partiti in terza ora potrebbero programmare in Python o Lua tranquillamente, ma in quinta mi devo accontentare di fornirgli solide fondamenta su cui costruire autonomamente. Il mio obiettivo educativo è usare l'informatica come catalizzatore per la loro curiosità naturale. Se il mio hack funziona, avremo una ventina di giovani menti curiose che non si fanno intortare facilmente e che sanno usare i computer SENZA essere utilizzati attraverso di essi. Sono convinto che sia possibile. E si potrebbe fare molto di più con più tempo ed insegnanti veri. A presto! Giacomo
Wow, Giacomo, troppa roba da digerire in un colpo solo... e su molti aspetti il dialogo per mail non è secondo me alla fine molto fruttuso... sono ancora un fan del vis-a-vis :-) In teoria è vero che "tutti possono scrivere una lettera. O una favola. O un articolo di giornale. O il resoconto di una riunione." ma se hai frequentato un po' di riunioni di condominio sai bene che scrivere qualcosa non vuol dire scriverlo in modo che si capisca. E ribadisco che la differenza tra un testo scritto per essere letto da un essere umano ed un programma scritto per essere interpretato da un esecutore automatico è (concettualmente e praticamente) molto grande. La tua analogia tra democrazia/governo e informatica è suggestiva, ma secondo me non regge, esattamente per lo stesso motivo. Chi governa, governa esseri umani intelligenti ed adattabili. Chi programma, programma macchine stupide e rigide. Sono convinto che tutti possano imparare le basi dell'informatica, così come della matematica e delle altre scienze, e che avere queste basi sia una misura essenziale per la democrazia. Non penso però che l'informatica aiuterà a realizzare il "calculemus" di Leibniz ("dialogare in modo onesto e chiaro") anche se sono convinto che il suo studio, proprio perché forza al rigore che richiede la "macchina stupida e rigida", sia senza'altro utile. In bocca al lupo per la tua esperienza nella quinta elementare di tua figlia. La vera sfida è riuscire a portarsi appresso tutta la classe, e non solo i quattro o cinque più svegli/volenterosi. Raccomando attenzione, in questo tentativo, perché l'usare bene un linguaggio di programmazione "full fledged" richiede capacità di astrazione che si acquisiscono solo verso la fine della scuola elementare. Non è un caso che in matematica il calcolo letterale si inizia ad affrontare solo alle medie. Se vuoi leggere un po' di letteratura specialistica in materia, il tema è quello della "notional machine". Se ti può essere utile, al CINI (Consorzio Informatica Nazionale per l'Informatica) abbiamo formulato una proposta di Indicazioni Nazionali per l'insegnamento dell'informatica nella scuola. La trovi qua https://www.consorzio-cini.it/index.php/it/gdl/informatica-scuola Condivido totalmente l'approccio di iniziare il contatto con l'informatica in modo "non tecnologico", ma non dimentichiamoci che la tecnologia offre all'insegnamento dell'informatica enormi vantaggi. Cédric Villani, il matematico francese medaglia Fields ha detto che "È praticamente la sola disciplina che permette agli studenti di correggersi da soli”. Ne ho parlato qua http://link-and-think.blogspot.com/2016/06/informatica-il-nuovo-latino-che-t... Il nostro progetto "Programma il Futuro" porta nelle scuole molto materiale facilmente usabile per l'insegnamento dell'informatica, anche da parte di insegnanti che partono da zero. È sufficiente un po' di buona volontà. Puoi provare a "contagiarne" qualcuno nella scuola di tua figlia. Ecco da dove partire https://programmailfuturo.it/come/come-partecipare Ciao, Enrico Il 28/10/2018 02:16, Giacomo Tesio ha scritto:
Il giorno sab 27 ott 2018 alle ore 10:52 Enrico Nardelli <nardelli@mat.uniroma2.it <mailto:nardelli@mat.uniroma2.it>> ha scritto:
Il 27/10/2018 01:54, Giacomo Tesio ha scritto:
I don’t think that everyone has to learn how to program—not everybody has a talent for it. Uno scriba, 5000 anni, fa avrebbe detto lo stesso della scrittura. Mi dispiace dissentire, Giacomo,
A me non dispiace affatto. Senza antitesi non è possibile iniziare a cercare una sintesi.
ma l'analogia scrittura-programmazione è solo un'analogia [...] che è pericoloso sostenere letteralmente.
Io invece credo che, mutatis mutandis, esista un parallelo incredibilmente utile fra l'informatica odierna e la scrittura nell'antico Egitto.
In entrambi siamo di fronte a tecnologie primitive che diventano strumento di un potere egemone sul piano politico, economico, culturale e religioso.
Entrambe sono affidate a professionisti di cui il resto della popolazione non comprende a pieno i misteri.
Entrambe attengono alla comunicazione fra umani e la rivoluzionano.
Programmare è equivalente a dare ordini ad una persona
Proviamo in inglese: "Count from 1 to 10" Quanti modi diversi, tutti in inglese, puoi usare per ordinare la stessa cosa ad un computer? Solo in C ne puoi pensare una decina senza impegnarti. In Haskell? In Java? In Javascript? In Python? In Lisp? In Rust? In Bash? In PowerShell? In Perl? In Scratch? In Excel?
Tutti linguaggi equivalenti eppure diversissimi. E ne esistono migliaia di altri: se non ricordo male, solo GHC compila 2^99 dialetti di Haskell diversi.
Non fraintendermi questa varietà è bellissima, ma è una evidenza inequivocabile del fatto che procediamo alla cieca esplorando una seva smisurata di possibilità.
E stiamo solo parlando di linguaggi di programmazione!
Quante altri meccanismi possiamo rappresentare come calcoli in un computer ^senza muovere un singolo cavo"?
La verità è che non lo sappiamo.
per svolgere un compito che può essere anche estremamente complesso, con la complicazione aggiuntiva ed essenziale che la persona può usare il suo bagaglio di esperienza e la sua intelligenza per risolvere casi non- o mal-specificati.
Beh... anche con il rischio di fraintendimenti, ma certamente l'intelligenza umana ha qualche milione di anni di vantaggio.
Con la programmazione l'onere di sbrogliare questa matassa è tutto sulle spalle del programmatore, e non tutti sono in grado di farlo.
È vero che a scuola insegniamo a tutti a scrivere, ma poi non sono molti quelli in grado di usare la scrittura in modo efficace.
Beh, non tutti sono in grado di scrivere la Divina Commedia o Amleto. Ma tutti possono scrivere una lettera. O una favola. O un articolo di giornale. O il resoconto di una riunione.
Se scrivi un testo mal congegnato, nel caso pessimo sarai l'unico lettore, se scrivi un programma mal fatto, puoi creare qualche problema in più.
Dipende da cosa deve fare il programma. E dal linguaggio usato per realizzarlo.
Il parallelo con i geroglifici è straordinariamente attinente, in questo caso.
Non si tratta solo di insegnare l'informatica a tutti, si tratta anche di renderla insegnabile a tutti.
Se non avessimo inventato l'alfabeto, oggi avremmo ancora il faraone.
Lo stesso tipo di evoluzione avverrà in Informatica.
Non tutti sono in grado di governare altre persone, è un dato di fatto e penso non ci sia nulla di male nell'osservarlo, come in fondo fa Stallman
Temo che sia un paragone molto appropriato.
La Democrazia assume (e la nostra Costituzione suggerisce) che qualunque cittadino possa imparare a governare.
Mi rendo conto che in questo periodo ricordare che la Politica, in una Democrazia, non può essere una professione è fuori moda.
Ma è così.
Una democrazia non è compiuta fin quando tutti i cittadini non partecipano attivamente alla vita politica. Anche ricoprendo incarichi istituzionali.
Imparando alla bisogna e lungo il percorso ciò che serve.
Altrimenti con un paio di concorsi pubblici potremmo risparmiarci campagne elettorali e costi di scrutinio.
Con l'informatica è esattamente lo stesso.
Infatti viviamo in un mondo cibernetico.
Se vogliamo vivere in una Democrazia cibernetica (invece che in una plutocrazia cibernetica) dobbiamo assumere che chiunque possa imparare a programmare.
Perché la Tecnologia è Politica, e non possiamo accettare che una parte della popolazione sia esclusa da tale strumento di espressione politica.
Il che non mi impedisce di essere un fermo sostenitore del fatto che la programmazione e l'informatica come scienza vadano insegnate nella scuola, fin dalle elementari.
Lo so: è stato il tuo articolo a farmi realizzare che oggi l'informatica è condizione di cittadinanza!
Quando parli di "controllo consapevole delle persone" sono d'accordo, ma questo per me non vuol dire programmare il firewall o il mail server di casa, vuol dire capire la scienza e la tecnologia che lo fanno funzionare.
Non sono d'accordo.
La matematica, la scienza e la tecnologia sono strumenti fondamentali del uomo (vedi http://www.tesio.it/2018/10/11/math-science-and-technology.html ).
Ma chi sa, fa.
Io non vedo l'informatica come uno strumento economico, ma come uno strumenti di emancipazione capace di veicolare valori importanti per una Nazione. Fra cui, primo, a dialogare in modo onesto e chiaro.
Peraltro a breve inizierò un breve corso di Informatica (per il momento sono previste 6 ore) per la quinta elementare di mia figlia.
Si tratta, come puoi immaginare, di un hack.
Voglio spiegare ai bambini in modo giocoso ma efficace concetti come
- la differenza fra informazione e dato - la differenza fra algoritmo e programma - concetti di crittografia seria (one time pad) - cosa è un filesystem - cosa è un protocollo di comunicazione - cosa significa autenticazione - cosa è un log - cosa significano riservatezza, segretezza e privacy - come funzionano le reti - cos'è un IP - come funziona il routing di un pacchetto - cos'è un dns - cosa si intende per client e server
Conto di portarli in aula informatica una volta sola alla fine, per fargli vedere come trovare ulteriore materiale per approfondire questi temi. Il resto delle lezioni sarà basato su simulazioni fatte con carta e spago.
Se fossimo partiti in terza ora potrebbero programmare in Python o Lua tranquillamente, ma in quinta mi devo accontentare di fornirgli solide fondamenta su cui costruire autonomamente.
Il mio obiettivo educativo è usare l'informatica come catalizzatore per la loro curiosità naturale.
Se il mio hack funziona, avremo una ventina di giovani menti curiose che non si fanno intortare facilmente e che sanno usare i computer SENZA essere utilizzati attraverso di essi.
Sono convinto che sia possibile. E si potrebbe fare molto di più con più tempo ed insegnanti veri.
A presto!
Giacomo
-- EN ===================================================================== Prof. Enrico Nardelli Dipartimento di Matematica - Universita' di Roma "Tor Vergata" Via della Ricerca Scientifica snc - 00133 Roma tel: +39 06 7259.4204 fax: +39 06 7259.4699 mobile: +39 335 590.2331 e-mail: nardelli@mat.uniroma2.it home page: http://www.mat.uniroma2.it/~nardelli blog: http://www.ilfattoquotidiano.it/blog/enardelli/ http://link-and-think.blogspot.it/ ===================================================================== --
Grazie moltissimo Enrico dei riferimenti. Il giorno dom 28 ott 2018 alle ore 18:53 Enrico Nardelli <nardelli@mat.uniroma2.it> ha scritto:
Chi programma, programma macchine stupide e rigide. Sono convinto che tutti possano imparare le basi dell'informatica, così come della matematica e delle altre scienze, e che avere queste basi sia una misura essenziale per la democrazia. Non penso però che l'informatica aiuterà a realizzare il "calculemus" di Leibniz ("dialogare in modo onesto e chiaro") anche se sono convinto che il suo studio, proprio perché forza al rigore che richiede la "macchina stupida e rigida", sia senza'altro utile.
Una macchina per cucire è stupida e rigida. Un computer è stupido. E' rigido? - Sì perché è una solo una calcolatrice molto sofisticata. - No perché possiamo programmarlo per rappresentare, attraverso calcoli, qualsiasi meccanismo concepibile. Da questa contraddizione nasce la nostra frustrazione di programmatori. Ma un buon 95% della complessità che affrontiamo ogni giorno nel nostro lavoro è totalmente accidentale (vedi https://en.wikipedia.org/wiki/No_Silver_Bullet ). E' una complessità che sarebbe evitabile e che ci portiamo dietro per ragioni storiche ed economiche (semplicemente siamo forse capaci di calcolare i costi di correggere tutto, ma non i benefici). Rimuovendo quel 95% di complessità evitabile, l'informatica diventerà molto più accessibile. Da decenni Niklaus Wirth, con Pascal prima e Oberon poi, affronta coraggiosamente questo drago. E anche Guido Von Rossum, con Python, voleva portare la programmazione alle masse: https://www.python.org/doc/essays/cp4e/ La mia visione si inserisce nel solco del loro lavoro. Intravedo un processo di coevoluzione: insegnando a tutti a programmare, creeremo una pressione economica e politica per creare sistemi più facili da programmare (e più sicuri ed efficienti)
La vera sfida è riuscire a portarsi appresso tutta la classe, e non solo i quattro o cinque più svegli/volenterosi. [...] Condivido totalmente l'approccio di iniziare il contatto con l'informatica in modo "non tecnologico", ma non dimentichiamoci che la tecnologia offre all'insegnamento dell'informatica enormi vantaggi. Cédric Villani, il matematico francese medaglia Fields ha detto che "È praticamente la sola disciplina che permette agli studenti di correggersi da soli”.
Sono d'accordo. D'altro canto "la tecnologia" è anche una potenziale fonte di distrazione per i bimbi meno motivati. Io credo che si ponga lo stesso problema che esiste con la matematica e la calcolatrice: prima impari come funziona il calcolo e poi usi la calcolatrice per farlo in fretta. Ho deciso per un'approccio non tecnologico per diverse ragioni. Non ultimo il fatto che molti di questi bambini hanno già un cellulare, che usano avidamente, ma non sanno come funziona. Io voglio stimolare il loro spirito critico, presente e futuro, mostrando che per capire come funziona quel cellulare non serve avere un cellulare. D'altro canto hai certamente ragione sulla programmazione come strumento di sperimentazione autonoma. Questa estate ho aiutato mia figlia a fare i tutorial di Scratch 2 (in realtà ha fatto quasi tutto da sola... io rispondevo solo alle domande quando non capiva qualcosa). E' stato utile, si è divertita, ma alla fine mi sono reso conto che non sapeva comunque nulla di come funziona il computer che stava usando. In queste 6 ore io voglio mettere in condizione i ragazzi di capire come funzionano i computer in modo che trovino Scratch limitato e noioso e vogliano loro stessi lanciarsi in cose più divertenti.
Il nostro progetto "Programma il Futuro" porta nelle scuole molto materiale facilmente usabile per l'insegnamento dell'informatica, anche da parte di insegnanti che partono da zero. È sufficiente un po' di buona volontà. Puoi provare a "contagiarne" qualcuno nella scuola di tua figlia. Ecco da dove partire https://programmailfuturo.it/come/come-partecipare
Sarà sicuramente mia cura contagiare gli insegnanti (e gli studenti) sia con Programma Il Futuro che con fare.polito.it. :-) Anzi se tu o altri amici nexiani avete ulteriore materiale in italiano da suggerirmi, ti (e vi) prego di non esitare. Ma voglio provare questo approccio non convenzionale (con il supporto della loro ottima maestra di matematica) perché riflettendo su questi temi (come ti dicevo, partendo dal materiale di programma il futuro) sono giunto alla conclusione che stiamo guardando l'educazione informatica dal punto di vista sbagliato. E se l'informatica fosse l'arte dell'informazione così come la matematica è l'arte di imparare? Se così fosse, l'educazione diventerebbe il suo scopo più nobile. D'altro canto, se tutti fossero capaci a leggere e debuggare un programma, sono convinto avremmo molti meno bug e sistemi più sicuri. IMO, cultura degli utenti e qualità (semplicità e sicurezza) dei sistemi informatici vanno di pari passo e si facilitano reciprocamente. Una simbiosi perfetta. ;-)
Ciao, Enrico
Ciao e grazie per la chiaccherata! Giacomo
participants (3)
-
Enrico Nardelli -
Giacomo Tesio -
J.C. DE MARTIN