
Dove si intrecciano fili diversi e si acquisisce qualche molto sana abitudine. Piccoli hacker crescono. Non finisce qui …
Vi ricordate il video postato da Marvi? Ecco, riascoltatelo con molta attenzione da questo preciso punto:
http://youtu.be/5xDITZBizfY#t=0m48s
uh … preciso punto …
Ricapitoliamo:
- HyperText Markup Language (HTML)
- Codice per rappresentare pagine web. Definisce i vari elementi di testo: titoli di vari livelli, paragrafi, elenchi di vario tipo, elementi immagine, frammenti di codice destinati ad arricchire la pagina, quali video o altri elementi grafici particolari. Anche metadati, ovvero informazioni che descrivono la natura della pagina ma risultano invisibili. Questi sono elementi utilizzati dal browser che deve rappresentare la pagina e dai motori di ricerca; per esempio la versione di HTML con la quale è stata scritta la pagina o le parole chiave che facilitano il reperimento della pagina da parte dei motori di ricerca.
- Cascading Style sheet (CSS)
- Codice per definire l’apparenza grafica dei vari elementi di testo. Definisce come debbano essere rappresentati i vari elementi specificati nella pagina HTML, colore, tipo e dimensione dei caratteri, allineamento nella pagina o nelle sue sezioni e via dicendo.
- Javascript
- Codice per l’esecuzione di particolari operazioni che modificano l’apparenza delle pagine HTML e le rendono reattive a certe azioni dell’utente. È vero e proprio software che le pagine web portano nei computer degli utenti come un cavallo di Troia.
Potrebbe sembrare che il web sia tutto qui, in soldoni: pagine web molto belle e dinamiche. In realtà ci sono altri importanti ingredienti.
Uno di questi è la separazione fra forma e contenuto, proprio quella accennata da Michael Wesh, ed è qui che entra in gioco un altro tipo di codice, lo XML (eXtensible Markup Language). Proviamo a toccarlo con mano, prima di studiarlo sui libri.
Uno di questi è la separazione fra forma e contenuto, proprio quella accennata da Michael Wesh, ed è qui che entra in gioco un altro tipo di codice, lo XML (eXtensible Markup Language). Proviamo a toccarlo con mano, prima di studiarlo sui libri. Fate un po’ di ginnastica e stretching alle dita … alla fine, in un altro post, ci sarà anche il compito, forse 😉
Molti di voi conosceranno già Blocco note (Notepad), il piccolo editore di testo che correda tutte le versioni di Windows. Ne avevamo parlato nel post andando dove mi portano i feedback. In Windows, credo in tutte le versioni, si trova in Avvio (Start) -> Tutti i programmi -> Accessori -> Blocco note. Chi non avesse fatto il miniesercizio con il Blocco note (Notepad), descritto in quel post, lo faccia ora [1].
Il Blocco note (Notepad) è palesemente molto semplice e questo a molti potrà sembrare un fatto naturale – Che vuoi che faccia un semplice editore di testo! Niente affatto. Il mondo è pieno di sofisticatissimi editori di testo, con una miriade di strane opzioni, in tutte le salse e per tutti i sistemi. Sono gli attrezzi preferiti da professionisti, geek di varia estrazione o da chiunque mastichi con una certa frequenza qualche tipo di codice. Nei casi più estremi sono effettivamente ostici, un po’ come una macchina da corsa, scomoda e senza aiuti che perdonino gli errori del pilota, ma se la sai usare vai più forte.
In realtà gli editori di testo possono essere raffinati anche sotto il profilo grafico ma con il fine di facilitare la scrittura del codice. L’esempio più lampante, ma non certo l’unico, è la colorazione sintattica (evidenziazione sintattica, syntax highlighting), vale a dire l’uso dei colori per differenziare gli elementi di un certo tipo di codice. Una cosa semplice ma di grande utilità quando si deve rovistare in codici lunghi e complessi, ma non solo.
Roba solo per professionisti? Secondo me non proprio, magari anche per studenti dei corsi di editing multimediale … Perchè uno degli equivoci tripici è che una cosa che si chiama editing multimediale debba necessariamente essere una cosa fatta solo di link e bottoni cliccati. Niente affatto, la marcia in più invece, anche senza volere aspirare a vette stratosferiche, compare proprio quando si comincia e aggeggiare qualche codice, e qui, un vero editore di testo è proprio quello che ci vuole. Mai manipolare frammenti di codice con un word processor, sarebbe come andare a cercar funghi con il frac e il mantello, tutto il tempo andrebbe speso nel districarsi fra i rovi …
Ok, facci usare questo Blocco note e non la menare troppo lunga! – No, vorrei che provaste un altro editore, anche perché così facendo, scopriremo qualche altra cosa.
Cliccate quindi qui: Notepad++. Leggiamo insieme alcune parti di questa pagina. Prima la sezione a destra, intitolata About:
Notepad++ is a free (as in “free speech” and also as in “free beer”) source code editor and Notepad replacement that supports several languages. Running in the MS Windows environment, its use is governed by GPL License.
Fermi.
Notepad++ è un editore di codice sorgente libero (come libera espressione e anche a costo zero [2]) che funziona anche come un sostituto più potente di Notepad, in grado di riconoscere e tenere conto di diversi tipi di codici. Gira in ambiente MS Windows e il suo impiego è regolato dalla licenza GPL [3].
Se siete andati a leggere le note, vi sarete resi conto che qui si svela un nuovo mondo, che noi proviamo a conoscere semplicemente entrandoci dentro, che qui vuol dire scaricando il software e provando a usarlo. Guardate la colonna di sinistra, cliccate sul tasto Download. Si apre una nuova pagina. Guardate la parte destra, intitolata v5.9.6.2 – Current Version. Prima di procedere, leggete sotto, anzi, riporto qui la prima e l’ultima voce dell’elenco che si vede:
- Notepad++ v5.9.6.2 Installer
- …
- Notepad++ v5.9.6.2 code source (source code)
La prima voce è quella su cui dovrete cliccare per scaricare il software, ma l’ultima, che ho copiato qui sopra, vedete cosa dice? source code. Quello è il codice sorgente del software che state per scaricare. Ecco se voi voleste, potreste scaricarlo e leggerlo. Magari modificarlo per introdurre qualche vostra miglioria, magari ridistribuire in rete la vostra versione, cosa che potreste fare, a patto di corredare il nuovo prodotto ancora con la licenza GPL, in modo che il processo possa evolvere ulteriormente. Questo è il modo nel quale si sviluppa il software libero.
Ora torniamo a noi. Cliccate quindi sulla prima voce, vi viene così chiesto se volete scaricare un file di nome npp.5.9.6.2.Installer.exe (Nota per chi non usa windows. Dite di sì e, una volta scaricato, cercate il file, nella cartella Download o dove siete comunque abituati a scaricare la roba da Internet, e poi eseguite quel file – perché come dice l’estensione del suo nome, .exe, si tratta di un file eseguibile. In seguito a questa operazione, vi ritroverete Notepad++ fra i vostri programmi. Lo trovate in Avvio (Start) -> Tutti i programmi -> Notepad++.
Se vi va di provarlo, per esempio caricandoci dei file che conoscete, magari qualcuno dei file HTML con i quali avete giocato qualche tempo fa, fatelo. Poi tornate qui, sennò procediamo subito, leggendo nella (copio e traduco qui sotto) pagina principale di Notepad++, sempre nella sezione a sinistra, About, in fondo, sotto alla figura che si vede:
Siete incoraggiati a tradurre Notepad++ nella vostra lingua madre, nel caso tale traduzione non fosse ancora disponibile nella pagina Binary Translations. E se l’idea vi piace, l’aiuto che darete traducendo il sito ufficiale di Notepad++ nella vostra lingua madre sarà molto apprezzato.
Seguite il secondo link (il primo contiene le istruzioni, ma guardatelo dopo, solo se volete): avete visto in quante lingue è stato tradotto? Le ho contate: 62, se non mi sono sbagliato. Ecco, il modello cooperativo del software libero, non concerne solo strettamente il software ma anche altri aspetti. Questo delle lingue è molto interessante perché con questo sistema, si hanno traduzioni in lingue minoritarie, che ad una multinazionale del software potrebbe non convenire finanziare. Invece, in un processo dal basso all’alto di questo genere, sono le comunità di utenti stessi che modulano i prodotti sulle esigenze locali.
Bene, risalite in cima alla pagina Binary translation.
Scaricate due file, quello denominato english.xml – uh … – e quello con la bandierina italiana, che qui chiamo con il suo nome italian.xml – ri-uh … Lo potete fare anche da questi due link, fatelo con il tasto destro del mouse e poi selezionate Salva destinazione con nome Save link as.
Aprite questi due file con Notepad++, esplorateli e confrontateli. Ne parleremo la prossima volta.
[1] Scrivete un file con dentro il testo “pippo” con Notepad e salvatelo con il nome pippo.txt. Poi scrivete lo stesso testo “pippo” in un word processor e salvate il file con il nome pippo.doc o pippo.odt o quello che volete, a seconda del word processor che usate. Guardando nella cartella che contiene tali file, confrontate la lunghezza. Io l’ho fatto in questo momento usando Vi (un editore di testo tipico di Unix) e OpenOffice Write: pippo.txt è venuto 6 byte e pippo.odt 8841 byte! Ebbene, in pippo.txt i byte sono 6 perché ci sono i 5 caratteri (un byte per carattere secondo la codifica ASCII) di “pippo” più un carattere finale che rappresenta la fine della riga. Invece il file pippo.odt è venuto 8841 caratteri perché i rimanenti 8835 caratteri servono per descrivere le caratteristiche grafiche del testo, anche se di fatto non le abbiamo usate.
[2] Deriva da un famoso slogan coniato da Richard Stallman, padre dell’idea di software libero ma anche padre di ampi pezzi di codice che compongono il sistema operativo Linux, proprio per questo giustamente chiamato GNU/Linux, dove GNU è il sistema di componenti scritti da Stallman negli anni 80, abbondantemente usati da Linus Torwald per costruire il nocciolo di ciò che oggi è GNU/Linux, nelle sue innumerevoli “salse”, Debian, Ubuntu, Redhat ecc. Lo slogan di Stallman era: Libero come libera espressione e non come birra gratis, intendendo con questo che l’enfasi era sul concetto di libera diffusione dei prodotti dell’ingegno e non di prodotto venduto a costo zero. La precisazione era necessaria perché in inglese la parola “free” vuole dire ambedue le cose: free beer è birra gratis.
[3] General Public Licence, è una licenza inventata da Richard Stallman, che consiste in un documento associato ad un software che regola la distribuzione del medesimo, in armonia con l’idea di libera circolazione dei prodotti dell’ingegno. In pratica la licenza GPL assicura all’utente libertà di utilizzo, copia, modifica e distribuzione. È la più diffusa licenza per il software libero. Mi rendo conto che liquidare questo concetto con una frasetta è paurosamente riduttivo, ma affrontare ora il tema delle licenze “libere” e dei diritti d’autore ci porterebbe troppo fuori strada perché il tema è vastissimo e assai intricato. Proveremo a sollevare la questione più avanti, se ce ne sarà il tempo. Preferisco toccare con mano la questione, intanto.
[Nota per chi non usa Windows] Chi non usa Windows non può evidentemente eseguire un file tipo .exe. Quindi gli utenti di Mac o di Linux NON devono scaricare quel file, bensì possono seguire il resto delle istruzioni, esplorando il sito di Notepad++, scaricare i file english.xml e italian.xml (continuate a leggere il post prima) e poi aprire tali file con un altro editore. Non mancano tuttavia ottimi editori di testo negli altri sistemi, anzi! Per gli utenti di Linux c’è gedit, quasi sicuramente disponibile nel sistema. Gli utenti Mac possono scaricare TextWrangler.

