Ciao Giovanni, Il 22 Settembre 2023 16:09:20 UTC, Giovanni Biscuolo ha scritto: >> - non sanno programmare > >Questa è la competenza che merita di essere discussa: cosa significa >saper programmare?
Significa saper leggere, scrivere, modificare e debuggare i sorgenti di un software. Saper configurare un software è "condizione necessaria" del saper programmare, ma non sufficiente. >Secondo il mio personalissimo giudizio programmare è _anche_ saper >configurare il software scritto da altri Indubbiamente se non sei in condizione di configurare il software scritto da altri (avendo a disposizione la documentazione o il sorgente) non sai programmare, quindi sì "programmare è anche configurare". E a ben guardare la configurazione può essere considerata come una parte del testo del programma che viene estratta e resa più facile da modificare, rendendo più generale il programma (che diventa, di fatto, anche un interprete della propria configurazione). Quindi sì: chi configura un software, di fatto lo programma. Ciò però purtroppo non significa che chi sa configurare un software sappia programmare. La programmazione è una attività generale, applicabile (come rilevava brillantemente Enrico Nardelli nel suo libro) alla spiegazione del processo per cuocere la pasta, quanto alla configurazione, quanto alla programmazione in C, in Python o in Lisp. Spiegare come cucinare una torta è programmare, ma saper spiegare come si cucina una torta non è saper programmare. Un po' come saper dividere equamente un pacchetto di caramelle non implica conoscere la matematica. >> - si fidano di qualcuno che sa programmare > >Anche i programmatori si fidano di quancun altro che sa programmare, no? >Che io sappia, non c'è proprio nessuno che non è abbastanza pigro da >_non_ ricontrollare da zero tutto il software che usa. :-) > >Se intendi dire che i programmatori possono /scegliere/ di farlo, allora >è chiaro. Buona obiezione! :-) Sì certamente c'è una questione di libertà: il programmatore è libero di fidarsi o meno, mentre il profano, è succube, obbligato a fidarsi. Ma non c'è solo una questione di fiducia, bensì una questione di potere. Se sei libero di fidarti o meno, qualche volta lo fai, qualche volta no. Chi scrive software libero (o anche solo open source) destinato a programmatori sa bene che quel codice verrà letto e criticato. Se sei succube, costretto a fidarti di sconosciuti, la fiducia che ti viene estorta cristallizza in potere. E quante più persone sono costrette a fidarsi di te, tanto più questo potere diventa oppressivo. >Però questa caratteristica di fidarsi non è esclusiva del gruppo a cui >ti riferisci. > >> Per esempio, i giuristi in lista che non sanno programmare, > >Anche i programmatori in lista non sanno "giurisdizionare" e si fidano >(chi più, chi meno :-D ) dei giuristi sulla base di criteri analoghi a >quelli applicati dai giuristi per fidarsi dei programmatori. > >La vera differenza col software è che quanto dichiarato dai giuristi è >espresso solo in formato sorgente (non esiste formato binario) e >/quindi/ falsificabile, con una sforzo che va da una lettura di pochi >minuti fino a un intero ciclo di studi in giurisprudenza, per i casi più >difficili. Qualunque giurista ti potrebbe spiegare che non è affatto così semplice. Certo, la Legge si chiama così perché si può leggere, ma esistono flotte di avvocati felici di "piegarla" alle esigenze del cliente (non sto generalizzando: ho in mente specifici avvocati che dichiarano apertamente e con orgoglio questo loro servizio). Quand'anche la Legge fosse davvero uguale per tutti (ahimé, sembra non lo sia), qualunque avvocato ti potrà spiegare che è sempre e solo un Giudice ad avere l'ultima parola su come vada interpretata. E non è un bug, ma una feature! :-) Il Giudice (quando non è corrotto ed è competente) non si limita a leggere il testo della norma, ma la interpreta alla luce della realtà cui quella norma si applica. (In teoria) Questo dovrebbe evitare che una applicazione meccanica della norma (come fosse un programma informatico) possa produrre danni alla società, secondo il detto ciceroniano "summum ius, summa iniuria". (IN TEORIA: perché spesso questa frase viene usata per chiedere impunità per i colpevoli, sbattendosene dell'ingiustizia subita dalle vittime) Nel diritto continentale (civil law) è (e deve restare) un essere umano a giudicare le cose umane, affinché se ne assuma la responsabilità. >Perché la stessa analogia non provi a farla con la giurisprudenza, la >fisica, la chimica o la medicina? Anzitutto erché sono discipline con centinaia o decine di migliaia di anni e sono ben comprese nel loro funzionamento fondamentale dalla popolazione. Tutti sanno che l'acqua bolle a 100 gradi. Che se ti rompi un braccio devi steccarlo. Che gli oggetti cadono verso il centro della terra. etc... Come funzioni davvero il software invece lo sappiamo in pochissimi. La stragrande maggioranza delle persone non ne ha la più pallida idea. E non ne ha idea per diverse ragioni: - la nostra disciplina è intrinsecamente complessa - i maggiori produttori di software fanno tutto quanto è in loro potere per renderla ancora più complessa, in modo da consolidare il proprio dominio - la stragrande maggioranza delle persone, non comprendendo il funzionamento di strumenti progettati per essere "facili da usare" non percepisce la menomazione delle proprie capacità cognitive e della propria libertà che questi strumenti effettuano - non disponiamo ancora di una alfabeto (nonostante l'ottimo lavoro di pionieri come Wirth) in grado di essere insegnato facilmente >Non sono anche quelle competenze particolarmente /impattanti/ sulla >nostra cittadinanza (non cibernetica)? Lo sono certamente, ma molto meno di quanto non lo sia l'informatica in una società cibernetica. Gli agenti cibernetici in esecuzione su un comune cellulare Android sono oltre 300 e nella stragrande maggioranza NON servono colui che se lo porta in tasca. Quando navighi sul web interagisci con decine di migliaia di altri agenti cibernetici, in esecuzione su router, firewall, server remoti etc... E tutti questi agenti cibernetici, prima di servire te, servono chi li ha scritti e ne paga l'hardware e la corrente per mantenerli in esecuzione. Il numero degli agenti cibernetici automatici in una società cibernetica è soverchiante rispetto al numero degli esseri umani nella stessa società. E questi agenti non sono come i Giudici: eseguono MECCANICAMENTE il proprio programma. SEMPRE. Anche quando sono programmati per far credere a poveri profani di essere "intelligenti". Questi agenti fanno SEMPRE ciò per cui sono programmati (imperativamente o statisticamente, è irrilevante da questo punto di vista). A fronte di questa sproporzione (peraltro destinata a salire) coloro che vogliono preservare la propria autonomia hanno solo due opzioni: - smettere di vivere nella società cibernetica - imparare a dominare gli automatismi che ne fanno parte Questi automatismi infatti eseguono meccanicamente la volontà di chi li ha realizzati e diffusi, anche quando interagiscono con gli "utenti". >Esagero, ma è giusto per farmi capire... > >Alle superiori si potrebbe acquisire una piena cittadinanza ovvero >imparare a scrivere la propria costituzione, il proprio protocollo >esperimento di laboratorio, la propria molecola per la cura del >raffreddore, ecc. Attenzione che ho detto _scrivere_, giusto per >"giocare". > >Cosa c'è di diverso con lo scrivere il proprio sistema operativo, ecc.? Che ci sono infinitamente meno Stati costituzionali che automatismi per ogni singolo essere umano. Per quanto sia importante comprendere la Legge, comprendere l'informatica (in una società cibernetica) è più importante. Non a caso, coloro che dominano l'informatica sono DI FATTO legibus soluti (che le multarelle ridicole che si prendono, corrispondono sempre al fatturato ottenuto in pochi secondi proprio grazie alla violazione delle norme per cui vengono multati). E' questa, purtroppo, la cruda realtà. Lessing scriveva che il Codice è Legge. Si sbagliava. Il Codice è molto più potente della Legge. E chi controlla il codice è più potente degli Stati, figurati delle persone. Possiamo far finta di non vederlo e diventare burattini. O possiamo acquisire e diffondere una piena cittadinanza cibernetica, per provare a restaurare una vera democrazia. Diffondere il nostro potere è l'unico modo di bilanciarlo, di renderlo uno strumento di libertà invece che di oppressione. Non c'è altro modo, come dimostra la sudditanza degli stati europei. >In altre parole, vorrei un futuro dove sia dato per scontato che /anche/ >la partecipazione alla vita cibernetica è un diritto umano fondamentale, >con tutto quello che ne consegue. [2] Beh... questo accadrà di sicuro! Il problema è come. Si potrà diffondere una piena cittadinanza cibernetica fra tutti gli esseri umani (la soluzione che auspico) o si potrà ridefinire l'essere umano come colui che può controllare gli automatismi (la soluzione contro cui mi batto per le mie figlie) e tramite essi, gli altri. Hacker o robot. Davvero: in una società cibernetica temo non ci siano altre opzioni. Giacomo _______________________________________________ nexa mailing list nexa@server-nexa.polito.it https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa