WordPress e due o tre cose sulle pagine web – #ltis13

Locandina del connectivist Massive Open Online Course: Laboratorio di Tecnologie Internet per la Scuola - #LTIS13

Prima un’informazione di servizio: ho aggiornato i file OPML con i nuovi blog comparsi fra il 27 aprile e il I maggio. I file si trovano nella colonna a destra in alto, sezione Info #ltis13, ma metto il link anche qui: pagina dei file OPML.


Anche questo post scaturisce da alcuni vostri commenti, ma questa volta colgo l’occasione per aggiungere un approfondimento.

L’argomento attiene al confronto fra Blogger e WordPress (WP) e appare più o meno esplicitamente in molti commenti: @Monica Terenghi #16,17 (WP toglie l’attributo che fa aprire una nuova pagina), @Mario (iciaunord) #27-29 (idem), @Claude Almansi #40,43 (allarga il tema: WP non solo toglie ma aggiunge…), @Andreas #70 (breve spiegazione) @luciab #83 (si vede trasformare il codice di embedding di un video in WP), @tnt54 #117, 120,121 (anche a lei WP toglie l’attributo di apertura in un’altra pagina) in  Costruire un link con HTML; Maria Grazia #10, Claude Almansi #12, Maria Grazia #15, Claude Almansi #18 (tutti sul confronto Blogger-WP), annaritabergianti #33 (perde il codice di embedding di sccop.it),  anelim54 #34-37 (non riesce a usare varie formattazioni nel commento) in Qualche altro elemento HTML. E quasi certamente ho dimenticato qualcosa.

Strutturo il post nel modo seguente: una breve precisazione e poi un approfondimento. Quest’ultimo da leggere con calma, senza stress – non fate le ore piccole, c’è tempo. Vi compaiono dei nuovi acronimi, saranno nuovi per alcuni. Non vi fate intimorire. Li ho citati perché capita di sentirli menzionare, almeno iniziate a farvi un’idea di cosa significhino. E se proprio vi disturbano fate finta di niente, Quello che conta è il discorso generale, che dovrebbe essere comprensibile.

La precisazione concerne il confronto fra Blogger e WP. Innazitutto occorre distinguere fra WordPress.org e WordPress.com che fanno capo alla stessa organizzazione, servono tutti e due a fare blog ma sono cose diverse. Il primo è un software libero da scaricare e usare su un proprio sistema in hosting, come abbiamo scritto in Apriamo il blog. Il secondo è un servizio Web, dove ci si iscrive e ci si gode il servizio, di blogging in questo caso. Quando si cercano dati su WP in rete può accadere di confondere le due cose. Ad esempio, quando Claude cita il numero di vulnerabilità in WP e Blogger, estratte dal database di Common Vulnerabilities and Exposures, e trova che quelle in WP sono 376 e quelle in Blogger sono 30, occorre rilevare che si riferiscono (quasi) tutte a WP.org, e in particolare ai numerosissimi plugin con i quali si può arricchire il proprio blog atuogestito. Ho messo il “quasi” fra parentesi perché non sono proprio sicuro che non ve ne sia nessuna che concerna WP.com, per quanto abbia frugato.

Il servizio WP.com è più stabile di Blogger. Attenzione, non è assolutamente stabile. Gli umani non producono assoluti di nessun genere. Nella storia di WP.com si annoverano episodi di vulnerabilità, ma è vero che la gente di WP.com persegue strategie tecniche volte a ridurre tali problemi al minimo. Inoltre  WP.com viene considerato da molti un Content Management System, ovvero un sistema per gestire contenuti. Di fatto per me è anche questo, ed è effettivamente molto affidabile e versatile. Blogger dal canto suo  può essere più divertente perché consente di inserire balocchi con maggiore libertà. La maggiore stabilità di WP.com è dovuta a un fatto fondamentale che costituisce il tema dell’approfondimento che segue.


Devo consultare l’orario, anzi devo anche fare il biglietto. Mi siedo al computer e chiamo la pagina http://www.trenitalia.it. Devo andare da Firenze a Milano. Scrivo Fi… è già sceso un menu a tendina: “il sistema” mi fa scegliere fra Firenze Campo di Marte, Firenze S. M. Novella, Rho-Fiera Milano, Riminifiera. Furbetto! Ma come fa?

Ragioniamo. Cos’è il sistema? In questo caso il sistema comprende il mio computer, proprio questo su cui sto facendo la prova. Poi il mio router casalingo che lampeggia qui davanti, in sostanza un computerino che sa dove indirizzare i pacchetti di informazione nella rete, il primo nodo che i miei pacchetti di informazione devono superare per inoltrarsi nella rete. Ma i pacchetti ne dovranno superare altri, perché la rete è fatta di nodi collegati fra loro, innumerevoli, e in ognuno di questi possono esserci delle diramazioni. Ho controllato, stasera i miei pacchetti devono superare 15 nodi per raggiungere il server delle ferrovie. Domani forse di più, o di meno. La rete è dinamica: la via per collegare due punti può cambiare. E poi c’è il server delle ferrovie, quello che mi risponde quando chiamo http://www.trenitalia.it. Quest’ultimo è un computerone acceso 24 ore su 24, 7 giorni su 7. In realtà ci sarà un insieme di server, che si suddividono il carico di lavoro con criteri sofisticati. Ma alla fine sarà uno quello che mi risponde.

Un sistema composito e eterogeneo, e dinamico. Fra dieci minuti potrei decidere di fare la stessa cosa con il tablet, o con lo smartphone. Il sistema può essere ricomposto in una varietà di configurazioni fisiche, ma io lo vedo sempre come un’unica “macchina”, alla quale chiedo un orario ferroviario.

Io ho la domanda e Trenitalia ha i dati. Io manovro il lato “client”, Trenitalia il lato “server”. Il client ce l’ho io, il server è lontano. Quando invoco http://www.trenitalia.it, il server delle ferrovie mi risponde, inviandomi una pagina che posso vedere nel browser, su computer, tablet o smartphone che sia. Quella pagina è codificata in HTML, che voi avete già assaggiato. Quando fate clic su uno dei vari link che ci sono nella pagina, io faccio partire una richiesta più specifica al server delle ferrovie. Il server, in base al link che ho cliccato, confeziona una nuova pagina e me la rispedisce. Il mio browser si limita a mostrarmela.

Questo è il meccanismo base dei servizi web. Provatelo, cliccando per esempio il primo link in alto a sinistra nella pagina http://www.trenitalia.it: “Home FS”. Vedrete che vi aprirà una nuova pagina, diversa dalla precedente. L’aprirà in un’altra finestra (o scheda, tab, del browser). Questo dipende da come è scritto il link. Se per esempio, andate nel mio blog, http://iamarf.org, e cliccate sul titolo del primo post, Bacheca-forum – #linf12, la pagina verrà sostituita da una nuova, che invece di contenere la lista degli incipit dei primi post, conterrà solo quel post con tutti i suoi commenti. Il meccanismo è lo stesso: voi chiedete una nuova pagina e il server ve la invia.

In questo schema, il lavoro fatto dal sistema può essere pensato come diviso in due parti: il lavoro del client, che consiste nel registrare i vostri clic e spedirli al server, e il lavoro del server, che consiste nell’interpretare quei clic, frugare fra i suoi dati, e rispedirvi ciò che avete chiesto.

I dati sono conservati dal server in una cosa che si chiama database, o più precisamente database relazionale. In questo tipo di database, i dati sono organizzati in tabelle collegate fra loro da un preciso schema di relazioni, il tutto architettato in maniera tale che, anche quando la struttura dei dati diviene molto complessa, la mole ingente e il ritmo delle interrogazioni frenetico, l’integrità dei dati non viene mai messa in pericolo. Esiste un linguaggio concepito apposta per porre interrogazioni a questo tipo di database, si chiama Structured Query Language (SQL). Esiste anche un’implementazione open source di questo linguaggio che si chiama MySQL. Questa è enormemente diffusa in una miriade di applicazioni in tutto il mondo. Non ci serve sapere altro a riguardo, giusto che esiste.

Ma il lavoro del server non consiste solo nel porre domande al database. Quando il server riceve le informazioni relative ad un click, deve compiere delle elaborazioni che danno luogo a precise interrogazioni da porre al database, quindi deve elaborare le risposte e confezionarle adeguatamente in una nuova pagina HTML da rispedire al vostro client. Questo tipo di lavoro viene realizzato mediante un linguaggio che si chiama Hypertext PreProcessor (PHP). È un vero e proprio linguaggio di programmazione che può essere intercalato in una pagina HTML, utilizzando un particolare tipo di tag, che per la cronaca – ma solo per la cronaca! – è

<?php qui viene la serie di istruzioni scritte in PHP ?>

Il server, prima di rispedire la pagina HTML al client, esegue tutte le istruzioni PHP che ci trova dentro, e che gli consentono di determinare la forma finale con la quale la pagina apparirà nel client.

Non ci serve sapere altro, eccetto mettere a fuoco il fatto che il server per ogni clic che lo “solletica” fa molto lavoro: interpreta le informazioni legate al clic, pone domande ai database, elabora le risposte e confeziona le pagine da rispedire indietro. Se i clic sono molto numerosi, il server può andare in crisi e non farcela.

Questo era il meccanismo su cui si basava il vecchio web, per così dire. Il web pre 2.0, dove le pagine erano dinamiche ma meno di oggi: per cambiare anche un piccolo particolare di una pagina, questa doveva essere rinfrescata completamente. Non è che questo meccanismo non si usi più, tutt’altro, ma solo quando è inevitabile farlo, come nei due esempi precedenti.

In realtà noi oggi siamo abituati a tutto un altro dinamismo delle pagine: la pagina resta là e solo certe sue parti mutano, e in maniera istantanea, non solo in funzione dei clic subiti, ma mediante il semplice “sorvolo” del puntatore del mouse, o anche spontaneamente – anche troppo spesso talvolta. Riprendiamo l’esempio di http://www.trenitalia.it. Se guardate la pagina e aspettate qualche istante vedrete come ogni tanto la pubblicità sottostante cambi. Ma soprattutto, provate a viaggiare con il puntatore del mouse sulle voci “LE FRECCE”, “OFFERTE E SERVIZI” eccetera. Vedrete che quando il puntatore si troverà sopra una di queste voci, scenderà istantaneamente un menu a tendina, senza che voi abbiate cliccato.

Chi fa questo lavoro? Il server? No, non potrebbe reagire così velocemente. Il meccanismo che abbiamo visto, richiederebbe che tutta la pagina venisse rinfrescata interamente dopo essere stata spedita, cambiata e resa dal server. Allora il client? Ma come è possibile? Per quanto ne sappiamo, il client non fa altro che spedire clic con qualche informazione e ricevere nuove pagine da mostrare al posto delle vecchie, che abbiamo visto essere codificate in HTML. E se nelle pagine HTML ci sono dentro istruzioni PHP, sappiamo che queste comunque vengono eseguite dal server, prima di essere rispedite indietro. E allora? I nodi intermedi? No, quelli fanno solo un lavoro di bassa manovalanza, loro manco le pagine concepiscono, ma solo piccoli pacchetti di informazioni, nei quali quelle sono spezzettate; i nodi ricevono pacchetti, li smistano e li inviano nelle direzioni che credono giuste. Allora, chi si fa carico di tutti quegli aggiornamenti rapidi e localizzati che siamo abituati a vedere nelle pagine web?

In effetti ci manca un ingrediente. Qualcosa che lavori nel client. E questa cosa c’è: nella maggior parte dei casi si chiama Javascript, ancora un linguaggio. Voi direte – Ma perchè tutti questi linguaggi? – Perché ognuno è adatto a svolgere un certo tipo di attività in un certo contesto. Non è che siano poi molto diversi fra loro, ma sono comunque distinti. Tuttavia lasciamo queste valutazioni a chi si occupa di software. A noi interessa sapere che in una una pagina HTML si possono includere anche sezioni scritte in Javascript, che vengono eseguite in corrispondenza di certi eventi, per esempio un bottone che viene cliccato o una particolare zona che viene sorvolata.Queste sezioni di codice Javascript vengono eseguite nel client, a differenza di quelle in PHP che vengono eseguite nel server. Sempre per la cronaca, le sezioni di codice Javascript sono incluse in tag di questo tipo

<script>
qui viene la serie di istruzioni in Javascript
</script>

Il fatto che il codice Javascript venga eseguito nel client spiega la reattività immediata delle pagine web; per verificare riprovate a volare sulle voci di menu di http://www.trenitalia.com. Ma non è solo questione di accorgimenti grafici. Torniamo a fare la prenotazione con la quale avevamo iniziato: scrivo Fi… è già sceso un menu a tendina: ho appena iniziato a scrivere il nome della città, Fi, e “il sistema” mi fa scegliere fra Firenze Campo di Marte, Firenze S. M. Novella, Rho-Fiera Milano, Riminifiera. Furbetto! Ma come fa?

Beh, ora forse è un po’ più chiaro. Evidentemente il codice HTML di quella pagina include una sezione di codice Javascript che si attiva quando inizio a scrivere nella casella “Da:“. Ma c’è ancora una domanda: per sapere tutte le stazioni che iniziano con i caratteri “Fi”, lui deve interrogare il database e questo si trova nel server… allora come fa un codice che gira nel mio client a interrogare il server? In effetti, con le prime versioni di Javascript non sarebbe stato possibile fare una cosa del genere. Poi, dopo alcuni anni è stata sviluppata una tecnica che, mediante codice javascript, consente di porre interrogazioni al database localizzato remotamente, riaggiornando solo alcune parti della pagina al volo, in funzione delle risposte ricevute. Questa “nuova” tecnica si chiama Asynchronous JavaScript and XML (AJAX).

Non entriamo in ulteriori particolari e dimenticate serenamente ciò che vi opprime. Badate però di essere consapevoli del fatto che oggi quando si lavora con una pagina web accadono molte cose nel proprio client il quale, ricordiamo, può essere il computer, il tablet, lo smartphone e tutte le possibili variabili, presenti e prossime venture. La cosa ha due conseguenze rilevanti.

La prima è che grazie a questa stratificazione successiva di tecnologie, il web ha potuto dinamizzarsi enormemente, grazie a una distribuzione più equilibrata del carico di lavoro fra congegni richiedenti (client) e prestatori di servizi (server). In questo modo la stratificazione dei linguaggi e la fluidificazione del codice distribuito in una miriade di macchine, che collegate fra loro formano la rete, hanno reso possibile il web 2.0.

La seconda conseguenza consiste nel fatto che nei nostri congegni succedono molte cose. Sempre più, quando carichiamo pagine web, carichiamo anche un bel po’ di software. E il Javascript non è il solo tipo di codice “straniero” che può girare nel vostro computer, ad esempio Java e Flash sono altri tipi di software che possono essere importati con le pagine web. I video Youtube funzionano in Flash per esempio. In generale, tutto ciò si traduce in maggiorate e migliorate funzionalità ma, come sempre succede, anche in qualche problema:

  1. Qualsiasi software assorbe risorse dal computer, anche quello che viene con le pagine web. Navigare il web non è assimilabile ad una pratica omogenea di recupero e visualizzazione di documenti; può accadere che il computer rallenti improvvisamente in seguito al caricamento di una pagina web o ad un clic su un particolare comando. Un clic apparentemente innocente può implicare l’attivazione di un software che per una varietà di motivi può risultare particolarmente oneroso.
  2. Il software può contenere errori e le conseguenze degli errori in un software sono del tutto imprevedibili: siamo nel regno della complessità e un piccolo difetto può tradursi in una grande varietà di comportamenti anomali.
  3. L’avvicendarsi frenetico delle nuove revisioni di tutti i componenti che oggi concorrono ad ogni singola funzionalità del web crea non poca farragine. Ogni volta che un singolo componente evolve in una nuova versione, vari altri componenti devono in qualche maniera adeguarsi. Per esempio, quando esce una nuova versione di HTML, è necessario aggiornare tutti i browser in maniera che siano in grado di interpretare le direttive del nuovo standard. Purtroppo questo processo passa sopra la testa dei poveri utenti, i quali sono così costretti a prendere sul serio le svariate richieste di aggiornamento che periodicamente vengono loro proposte: Browser, Java, Javascript, Flash, sistema operativo eccetera.Ma il problema non concerne solo l’evoluzione temporale. Chi usa contemporaneamente più accessi a internet può incorrere frequentemente in episodi irritanti. Il caso di chi scrive è estremo, per ovvi motivi professionali: se mi rivolgo ad una platea generalizzata non posso ignorare tutte le istanze di coloro che hanno sistemi diversi dal mio! Ecco che non mi succede quasi mai di essere perfettamente a posto con Windows, Mac OSX, Linux, IOS (iPad, iPhone…), Android (Samsung…). Se per esempio ho bisogno di utilizzare PiratePad, ecco che scopro che sull’iPad funziona poco e nulla – se utilizzo un certo tipo di wiki (siti per scrittura cooperativa) ecco che dopo avervi accumulato centinaia di studenti come utenti, scopro che con iPad non funziona affatto – in questo momento ho Flash aggiornato su Windows e su Mac ma su Linux no – eccetera eccetera…
  4. Una poco simpatica conseguenza dei fatti precedenti è la rapida obsoloscenza dell’hardware, dal computer allo smartphone. Navigare il web con computer vecchi può rivelarsi un’esperienza defatigante. Non bisogna dimenticare che pare valga ancora la legge di Moore, che semplificando un po’, dice: la potenza dei computer raddoppia ogni 1.5 anni. Questo significa che in un lustro le potenzialità dell’hardware sono quasi 10 volte superiori, un ordine di grandezza! Dal canto suo, il software si evolve adeguandosi all’hardware. Ma dal punto di vista dell’utente, aggiornare il software è spesso facile e gratuito, sostituire l’hardware è faticoso e costoso.
  5. Il software può essere anche scritto con l’intenzione di fare danno. Una parte del cosiddetto malware può giungere attraverso il codice portato dalle pagine web. Niente panico.Il mondo è pericoloso, anche se ce lo raccontiamo sicuro. È il prezzo della vita. Il cyberspazio, ormai duale del reale a tutto tondo, non fa eccezione. Ci si può vivere dentro con un minimo di buon senso, e la consapevolezza che è possibile inciampare in qualche ostacolo. Il buon senso nella fattispecie consiste nell’abitarlo con accortezza, elevando il livello di attenzione nei luoghi sconosciuti. Ad esempio, pagine eccessivamente policromi, con banner mobili, un po’ tipo slot machine, siti che consentono di scaricare gratuitamente ma che non dichiarano esplicitamente di offrire software open o free source, pagine che offrono sistemi per crackare chiavi o altro software, sono in generale da evitare. Insomma, il cyberspazio non è il paese dei balocchi ma è il mondo, che è pieno di ciarpame e ricchezza allo stesso tempo. Per percorrelo e conoscerlo occorrono attenzione e ponderazione.

49 pensieri riguardo “WordPress e due o tre cose sulle pagine web – #ltis13”

  1. @valottof#35 (esageratamente in ritardo causa impegni di lavoro esageratamente pressanti) OK, ho pensato al tuo suggerimento, ho progettato qualcosa da inserire nel mio blog entro la fine della settimana. Qesto periodo a scuola è “denso” e quando torno a casa la sera (perché questa settimana ho tutti i pomeriggi impegnati fino a venerdì) non sono abbastanza lucida per mettermi di nuovo a lavorare.

    1. @Antonella #40. Ho dovuto riguardare per ricordarmi a cosa ti riferissi, ma mi fa piacere che tu l’abbia accolto! Soprattutto credo che qui viga il vecchio (ma sempre vivo nei nostri cuor! 😉 ) motto del ’68 A ciascuo secondo i suoi bisogni, da ciascuno secondo le sue possibilità!
      Unica cosa non parlarmi di orari: sono le 22.30 ed il tuo è il primo di una lunga serie di commenti ed articoli che devo leggere! Questa sera rincasando ho trovato 151 mail da controllare… SIGH!

  2. Trovo molto chiaro questo post di approfondimento. Non saprei dire quanto le cose siano state semplificate e quanti particolari siano stati omessi, e non mi interessa saperlo. La spiegazione fila perfettamente e ci rende un’idea chiara di quante e quali cose succedano ad ogni nostro clic. E siccome di metafore ognuno si fa le sue, a me leggendo il post me ne è venuta una che vi risulterà proprio strampalata. Ho trovato una similitudine tra le diverse risposte date a livello di server (più lente e dove si rifà tutta una pagina) e a livello del client attraverso javascript (più veloci ed immediate ed il SISTEMA ENDOCRINO. Ebbene si, sono professionalmente deformata. Dovete sapere che il sistema endocrino del nostro organismo utilizza come linguaggio di comunicazione il sistema di interazione ormone-recettore. Gli ormoni vanno a dire cosa c’è bisogno di fare legandosi a delle molecole proteiche fatte apposta per loro che si chiamano recettori e che stanno nelle nostre cellule. Alcuni ormoni danno luogo ad una risposta più lenta che prevede una attivazione di geni che poi sintetizzano proteine. Altri ormoni invece danno luogo ad una risposta rapida, immediata spesso dovuta all’attivazione di enzimi che fanno subito qualcosa di specifico. Del resto il sistema endocrino è un vero e proprio sistema biologico complesso di comunicazione all’interno dell’organismo (come la rete) ed utilizza diversi linguaggi (come succede nella rete) codificati da ormoni diversi per risolvere i vari problemi di comunicazione.
    Vi giuro che non lo faccio più. scusate.

    1. Andreas il mio “credo” era retorico: ho alle spalle 25 anni di formazione/addestramento aziendale e so bene quanto sia importante il contributo delle competenze specifiche quando tu entri come tecnico evoluto, ma di competenze generiche! 😉

  3. @Gianni #20 Grazie Gianni per quello che hai scritto.

    In questi giorni, dopo un po’ di assenza dal laboratorio per motivi essenzialmente di lavoro, ho ricominciato leggendo gli ultimi post ed i commenti. Alcuni commenti mi hanno indirizzato verso dei blog che non conoscevo e che mi sono permessa di esplorare, negli articoli e nelle considerazioni su di essi. Non sono riuscita a rispondere a nulla, non perché non avessi niente da direal contrario avrei voluto fare tante considerazioni… Ora vorrei rubare un po’ di spazio per farlo. Permettimi benevolmente di utilizzare alcune tue frasi, perché sono la sintesi della tendenza di vari commenti in cui mi sono imbattuta e su cui vorrei esprimermi.

    ” (…) Un pò “arrogantemente” fino ad oggi mi era sembrato che tutto si stesse svolgendo su una linea nn troppo affascinante
    Nn tanto per gli stimoli di Andreas, di cui ammiro l’autodefinirsi di nn essere nè un tutor nè un moderatore. Quanto per la sequela di commenti che mi apparivano più ossequiosi che stimolanti, più improntati a dar ragione e gratificazione al “professore”, che a costruire collaborazione e condivisione, più improntati a risolvere problemi (esistono le faq per questo), che a costruire “il villaggio” (…)”
    Questi commenti apparsi a molti “più ossequiosi che stimolanti” sono sicuramente stati anche miei: ho capito dal principio che per tanti partecipanti a questo cMook io non avrei avuto niente di interessante da dire, data la mia nullità a livello tecnico e la mia scarsa dimestichezza con tutto quello che è digitale. Mi sono trovata a scegliere se seguire in silenzio o dire semplicemente, magari in modo scialbo, quello che pensavo o provavo. Ho deciso di parlare, di commentare come sapevo o potevo, perché nel villaggio ci sono anch’io, così come sono, perché ridurmi ad essere completamente invisibile?

    “(…) commenti (…) più improntati a dar ragione e gratificazione al “professore”, che a costruire collaborazione e condivisione(…) che a costruire “il villaggio” (…)”.
    Ognuno ha la sua storia, il suo percorso di vita: io, ad esempio, pur di non essere ossequiosa e accondiscendente con chi in un certo momento rappresentava “l’autorità”, ho sottoposto me e la mia famiglia ad una vita più complicata di quella che avrebbe potuto essere se solo avessi avuto un atteggiamento diverso, più “accattivante”. Qui, non avendo nemmeno interesse ad ottenere CFU, non avrei nemmeno interesse a “lusingare” il professore che, tra l’altro, non conosco: se esprimo giudizi positivi rispetto a questo lavoro è perché lo apprezzo veramente, se c’è qualche sbavatura non mi sogno di dirlo non perché mi faccia comodo tacere, ma perché capisco quanto il lavoro organizzativo (quasi 500 iscritti) sia impegnativo, quanto sia difficile lavorare con un gruppo così eterogeneo, per cui qualche imperfezione è addirittura naturale che ci sia.
    In quanto all’entusiasmo…io sono entusiasta anche di un piccolo progresso dato il mio livello di partenza e la mia quasi totale mancanza di prerequisiti e mi piace comunicarlo, condividerlo per la mia soddisfazione, ma anche per incoraggiare chi ha difficoltà : questo potrebbe essere il mio apporto alla costruzione del villaggio, dato che non sono capace di condividere conoscenze tecniche.

    “(…)Stasera invece si è acceso l’indicatore del “senso di appartenenza”
    Ho “sentito” di far parte di qcsa
    Di appartenere a quella categoria che Andreas definisce così bene nel suo semplice ed ottimo commento
    Quel mondo a cui basta il senso del discorso, quello che si può dire e intendere scegliendo parole di tutti i giorni.
    Mi scuso con tutti coloro dei quali ho scambiato per accondiscendenza l’entusiasmo che scaturisce dall’accendersi di una piccola luce nel buio dell’ignoranza e con quelli che mi son apparsi un pò troppo presupponenti nel dar per scontate informazioni che invece ai più mancano(…)”

    Anch’io appartengo a questa categoria: mi basta il senso del discorso, lo so ripetere solo con parole mie, posso fare e/o apprezzare neologismi come “bluificare”, sapendo perfettamente che non è un termine tecnico ma che in quel momento rende l’idea di cui ho bisogno, per capire o per aiutare qualcuno a capire. Per me va bene così. …E dopo aver passato una vita a frequentare corsi di vario genere, fitti, impegnativi, on line e in presenza, nella mia città e non solo, sono felice di essere qui, con questa leggerezza che deriva dalla metafora, dalla battuta scherzosa, dall’ironia benevola…felice di essere qui ad imparare finalmente qualcosa che mai avrei immaginato di studiare. A modo mio.

    Sono contenta di averti come vicino di casa.

    Grazie per quello che hai scritto, e permettimi di condividere la tua frase conclusiva:
    Vi ringrazio di avermi ascoltata e spero che continuiate ad accogliermi
    Siate i benvenuti a “casa mia”

    P.S. Perdonatemi per aver scritto tanto e non aver rispettato la Netiquette.

    1. @Antonella T #34 “per tanti partecipanti a questo cMook io non avrei avuto niente di interessante da dire, data la mia nullità a livello tecnico e la mia scarsa dimestichezza con tutto quello che è digitale
      E perché mai?! Siamo qui per gli “strumenti per la didattica”, non per gli “strumenti tecnici”!!!!
      Credo che chi è meno competente sul versante tecnico (non c’è mica nulla di male: io lo sono su quello didattico e non me ne vergogno affatto!) può contribuire soprattutto sull’altro.
      Anzi: credo che Andreas avrebbe bisogno di questo contributo! Non intendo dire che gli manchi l’altra competenza (me ne guardo bene!) ma che la didattica non è una ma mille. Ci sono materie, argomenti, specialità, livelli d’età e chi più ne ha più ne metta. Credo che i “feedback applicativi” (potrei provare con i miei a….) siano più utili degli apprezzamenti (che comunque non guastano mai).
      Inviterei dunque te e tutt* coloro che scoprono qui degli strumenti per loro totalmente nuovi, a calarli nel quotidiano e ad offrire, a chi invece magari questi strumenti li conosce, sensazioni e pensieri sui modi di usarli.
      Così diventa uno scambio conveniente per tutti: chi conosce la tecnica e chi conosce i modi di usarla

  4. @valottof #23 È importante questa considerazione di Francesco. E alla fin fine il problema discende da un’istruzione che sigilla le teste in scatole monodisciplina. Il problema delle tecnologie pensate da ingegneri si sono dimenticati di essere cittadini, è un problema riconosciuto globalmente. Ho letto articoli sull’Economist a riguardo.

    1. @iciaunord #28
      Come no: pubblica e gratuita! Un’idea che ho la presunzione di ritenere del tutto originale. è SusyDiario, sottotitolo “Tutto un altro modo di fare scuola”. Se la vuoi provare però ti suggerisco di iscriverti chiedendo (è moderata) l’abilitazione come insegnante, in caso contrario hai a disposizione solo una piccolissima parte degli strumenti.

  5. Non ho capito molto ma qualcosa sì; soprattutto ho avuto conferma del fatto che ci vuole un minimo di conoscenza tecnologica se si vuole apprezzare/dominare adeguatamente quel che si utilizza. Gli inconvenienti sono all’ordine del giorno, bisogna avere sempre gli aggiornamenti giusti dei programmi che si utilizzano e che interagiscono tra loro, sapere (solo perchè lo si scopre utilizzandoli) che certe operazioni consentite su certe piattaforme non sono possibili su altre, e proprio perchè il linguaggio del web evolve in tempi rapidissimi, questo ci obbliga a tenerne il passo.
    Apprezzo anche moltissimo la sincerità dei partecipanti, come la loro professionalità, pazienza o simpatia, ingredienti che stanno tutti per il volere creare un ambiente diretto, attivo, stimolante, non scontatamente autoreferenziale. Tutto nel doveroso rispetto delle diversità, come è naturale e positivo che sia… 🙂

  6. @Antonellarubino #10, #21 Non c’è proprio nulla da scusarsi: semmai siamo noi (anche)sviluppatori di software che amiamo lamentarci del destino cinico & baro che ci affligge. Ma lo facciamo, tendenzialmente, perchè c’è sempre qualcuno che ci risponde “non ho capito nulla: devi essere bravissimo tu!!!”, insomma: una comoda esca per complimenti tesi a rafforzare in nostro io provato da troppe ore di rapporto quasi esclusivo con monitor e tastiera!!!! 😉
    Scherzi a parte dice benissimo Andreas#18: ci sono gli sviluppatori e gli utenti, hanno competenze e conoscenze diverse e pretendere di sovrapporsi sarebbe assurdo.
    Quello che invece è importante (e troppo spesso trascurato) è il confronto. Il software deve nascere per aiutare l’utente nei suoi compiti. Per ovvi motivi potrà aggiungere un livello di complessità, ma questo non deve essere eccessivo, non tale quantomeno da “mangiarsi” il margine di vantaggio che offre per il raggiungimento dei risultati. Inoltre è l’utente che sa quali sono gli obiettivi e come devono essere raggiunti. Quindi chi progetta e crea software DEVE interagire con lui per capirne necessità, limiti, aspirazioni, ecc. Ed una volta completato il lavoro deve farlo di nuovo per essere certo che quello che ha immaginato utile e semplice lo sia veramente!
    Ti porto l’esempio della mia piattaforma didattica. Nata come gioco per mio figlio, mi ha rubato notti e vacanze ed è cresciuta molto per 2 anni circa. Poi ho iniziato a lavorare con un maestro – utente evoluto di informatica, ma non un “tecnico”. Nel giro di qualche mese l’abbiamo rivoltata come un calzino e gli sviluppi che ha avuto in questo periodo hanno di gran lunga superato quelli dei due anni precedenti. Insomma: c’è stata una “idea tecnica” che ha portato ad un prototipo, ma solo il confronto con i veri utilizzatori ha potuto trasformarlo in uno strumento.
    Ecco: per consentire un confronto costruttivo è bene che ciascuna delle due parti mastichi un po’ il gergo e la percezione del livello di complessità dell’altra (e la cosa deve essere reciproca!), ma poi: ciascuno nel suo ambito e guai a pretendere di debordare in quello dell’altro!

    @Claude #16. Eh si: a volte è proprio l’unica risposta che ti resta: “si troveranno antipatici!” 😉
    Uno dei grossi problemi (che per altri versi è un enorme vantaggio!) è la stratificazione dei software che comporta una variabilità potenzialmente illimitata delle condizioni operative. Esempio estremo. Io lavoro in ASP, tecnologia lato server (equivalente al PHP citato da Andreas) che opera solo su server Windows (non sto a giustificarne i motivi: PHP è meglio perchè libero, ma il mercato a volte impone delle scelte). Per sviluppare uso un server della mia rete locale, un po’ datato ma efficiente per quello che mi serve. Terminato il lavoro lo trasferisco in internet sul server di qualche provider che, tendenzialmente, aggiorna le versioni di windows alla più recente. Bene: la stessa identica applicazione, su versioni diverse di Windows fornisce un risultato leggermente diverso. Nulla di eclatante, ma non è esattamente quello che vedevo qui! Poi c’è il rallentamento: internet è più lenta della rete locale; poi ci sono gli utenti ciascuno dei quali ha la sua attrezzatura, il suo sistema operativo, la sua preferenza in fatto di browser e le sue impostazioni (opzioni, sicurezza, barre aggiuntive, ecc.). E le impostazioni? Ultimamente ho speso 2 giorni a capire perchè un’applicazione che funzionava ovunque si bloccava continuamente per un cliente. Fino a che ho scoperto che “per risparmiare” avevano cambiato le impostazioni sul database: dopo 60 secondi senza interrogazioni decideva che non c’eri più, ed ho dovuto modificare tutto il software!

  7. Bel discorso fratè…vedo che la raccomandazione sulle ore piccole non ha avuto successo!
    Faccio la seria, per una volta (ma solo una!)
    Anch’io devo scusarmi con qualcuno: Francesco il mio commento #10 era sarcastico (e riferito a me stessa!) e non voleva assolutamente sminuire gli interventi dei “fabbricanti” che ammiro molto nelle loro complicate delucidazioni sul compito che vanno, via via, schiarendo il panorama così tempestoso dell’utente (io) che vuol capire cosa succede al di là dell’orizzonte…
    Del resto ho approfittato di voi (e lo farò ancora) quando mi è servito!
    Ho toccato con mano le traduzioni dei linguaggi caricando il mio file ppt su di un server e trovandolo parzialmente stravolto
    lo trovate qui>
    Spero possa servire a qualcuno che come me ha bisogno di sdrammatizzare e colorare anche le cose serie…
    Buonanotte, anzi BUONGIORNO
    🙂

  8. Stasera, leggendo il commento #18 di Andreas, mi sono finalmente sentito in sintonia con i miei concittadini
    Devo dire la verità
    Iniziando questo corso avevo delle aspettative
    Pur nn essendo assolutamente un esperto di web, ma al massimo un utilizzatore meccanico di funzioni, pensavo che avrei imparato qcsa di significativo (strumentalmente) ma nn riuscivo ad afferrarlo in mezzo alla miriade di commenti e repliche (= kaos)
    Un pò “arrogantemente” fino ad oggi mi era sembrato che tutto si stesse svolgendo su una linea nn troppo affascinante
    Nn tanto per gli stimoli di Andreas, di cui ammiro l’autodefinirsi di nn essere nè un tutor nè un moderatore
    Quanto per la sequela di commenti che mi apparivano più ossequiosi che stimolanti, più improntati a dar ragione e gratificazione al “professore”, che a costruire collaborazione e condivisione, più improntati a risolvere problemi (esistono le faq per questo), che a costruire “il villaggio” (metafora validissima, ma senza escludere nessun ambiente digitale)
    Ne ho anche parlato con qualcuno e son stato anche un pò criticato, ma nn ho perso la mia sensazione di sentirmi un pesce fuor d’acqua
    Stasera invece si è acceso l’indicatore del “senso di appartenenza”
    Ho “sentito” di far parte di qcsa
    Di appartenere a quella categoria che Andreas definisce così bene nel suo semplice ed ottimo commento
    Quel mondo a cui basta il senso del discorso, quello che si può dire e intendere scegliendo parole di tutti i giorni.
    Mi scuso con tutti coloro dei quali ho scambiato per accondiscendenza l’entusiasmo che scaturisce dall’accendersi di una piccola luce nel buio dell’ignoranza e con quelli che mi son apparsi un pò troppo presupponenti nel dar per scontate informazioni che invece ai più mancano
    Come frequentatore del cyberspazio da molti anni, anche se più virtuale che digitale, ho sempre amato stare in compagnia
    Ho sempre condiviso l’aristotelica idea che l’uomo (nn il genere, ma l’Umanità) ha nel proprio codice genetico “la relazione” come componente vitale, aldilà dei giudizi di merito sulla sua qualità
    Adesso ne percepisco il valore della presenza anche in questa esperienza
    Il mio potrà sembrare un commento sciocco o inutile, forse anche offensivo per qualcuno, ma per me è importante la sincerità
    E…..sinceramente….è il presupposto a cui attribuisco più valore nel rapporto umano e sociale
    Vi ringrazio di averla ascoltata e spero che continuiate ad accogliermi
    Siate i benvenuti a “casa mia”

  9. L’ha ribloggato su cloud biancoe ha commentato:
    […] grazie a questa stratificazione successiva di tecnologie, il web ha potuto dinamizzarsi enormemente, grazie a una distribuzione più equilibrata del carico di lavoro fra congegni richiedenti (client) e prestatori di servizi (server). In questo modo la stratificazione dei linguaggi e la fluidificazione del codice distribuito in una miriade di macchine, che collegate fra loro formano la rete, hanno reso possibile il web 2.0.[…]
    Perché è possibile (tecnicamente) il web 2.0 spiegato in modo semplice.
    Rebloggo per tenere a portata

  10. È necessario distinguere due mondi diversi che qui si intrecciano. È un bene che si intreccino, a patto che sia chiara la distinzione fra essi. Ci sono coloro che la macchina la vedono come utenti e quelli che la macchina la fabbricano, o magari ne fabbricano qualche parte. È naturale che i secondi ne parlino volentieri ed è anche utile che lo facciano, perché così ci offrono prospettive e squarci di realtà che potrebbero essere utili o interessanti, ma deve essere chiaro che è roba loro! Ai primi, a noi, non interessa, non deve interessare divenire fabbricatori della macchina. Sarebbe una follia. Che poi qualche utente possa divenire fabbricatore, per hobby o per casi strani ma sempre possibili, è un altro discorso. Può succedere, ma rientra fra le storie particolari. A noi basta il senso del discorso, quello che si può dire e intendere scegliendo parole di tutti i giorni.

  11. @Andreas e Maria Grazia: I stand corrected per quanto riguarda la stabilità di WordPress e Blogger: scusatemi.

    @Francesco (valottof) #9 Posso capire quanto debbano essere frustranti per voi sviluppatori i problemi che pop, emergono dopo che avete passato ore a provare di tener conto di tutti gli effetti incrociati di tutti gli strumenti che combinate per creare un’applicazione o un programma. Però da utente proveniente dal mondo predigitale, quasi quasi mi fa piacere quando mi imbatto in un “bug”, perché mi ricorda che ad aver creato quel programma, quell’app, siete stati voi sviluppatori umani.

    Ti faccio un esempio: io i feed dei nostri blog li leggo tramite aggregatori Wikispaces.com separati, allineati in una pagina. Passare dai file OPML che ci dà Andreas al codice wiki che genera quella pagina richiede poche sostituzioni semplici, e funziona quasi sempre. Ma in un caso, non solo la traduzione nel codice wiki del feed non soltanto non creava l’aggregatore, ma mi mandava tutta la pagina in tilt, con un messaggio di “errore interno”. Eppure il feed, da solo, funziona perfettamente. Allora da una parte, invece di continuare a tentare di aggregare quel feed e a rovinarmi la pagina, l’ho solo linkato (vedi qui).

    Però mi rimaneva la curiosità, quindi ho segnalato il fatto a quelli di Wikispaces, Risposta piacevolmente franca, dopo qualche giorno:

    “Something in our RSS parser and that feed aren’t getting along, but I don’t see anything immediately obvious as to why that is. The feed does pass the RSS validator, so it is probably a bug in the RSS parser library that we use.”

    (tentativo di traduzione: “Pare che il nostro strumento che analizza l’RSS e quel feed non vanno d’accordo, ma non vedo niente di direttamente ovvio che spieghi perché. Il feed passa il test di validazione RSS, quindi si tratta probabilmente di un bug nella biblioteca di analisi dell’RSS che utilizziamo”).

    Ué, allora è un passaggio corrotto, come dicono i filologi che stabiliscono il testo dei classici della letteratura a partire di una catena o di un intreccio di manoscritti! Mi ritrovo in territorio noto.

  12. Di solito io la metto così:
    un sito web statico si presenta uguale per tutti i lettori che lo consultano. È fatto a due strati, il cliente che legge la pagina, e il gestore del sito che la modifica manualmente, caricando sul servente (o server) le nuove versioni di volta in volta modificate da lui.
    Un sito web dinamico invece si presenta diversamente ai diversi lettori (o categoria di lettori). La pagina web che si presenta al lettore non è modificata manualmente dal gestore del sito, ma da un linguaggio di scripting, di solito il php, annidato dentro le pagine html. Prima di presentare una pagina va ad interrogare il database e il web server che stanno “dietro” (architettura a tre strati) e risponde secondo quello che ha trovato, inviando la pagina html sul navigatore del cliente.

    Di solito facevo l’esempio ebay, ma ultimamente preferisco presentare la nostra piattaforma e-learning Moodle.
    Prima di autentificarsi la pagina è uguale per tutti, ma la gestione dinamica comincia con il login. Si mettono username e password, si clicca e la pagina che si presenta dopo il login è diversa per ogni utente: si trova una scritta recante un “benvenuto nome cognome”; ad ogni utente vengono dati certi permessi, per cui ad esempio se è un insegnante può inserire un compito, se è uno studente no; viene riconosciuto il suo avanzamento nelle attività didattiche (devi ancora fare questo test); e cosi via per ogni attività della piattaforma (forum, blog, sondaggi). Tutta questa magia è possibile interrogando il database e componendo le pagine di conseguenza (chi sei? che ruolo hai? cosa hai scritto? cosa puoi fare qui?).

    Curiosa coincidenza, spesso anche io ho usato l’esempio della vendita su internet di biglietti di treno, evidenziando come di volta in volta il database sottrae i biglietti venduti alla disponibilità iniziale fino ad arrivare al temuto “posti esauriti” (anche se una volta le macchinette mi hanno venduto un biglietto frecciarossa senza posto a sedere).

    Questo semplificando molto rispetto al discorso di Andreas, senza dinamicità lato cliente e tante altre cose.

  13. Bellissimo questo sguardo d’insieme, che riunisce in un solo articolo ben organizzato informazioni che avevo raccolto un po’ qui e un po’ là, con “buchi” logici e discontinuità.
    Apprezzo anche il lungo lavoro di scrittura… Grazie.

  14. Non me ne vogliate…nel mentre, mi affannavo dietro ai fornelli, ma con la testa ancora connessa con l’articolo da poco letto (connessa e fumante, per meglio dire…), mi si è accesa una lampadina: nel mio commento ho scritto
    file Html, prendendo un abbaglio, perchè l’HTML è un linguaggio…. Chiedo venia. Non è facile districarsi nel garbuglio di tutta questa terminologia specifica…mi consola il fatto che prima ero al buio,
    ora scorgo qualche barlume.

  15. Ho finito da poco di combattere con firefox e ora ho capito perché il certificato digitale non ne voleva sapere di uscir fuori.

    Ho letto tutto il post . Non credo di aver capito . Ma mi riservo di tornarci domani. Per stasera ne ho abbastanza di tecnologia.
    Lascio serenamente ciò che mi opprime . Però a dire il vero nella mia testa qualcosa di simile al rapporto client server me lo ero già immaginato così. Empiricamente ovviamente.

  16. Complicato vero?! Considerando che sviluppo applicazioni per il WEB posso garantire che Andreas ha semplificato moltissimo i livelli di complessità e che quando sei felice di aver risolto un problema apparentemente impossibile, magari inventandoti un modo atipico per usare ciò che già esiste, in genere ti accorgi che la tecnica che hai usato funziona perfettamente su Explorer, ma non su Firefox e Chrome (o viceversa) e spesso senza nessuna valida giustificazione (almeno apparentemente) perché ciò accade!
    Non solo: aggiungeteci che sui diversi versanti (database, server, client, codifica HTML) i linguaggi non sono uno per “lato”, ma più di uno, ciascuno dei quali ha funzioni, vantaggi e svantaggi, capacità, evoluzione desincronizzata con gli altri, ecc.

  17. Non sono in grado di entrare nel merito alla lunga ed articolata trattazione sviluppata dal prof sulla complessità del cyberspazio, anche perché sono ancora fresca di spiegazione dei file Html che comincio a
    masticare un po’…ma più di lì, per ora, non vado. Però, ho trovato tutta la materia squadernata in modo chiaro e accessibile anche per i neofiti: quando si dice la capacità di spiegare questioni parecchio arzigogolate
    con un linguaggio non selettivo, ma volutamente reso abbordabile per tutti….
    Per ora, ho letto l’articolo con attenzione, ma una sola volta; non è sufficiente, me lo dovrò rileggere più volte per assimilare meglio certi passaggi, ancora un po’ nebulosi per me che sono alle prime armi (…espressione brutta
    mutuata dal bellicismo che connota, purtroppo, tanta parte della nostra cultura, a partire dal vocabolario…). Mi sono sembrati molti utili, per mitigare il senso di smarrmento che, in prima battuta, potrebbe venire, i consigli forniti dal
    prof su quello che ci serve sapere e quello che possiamo momentaneamente accantonare, tenendo a bada la smania di sapere tutto…(che produce solo frustrazioni). Per cui, quando ho trovato scritto: …dimenticate serenamente ciò
    che vi opprime…
    , mi è venuto da sorridere perché mi sono sentita letta nel pensiero….

  18. Sono arrivata fino a qui
    Hypertext PreProcessor (PHP). È un vero e proprio linguaggio di programmazione che può essere intercalato in una pagina HTML, utilizzando un particolare tipo di tag, che per la cronaca – ma solo per la cronaca! – è
    ed ho capito tutto…
    Poi la tentazione di vedere se qualcuno pensava, come me, di chiederti in prestito per i suoi figli è stata troppo forte e sono andata a vedere i commenti…
    non ho resistito alla tentazione di scriverne il 1° di chissà quanti altri
    😀
    sì, sì…ho capito: “il cyberspazio non è il paese dei balocchi” mi rimetto a studiare che…la strada è lunga e ci devo mettere attenzione e soprattutto ponderare bene i passi che faccio!
    Torno buona, buona nell’ultimo banco…
    Buon lavoro
    A

  19. Al confronto tra WordPress.com e Blogger mi permetto di aggiungere un piccolissimo elemento, che però disturba molto il mio lavoro: il mio blog su wordpress.com si impianta continuamente sull’iPad, mentre con Blogger non mi capita. E’ un argomento molto terra terra, però per ben tre notti ho tentato di scrivere un post nel mio blog con l’iPad (sì, dal letto… 🙂 ) e non me lo ha permesso.

  20. Molto interessante. Prima o poi dovrò decidermi a capirne un po’ di più. Per indole pigra tendo ad accontentarmi di saper usare le cose senza voler approfondire come questo possa avvenire… Un po’ come guidare la macchina senza avere idea di come funzioni il suo motore (e in effetti ne ho giusto una vaga cognizione).
    Poi mi riprende la “lagnusìa” (totale svogliatezza in siciliano…) e mi dico: se ti si ferma la macchina chiami il meccanico!
    Forse però questo corso mi sta servendo per lo meno a spiare quello che fa il meccanico e pormi qualche domanda in più su cosa ci sia sotto il cofano della mia macchina 🙂

Lascia un commento