giovedì 29 dicembre 2011

Come funziona MAFIAAFire

Dopo tanto tempo, oggi torniamo a parlare di censura in Rete e di soluzioni per aggirare la censura, con qualsiasi nome essa si presenti. Considerate le varie leggi in discussione sia negli USA, sia qui in Europa a riguardo della cosiddetta “tutela dei diritti d’autore”, con le conseguenti minacce di chiusura per tutti i siti accusati di infrangerle, direi che un ripasso può rivelarsi utile.
Alcuni di voi probabilmente conosceranno già MAFIAAFire, almeno per averlo sentito nominare, ma vediamo di procedere con una breve spiegazione per tutti coloro che, invece, non lo conoscono e non lo hanno mai sentito prima d’ora. Intanto, che cosa non è MAFIAAFire: non è nulla che abbia qualcosa a che fare con MafiaWars e non è nulla che abbia a che fare con la criminalità. Al contrario, è uno strumento del tutto legale (per adesso).
MAFIAAFire è un addon sviluppato per Firefox e oggi disponibile anche per Google Chrome, il cui scopo è rendere più semplice l’accesso a siti, che sono stati bloccati per “intervento divino”. In altri termini, offre un sistema per aggirare il blocco che alcuni governi hanno imposto a siti che, secondo loro, sono colpevoli di violare il copyright di Pincopallino. Provate ad accedere a ThePirateBay in Italia, oppure all’indirizzo alternativo LaBaia, e capirete a cosa mi stia riferendo. Quando si trova davanti a casi simili, MAFIAAFire non vi manda verso l’indirizzo principale del sito (che è bloccato), ma vi devia verso un indirizzo alternativo, se presente: in questo modo, potrete accedere al contenuto del sito, come se non ci fosse alcun blocco.
L’oscuramento di un sito, nella maggior parte dei casi, avviene impedendo il collegamento diretto al sito in questione. Prendiamo l’esempio di ThePirateBay. Quando un utente cerca di collegarsi al sito ThePirateBay dall’Italia, non raggiungerà la pagina del sito, ma una pagina in cui si dice che il sito è stato bloccato dalla Guardia di Finanza per ordine del tribunale tal dei tali, eccetera eccetera, oppure si troverà di fronte a un blocco dei DNS. Il sito è ancora al suo posto, ma sulla strada che conduce al sito è stato inserito un filtro, che intercetta le connessioni provenienti dal territorio italiano e le manda a sbattere contro quella pagina.
Come aggirarlo? Una soluzione è quella di utilizzare un proxy, come abbiamo già visto: se il blocco ha una natura geografica, allora è probabilmente la soluzione migliore. Un’altra possibile soluzione è quella che ci propone MAFIAAFire: utilizzare un mirror site, ossia un sito “specchio”, collocato a un indirizzo diverso, ma che ci riflette sul sito che stavamo cercando.
Rispetto a un proxy, MAFIAAFire richiede un minimo di lavoro in più da parte del gestore del sito, il quale dovrà disporre di almeno un indirizzo alternativo che MAFIAAFire utilizzerà per permettere l’accesso al sito reale a tutti quegli utenti che si troverebbero bloccati. MAFIAAFire contiene infatti una lista di siti bloccati o a rischio blocco, assieme ai possibili indirizzi alternativi per quei siti. Quando digitiamo il nome di un sito nella barra degli indirizzi, MAFIAAFire controllerà prima di tutto se il sito sia incluso nella sua lista: se il sito non è incluso, la navigazione procede normalmente; se il sito è incluso, MAFIAAFire devierà automaticamente la connessione al sito secondario, così da aggirare la strada bloccata. Una cosa che potreste fare anche voi, perché nessuno vi vieta di digitare manualmente l’indirizzo alternativo, una volta che avete verificato che l’indirizzo principale non funziona, ma MAFIAAFire cerca di renderlo più semplice e “user-friendly” a suo parere, rendendo l’intero procedimento automatico e inavvertito dall’utente.

Sia chiaro, MAFIAAFire non è una soluzione universale e infallibile per ogni tipo di blocco o di censura. MAFIAAFire funziona soltanto coi siti che sono presenti nella sua lista e che dispongono di almeno un indirizzo di accesso alternativo: se queste condizioni non si verificano, il sito resterà per voi inaccessibile e dovrete ricorrere ad altri sistemi, come Tor o un proxy. D’altro canto, la lista di MAFIAAFire è aggiornata regolarmente e il proprietario di un sito può inviare in ogni momento una richiesta per l’aggiunta del proprio sito e degli indirizzi alternativi: la procedura è molto simile a quella richiesta da Google per verificare la proprietà di un sito (anzi, diciamo pure che è “ispirata” da quella).
In sintesi, MAFIAAFire non mi pare ancora la soluzione finale che i suoi autori vorrebbero, ma si tratta di uno strumento semplice, la cui esistenza quasi non si avverte sul proprio browser, e che sarà di aiuto agli utenti “normali” (cioè a tutti coloro che non sono nerd e non aspirano a diventarlo), per continuare ad accedere a siti, principalmente di torrent, senza sbattere il naso contro qualche schermata a cura di questo o quel tribunale. Se ti bloccano la porta principale, passa dall’ingresso sul retro: questo il principio di MAFIAAFire. La navigazione con Tor rimane tutto un altro paio di maniche, ma dopotutto rispondono a due esigenze molto diverse tra loro.

Da qui potete scaricare la versione per Firefox.
E da qui potete scaricare la versione per Google Chrome.

martedì 27 dicembre 2011

Convalidare un EPUB sul proprio computer

Abbiamo già visto che esistono almeno due test, per controllare il contenuto di un Epub e verificare che non ci siano errori, oppure verificare dove siano gli errori, per poterli poi correggere.
Il primo test è quello che possiamo eseguire direttamente all’interno di Sigil, cliccando sul pulsante che ci si presenta come una V verde. In questo modo, eseguiremo sul nostro Epub il test della FlightCrew, che non è il test di convalida ufficiale, ma che è comunque utile per localizzare gli errori e correggerli subito, visto che siamo già all’interno di Sigil.
Il secondo test, ufficiale, è lo EpubCheck, che possiamo eseguire all’interno del sito della ThreePress.
Per eseguirlo, è sufficiente caricare un Epub privo di DRM e attendere il responso. Ne abbiamo già parlato. In alternativa, è possibile scaricare lo strumento per eseguire il test di convalida e utilizzarlo sul nostro computer, senza bisogno di collegarci al loro sito e caricare files. Anzi, diciamo pure che sono loro stessi a consigliarci calorosamente di scaricare tutto e lavorare sul nostro computer, se abbiamo in programma di produrre (e convalidare) parecchi Epub.
C’è però un problema. Lo strumento per testare e convalidare gli Epub è un file JAR eseguibile, il che lo rende adatto a ogni sistema operativo, ma lo rende anche piuttosto complicato da usare, per chi non è pratico. Il file in questione, infatti, non possiede una interfaccia grafica, ma deve essere eseguito dalla linea di comando, operazione che molti di voi non avranno più effettuato dallo scorso millennio, soprattutto se siete utenti Windows.
Sperando di semplificare l’operazione, ho dunque provveduto a creare una semplicissima interfaccia grafica, da cui è possibile caricare un Epub, testarlo utilizzando lo EpubCheck ufficiale e, nel caso, vedere la lista degli errori trovati. Anche l’interfaccia è in Java, per cui funziona su qualsiasi sistema operativo, purché sia installata la Java Virtual Machine.
Lo potete scaricare da qui:
EpubCheck versione 3.0b5 (aprile 2012)
L’utilizzo dovrebbe essere molto semplice. Dopo aver estratto tutto il contenuto della cartella compressa, troverete tre oggetti: una cartella “lib”, un file “Avvio” e un altro file “Convalida”.
La cartella “lib” contiene tutti i “pezzi” dello EpubCheck, gli stessi che potete scaricare anche dal sito ufficiale e che potete utilizzare dalla linea di comando. Al momento, è la versione 1.2 dello EpubCheck, ma la versione successiva è già in lavorazione e in fase beta: sarà lo EpubCheck 3, che dovrà funzionare anche per lo Epub3, un nuovo formato di cui nessuno sentiva la mancanza e che contribuirà parecchio a peggiorare il livello qualitativo degli Epub, ma a cui dovremo prepararci. La plasticosa inutilità delle Apps invaderà anche il mondo degli ebooks: questo il riassunto dello Epub3. Ma lasciamo perdere. A ogni modo, non appena lo EpubCheck 3 sarà distribuito in forma stabile e definitiva, provvederò ad adattare l’interfaccia grafica, per usarla anche con quel formato.
Il file Convalida è l’interfaccia grafica vera e propria. Si tratta di un JAR di piccole dimensioni (10 KB) e che potrete eseguire con un doppio click (su Windows) o col metodo previsto dal vostro sistema operativo: funzionerà ovunque, basta che sia installato il Java. Nell’interfaccia potrete caricare lo Epub da convalidare, effettuare la convalida e vedere il responso.
Il file Avvia è un piccolo eseguibile, per tutti gli utenti Windows che non riescono a eseguire i file JAR con un doppio click: con un doppio click su questo file dovreste riuscire ad avviarlo.
Per il resto, non c’è molto da dire. Il file dello EpubCheck 1.2 è quello ufficiale, che potete scaricare anche da threepress.org/document/epub-validate/ (l’ho scaricato appunto da lì), io mi sono limitato a costruire una semplice interfaccia per utilizzarlo in modo più semplice, invece di doverlo eseguire da linea di comando. Anche il responso che vi darà è quello ufficiale, per cui sarà criptico proprio come quello che otterrete eseguendo il test online. Sul sito della Threepress, oltre allo EpubCheck, sarà eseguito anche il test di controllo denominato EpubPreflight, che non serve ai fini della convalida, ma che verifica eventuali problemi nella dimensione del file. Peccato però che non sia distribuito assieme allo EpubCheck e, soprattutto, che non sia distribuito il suo codice sorgente, il che rende parecchio complicato integrarlo in questa interfaccia. Vedrò comunque di cercare un sistema efficace per aggiungerlo.

Aggiornamento
Dato che anche il sito ufficiale ha introdotto la versione 3 dello EpubCheck, anche se non ha ancora raggiunto la forma finale (è la beta 4), ho provveduto a inserire anche l'interfaccia per questo test, che presenta alcune differenze di struttura rispetto al precedente. Per un utente, però, il funzionamento è lo stesso.

martedì 20 dicembre 2011

Guida al nuovo Diario di Facebook

Fresco, innovativo, chiaro, semplice, affascinante, immediato: questi sono solo alcuni degli aggettivi che non userò per descrivere il Diario di Facebook, la novità che da pochi giorni è arrivata a prendere il posto del vecchio Profilo. La volta scorsa lo avevo già presentato in breve, spiegando anche come fare per attivarlo subito (se proprio si vuole); oggi vedremo invece cosa succede al momento dell’attivazione e quali sono i primi passi per configurarlo ed evitare che, magari, un fornaio della Papuasia possa avere accesso a tutte le nostre foto.

Abbiamo dunque cliccato anche noi il pulsante tentatore, per attivare subito il Diario. Cosa succederà adesso? Tralasciando le facili risposte come “moriremo tutti”, ecco la prima cosa che ci apparirà:

E fin qui, niente di strano, a parte il nuovo aspetto del profilo. Abbiamo a disposizione sette giorni, prima che il Diario diventi visibile al pubblico: in questi sette giorni possiamo lavorarci, sistemarlo, nascondere tutto ciò che deve essere nascosto e insomma rimettere in ordine la casa, prima che sia aperta ai nostri amici. Il passaggio dal Profilo al Diario non sarà dunque immediato, ma avremo a disposizione una settimana, per abituarci e imparare a usarlo. Se siamo ardimentosi, però, niente ci impedisce di renderlo subito visibile a tutti, cliccando su “Pubblica ora”.
Scegliamo invece di fare prima un giro turistico, cliccando su “Esplora”.

La copertina è la prima novità, cioè una immagine di grandi dimensioni, larga almeno 720 pixel, che comparirà nella parte alta del Diario, come una specie di testata o banner. Possiamo scegliere la foto che vogliamo e usarla come copertina, con una raccomandazione: la copertina è pubblica. Se è pubblica, significa che tutti la vedranno, anche un perfetto sconosciuto. È dunque bene scegliere con cura l’immagine che vogliamo mettere...
A parte questo, l’unico requisito è che sia larga almeno 720 pixel.

Sotto la copertina, troveremo due riquadri, che parleranno di noi. A sinistra ci sarà un riassunto delle nostre informazioni personali (che abbiamo scelto di rendere visibili con le impostazioni di privacy), mentre a destra troviamo un riassunto delle principali sezioni del Diario: Amici, Foto, Mappa e “Mi piace”.
“Amici” contiene un collage con le foto di profilo di sei nostri amici, “Foto” contiene una nostra foto in anteprima, “Mappa” contiene riferimenti geografici dove siamo stati taggati e “Mi piace” contiene la lista di tutte le pagine che “ci piacciono”, i nostri interessi e così via.

Appena sopra i due riquadri, da sinistra verso destra, troviamo: la nostra immagine di profilo, il nostro nome (nel caso lo avessimo dimenticato) e due pulsanti: Aggiorna informazioni e Registro attività.
Aggiorna Informazioni contiene le nostre informazioni personali (le vecchie Info) e cliccando questo pulsante le possiamo modificare, come prima si faceva con “Modifica profilo”. Per ogni informazione, poi, possiamo assegnare la visibilità.
Registro attività e il nostro “diario di bordo”, ossia una raccolta di tutti i nostri post e di tutte le nostre attività da quando ci siamo iscritti a Facebook. Ne ho già parlato nell’articolo precedente, per cui non mi dilungherò adesso; ricorderò soltanto che è visibile solo a noi e che, per ogni notizia contenuta, sulla destra troveremo un pulsantino che ci permetterà di mostrarla sul Diario pubblico (quello che vedranno i nostri amici), oppure di nasconderla.

Scendendo, troviamo una linea verticale, che attraversa il nostro Diario: è la Timeline. Su quella linea compaiono alcuni pallini, che corrispondono a una nostra attività: un post che abbiamo condiviso, nuove amicizie, foto che abbiamo caricato, eccetera. Per ogni pallino, troveremo in una delle due colonne ai lati della Timeline un riquadro contenente la notizia in questione.
Nella parte destra del Diario troviamo anche una colonna con varie date: cliccando su anno, mese e giorno possiamo rivedere ciò che abbiamo fatto in quella particolare data. Se proprio siamo interessati.
Alcune cose che possiamo fare con queste notizie.
Passando il puntatore del mouse su una notizia, ci appariranno alcune icone. Se clicchiamo sulla stella, la notizia sarà mostrata a schermo intero. Se clicchiamo invece sulla matita, la notizia sarà nascosta dal nostro Diario. In pratica, la stella serve a evidenziare una notizia che consideriamo importante (c’è anche una apposita sezione “Avvenimento importante”, nella parte sinistra), mentre la matita serve a nasconderla. Passando il mouse su un puntino della Timeline, poi, vedremo in primo piano la notizia che corrisponde a quel puntino.

Cosa fare prima di rendere pubblico il nuovo Diario? Prendere a testate il muro può essere una risposta, ma non è una soluzione. Semmai, possiamo cominciare scegliendo una immagine innocua e usarla come copertina. Possiamo scegliere qualsiasi immagine come copertina, in effetti, anche se Facebook esorta a non utilizzare pubblicità e affini: considerato però che la copertina sarà visibile a tutti, è saggio scegliere una foto che sia almeno non compromettente. Potrebbe essere meglio non mettere una vostra foto in mutande, insomma, o una in cui state vomitando l’anima dopo una festa, dato che sarà visibile anche a parenti, insegnanti e datori di lavoro (se sono su Facebook).
Dopo aver sistemato la copertina, passiamo al Registro delle attività, dove potremmo ritrovare notizie di due anni fa, che noi abbiamo dimenticato ma che sono ancora perfettamente visibili sul nostro profilo, se qualcuno si prende la briga di cercarle. Setacciamo bene le varie notizie del Registro e nascondiamo tutto ciò che è meglio nascondere. Non c’è fretta, abbiamo a disposizione sette giorni per agire, prima che il Diario diventi visibile.
Una cosa che molto probabilmente dovremo fare è modificare la visibilità degli Amici. Di base, il Diario ha una impostazione pubblica per la lista dei nostri amici: controlliamo che il passaggio non abbia modificato la privacy scelta da noi. Clicchiamo dunque su Amici e poi su Modifica, nella parte alta della pagina: da lì potremo, se necessario, correggere la visibilità.
Le Foto non dovrebbero aver subito variazioni, ma è sempre bene controllare. Vedremo però che è apparso un nuovo album, intitolato Immagini di copertina (indovinate il contenuto), la cui visibilità è pubblica e non la possiamo modificare: come dicevo, le immagini di copertina sono pubbliche e pubbliche rimangono. Scegliete con cura.
Nella parte alta del Diario, infine, troviamo sempre una barra, che scorrerà quando noi facciamo scorrere la schermata: contiene il nostro nome e altre voci. Cliccando su Diario, potremo accedere al menu con le varie sezioni del nostro Diario (Informazioni, Amici, Foto, Mappa, Mi piace), mentre cliccando su Now possiamo accedere alla colonna delle date, la stessa che appare nel lato destro del Diario.
Per il resto, il grosso del lavoro consiste nello spulciare il Registro e nascondere tutte le notizie che non vogliamo rimangano visibili sul nostro Diario: attività noiosa, ma che giustifica i sette giorni concessi da Facebook, prima che il Diario sostituisca definitivamente anche per gli altri il nostro Profilo.

venerdì 16 dicembre 2011

Facebook - Come funziona il Diario (Timeline)

Dopo una spasmodica attesa, ma anche no, è infine arrivata a disposizione di tutti la famosa Timeline, di cui avevo già parlato al momento della presentazione ufficiale, in settembre. Il fatto che l’uscita dell’aggiornamento si avvenuta tre mesi dopo la presentazione potrebbe non essere un bellissimo segno, perché è probabile che ci fossero molti errori da correggere, ma magari è stata solo una forma di prudenza da parte di Facebook, oppure ha voluto farci il regalo di Natale. Meglio non indagare. Comunque sia andata, la Timeline è qui.

Dalla pagina di presentazione della Timeline, che per l’Italia è stata ribattezzata Diario, possiamo attivarla anche subito, se proprio lo desideriamo, cliccando sul pulsante verde con la scritta “Ottieni il diario”, che troviamo in basso a destra nella pagina. Nessuno ci obbliga a farlo, per adesso, ma è bene sapere che, presto o tardi, nel profilo di Facebook troveremo un messaggio che ci avviserà della disponibilità del Diario, invitandoci ad attivarlo. È meglio studiare subito come funziona il nemico, per evitare brutte sorprese dopo.
Il Diario è la nuova forma che assumerà il Profilo di Facebook. Alcune immagini di come si presenterà le potete vedere sulla pagina di presentazione, giusto per farvi una idea, e sono certo che a nessuno piacerà, più o meno come accade per tutte le modifiche introdotte da Facebook. Io, per adesso, mi limito a sospendere stoicamente il giudizio.

Copertina

Ciò che noterete subito sarà la grande immagine nella parte superiore della pagina: quella è la copertina. Non sostituirà l’attuale immagine del Profilo, o almeno non del tutto, ma di certo sarà la prima cosa che si noterà, entrando nel nostro Diario, soprattutto perché dovrà avere una larghezza minima di 720 pixel, il che è decisamente superiore rispetto all’attuale immagine di profilo. L’immagine del profilo continuerà a essere usata nelle miniature e accanto al nostro nome, mentre la copertina servirà come “tappetino d’ingresso” per tutti quelli che accederanno al nostro Diario.
La scelta della copertina dipenderà da noi, proprio come già succede per l’immagine di profilo. Potremo inserire la foto che preferiamo, sia pescandola tra i nostri album, sia caricandola dal nostro computer, con un’avvertenza: proprio come l’immagine del profilo, anche la copertina sarà pubblica. Tutti quelli che visualizzeranno il nostro Profilo, siano amici o estranei, potranno vedere la copertina; è dunque saggio scegliere qualcosa che sia personale sì, ma non troppo. Niente e nessuno vi vieta di mettere come copertina una vostra foto al mare, per esempio (anzi, Facebook stesso lo suggerisce, dicendo che “un modo semplice per garantire che la tua immagine di copertina sia unica è quello di scegliere una foto della tua vita, ad esempio una foto di matrimonio, un giorno in spiaggia o una festa di compleanno”: tenete però presente che, in questo modo, chiunque si troverà con metà schermo riempito dalla vostra foto in costume, se visiterà il vostro profilo (anzi, il Diario).

Registro delle Attività

Sotto la Copertina troveremo un pulsante con la scritta “Registro delle Attività”. Il Registro delle attività è una sezione visibile soltanto al proprietario del Diario, cioè soltanto a noi, e contiene un elenco di tutte le nostre attività su Facebook, proprio come il nome suggerisce, distribuite in base alla data in cui sono state attuate. Il Registro delle attività riporterà tutto, incluso quello che abbiamo scelto di nascondere al pubblico, perché il suo scopo è proprio quello di ricordarci ed elencarci tutto ciò che abbiamo fatto su Facebook.
Dal Registro delle attività possiamo riguardarci tutta la cronologia della nostra vita su Facebook, se proprio lo vogliamo, e potremo filtrarla in base al tipo di azione: una lista per tutti gli aggiornamenti di stato, una per i link condivisi e così via. naturalmente, a nostro uso e consumo. Vedremo inoltre tutti i post che sono in attesa della nostra approvazione (per esempio quelli in cui siamo taggati, se abbiamo scelto di controllare i tag), ma soprattutto potremo decidere quali notizie vogliamo che siano mostrate nel Diario, potendo pescare nel calderone della nostra intera vita facebookiana.
Di fatto, ciò che era stato presentato come Timeline è proprio questa sezione del nuovo profilo, unita alla sua controparte pubblica, che vedremo dopo.
Per ogni notizia contenuta nel Registro delle attività, poi, potremo svolgere svariate attività, come ad esempio controllare il pubblico con cui l’avevamo condivisa, eliminarla, segnalarla come spam, modificare la data e così via.

Informazioni di base

Sempre sotto la Copertina, troviamo anche il pulsante Aggiorna Info, che serve appunto a visualizzare a modificare (se vogliamo) le nostre informazioni di base, cioè quelle che si trovavano prima sotto la sezione Info. Nel Diario, le categorie sono:
-Informazioni di base (sesso, data di nascita, lingue, orientamento politico e religioso)
-Informazioni di contatto (indirizzo e-mail, nome visualizzato, numero di telefono, indirizzo, sito Web)
-Lavoro e istruzione
-Casa (città natale e città attuale)
-Relazioni e famiglia
-Citazioni preferite
-Su di te
Tutte cose che conoscete già, per cui non dovrebbero darvi problemi. A destra di ogni voce, come al solito, troviamo il link Modifica, che ci permetterà di modificarne il contenuto, e ne potremo anche decidere la visibilità al pubblico, sempre utilizzando lo strumento di selezione (quel menu per regolare la privacy, insomma).
Nella sezione Interessi e Preferenze troveremo tutto ciò che abbiamo scelto come nostro interesse, ma anche tutte le Pagine che seguiamo, ossia tutte le pagine su cui abbiamo cliccato il pulsante “Mi piace”: lo specifico subito, sperando di prevenire le varie domande su “dove sono le pagine che mi piacciono”.
Sempre a scopo preventivo, dirò che gli Amici sono visibili a tutti, come impostazione di base. Si può però scegliere di nascondere la lista degli amici, sempre utilizzando lo strumento di selezione del pubblico per decidere chi la potrà vedere. Per modificare la visibilità della lista degli Amici, cliccate innanzitutto sul riquadro "Amici", che trovate subito sotto la Copertina. Nella pagina che si aprirà, cliccando su "Modifica",  si potrà impostare la visibilità della lista intera. Le liste create da noi, invece, non saranno visibili in nessun caso, perché servono solo ad aiutarci a distribuire meglio i contatti. Gli amici in comune con chi visita il vostro Diario, infine, saranno sempre e comunque visibili.

Diario

E arriviamo così al diario vero e proprio, quello che sarà visibile alle altre persone. Se il Registro delle attività è una raccolta di tutta la nostra vita su Facebook, rivolta però soltanto a noi, il Diario è la sua versione per il pubblico. Potremo decidere noi cosa far apparire nel Diario e cosa invece non vogliamo che appaia; inoltre, per ogni notizia contenuta nel Diario potremo scegliere a chi sarà visibile, sempre utilizzando il solito strumento di selezione del pubblico.
Il Diario è il nuovo Profilo. Le informazioni di base su di noi, di cui ho parlato poco fa, sono incluse nel Diario, proprio come adesso le Info sono parte del Profilo. Il Registro delle attività, invece, lo possiamo immaginare come il “dietro le quinte” del Diario, ossia una sezione disponibile soltanto a noi, dove possiamo decidere cosa far comparire in scena (cioè nel Diario) e cosa invece lasciare nascosto.
Il Diario si presenta con un menu delle date a destra, su cui sono indicati i vari anni; cliccando su un anno, vedremo la lista dei mesi; cliccando su un mese, ci appariranno in primo piano tutte le nostre attività di quel mese specifico, o almeno tutte le attività che abbiamo scelto di mostrare nel Diario. Questo è il sistema più semplice per navigare nel Diario. È anche possibile scorrerlo dall’alto in basso, ma potrebbe rivelarsi un’attività parecchio lunga e noiosa, se abbiamo un Diario brulicante di notizie.
Posizionando la freccia del mouse su una qualsiasi notizia, ci apparirà una lista di opzioni relative a quella notizia, ma le principali sono “Mostra nel diario” e “Nascondi dal diario”. Credo che sia chiaro a tutti a cosa servano. Potremo inoltre modificarne la data (in alcuni casi), eliminarla, segnalarla come spam e così via. Infine, ma ormai dovrebbe essere sottinteso, per ogni notizia è sempre possibile selezionare il tipo di pubblico che la vedrà. In caso di dubbi su come potrebbe apparire il diario a una determinata persona, rimane la funzione “Visualizza come”, che permette appunto di vedere il nostro diario “come se” fossimo un determinato amico.
Nota finale. Chi può scrivere sul nostro Diario, cioè lasciare un messaggio in bacheca? Soltanto noi e i nostri amici.
E per ora, questo può bastare...

martedì 13 dicembre 2011

Qualche suggerimento per Calibre

Oggi torneremo a occuparci di ebook e in particolare di Calibre, il valido programma di conversione a cui abbiamo già dedicato altri articoli. L’argomento di questo saranno quei passaggi del processo di conversione che più spesso sembrano causare problemi agli utenti.
Con Calibre possiamo convertire un file di testo in vari formati ebook, dallo EPUB, al MOBI, al PDF. Anche il file di partenza può presentarsi in più formati, ma per un buon risultato sarebbe meglio utilizzare soltanto files in formato HTML o RTF, cioè i formati che provocano meno problemi in fase di conversione. Potete anche provare a convertire un file DOC, DOCX o un PDF, se proprio vi sentite avventurosi, ma è improbabile che sarete soddisfatti del risultato: molto meglio salvarlo prima come RTF (nel caso di un documento di Office e varianti) o in HTML.
Per procedere con la conversione in ebook, dovremo prima di tutto importare il file che vogliamo convertire, cliccando su “Aggiungi libri”, dopodiché dovremo evidenziarlo nella lista dei libri, aggiungere copertina e metadati cliccando su “Modifica Metadati” e infine procedere con la conversione vera e propria, cliccando su “Converti libri”. Ci troveremo davanti una pagina di questo tipo:

Al centro apparirà la copertina del nostro futuro ebook. Se non abbiamo ancora caricato la copertina, cosa che potevamo fare benissimo nella sezione “Modifica Metadati”, possiamo farlo adesso, selezionando una nuova immagine in “Cambia immagine di copertina”.
In alto, troveremo due voci: “Formato di input” e “Formato di output”. Il formato di input è il formato del file che stiamo per convertire e non è modificabile, mentre il formato di output è il formato in cui sarà creato il nostro ebook. Possiamo scegliere quello che preferiamo, anche se nella maggior parte dei casi useremo Calibre per creare un EPUB o un MOBI (il formato dei dispositivi Kindle).
A destra, ci sono i vari metadati del nostro file: titolo, autore, editore, eccetera. Se ancora non li abbiamo inseriti, questo è il momento giusto per farlo.
Una volta conclusa questa parte preliminare, clicchiamo su “Visualizzazione” e prepariamoci: adesso arriveranno le cose serie.

Qui abbiamo una serie di opzioni che ci permettono di decidere quale sarà la formattazione del testo, nel nostro ebook. È meglio controllarle con cura e stare attenti a cosa facciamo, se non vogliamo poi ritrovarci col testo allineato a sinistra, rientri mancanti, righe vuote tra un capoverso e l’altro e così via.
Per la maggior parte di queste opzioni, è possibile ricevere un aiuto da Calibre stesso. Se spostiamo il puntatore del mouse sopra una voce, ci apparirà una finestra (in italiano) con una breve descrizione di quella voce e del suo funzionamento. Se non avete voglia di leggerle tutte, ecco alcuni consigli per un ebook standard (senza formattazioni particolari o caratteri inconsueti).
- Selezionate la voce “Rimuovi spazi tra i paragrafi”, per evitare di ritrovarvi con righe bianche tra un paragrafo e l’altro. Selezionando questa voce, si attiverà anche la possibilità di scegliere la larghezza del rientro della prima riga, che potrete regolare a vostro piacimento. Tenete presente che l’unità di misura utilizzata è lo em, che corrisponde alla dimensione del carattere da voi utilizzato nel testo: 1 em corrisponde allo spazio di un carattere, 0.5 em allo spazio di mezzo carattere, e così via.
- Come “Giustificazione del testo”, potete selezionare “Originale” se volete mantenere la stessa formattazione già presente nel vostro file, oppure potete passare ad “Allinea a sinistra” o a “Testo giustificato”.
- Può essere utile selezionare “Ottimizzazione punteggiatura”, se avete scritto il vostro file con un programma che ha l’abitudine di formattare automaticamente la punteggiatura (come Word).

“Elaborazione euristica” è una sezione che, nella maggior parte dei casi, potete ignorare e vivere tranquilli. Potete provare a usarla soltanto se il primo tentativo di conversione (o i primi tentativi di conversione) ha dato pessimi risultati e un testo formattato in modo orrendo. Siccome però si tratta di un sistema che procede per stime basate su modelli, sarebbe preferibile lasciarlo perdere e usare invece correzioni “a mano”, per adattarle in modo più preciso alle necessità del nostro testo.

“Imposta pagina” è un altro passaggio che non dovrebbe dare problemi. Serve a decidere la struttura base della pagina del nostro futuro ebook, a seconda del tipo di lettore su cui intendiamo usarlo. Se non vogliamo creare un ebook su misura per un determinato lettore, possiamo lasciare le impostazioni di default e andranno benissimo.
Passiamo così al “Rilevamento della struttura”.

“Rimuovi la prima immagine” serve in un caso molto particolare: se il nostro file possiede già una immagine iniziale e questa immagine non corrisponde alla copertina da noi impostata. Non so quante volte vi capiterà di usarla, ma non si sa mai...
Se invece non vogliamo o non possiamo usare una immagine di copertina, allora possiamo selezionare “Inserisci i metadati come prima pagina del libro”: in questo modo, Calibre creerà una copertina composta dai metadati del file, ossia titolo, autore e quant’altro abbiamo inserito. Non sarà una copertina molto bella, ma può essere utile se stiamo producendo un documento quale una relazione, una tesina o altri tipi di testo che non richiedono copertine elaborate.
Con la sezione “Indice” siamo vicini alla conclusione.

Se nel nostro file è già presente un indice funzionante, lasciamo stare questa sezione: serve a generare automaticamente un indice, in base ai nomi dei capitoli che Calibre rileverà durante la conversione.
La parte più interessante di questa pagina è la seconda metà, dove troviamo le voci “Livello 1 indice (espressione XPath)” e seguenti. Per molti di voi saranno voci misteriose, suppongo, ma servono a indicare a Calibre come riconoscere ed etichettare i livelli del testo. I livelli del testo, di solito, corrispondono a sezioni, capitoli e sottocapitoli. Se cliccate sulla bacchetta magica accanto a ognuna di queste voci, potrete accedere a una finestra di aiuto, che dovrebbe suggerirvi come compilare la voce corrispondente.
Personalmente, preferisco costruire l’indice usando Sigil, che mi permette di farlo “a mano”, senza affidarmi ad algoritmi e altre espressioni regolari, ma è questione di gusti.

L’ultima sezione da tenere presente è quella dell’Output. Ciò che troverete in questa sezione dipende dal formato in cui avete scelto di convertire il vostro file. A titolo di esempio, ecco come si presenta il caso “Output EPUB”:

Se invece state convertendo il vostro file in MOBI, troverete una pagina completamente diversa, adattata alle caratteristiche del formato MOBI. Risulta dunque piuttosto complicato dare indicazioni generale su come comportarsi, ma le varie voci sono abbastanza documentare e dovrebbe essere chiaro cosa selezionare, a seconda del tipo di ebook che state producendo.

giovedì 8 dicembre 2011

Come funziona ProGuard

ProGuard è un programma che, probabilmente, soltanto pochi lettori troveranno utile e/o interessante, perché si rivolge a un settore molto specifico, ma anche piuttosto ristretto, di utenti: chi programma in Java. ProGuard, infatti, è un semplice programma per restringere, offuscare e ottimizzare il codice Java, in vista della distribuzione al pubblico. In pratica, permette di ridurre le dimensioni di un JAR eseguibile, compattando le classi e “potando” i rami secchi, e in più maschera classi, campi e metodi, per complicare la vita a chiunque voglia smontare il JAR e risalire al codice originario.
Sia chiaro, non rende impossibile il reverse-engineering, ma lo rende più difficile. Una sicurezza al 100% non esiste e non si otterrà mai, né in questo né in altri campi, perché una persona competente e determinata riuscirà comunque a trovare un modo, proprio come esiste comunque un modo di introdursi in una casa, nonostante lucchetti e allarmi, anche a costo di demolire una parete. Ciò non significa, però, che dobbiamo lasciare la porta spalancata. ProGuard fa proprio questo, oltre a pulire e comprimere il codice: chiude la porta a chiave e costringe a faticare di più chiunque voglia entrare.
A parte questo, è ottimo anche per ridurre le dimensioni di un JAR, se vogliamo distribuire un nostro programma in un contesto dove le dimensioni ridotte sono preferibili: applet e cellulari, per esempio.

ProGuard è un programma gratuito, open-source, e distribuito con licenza GNU GPL. Inoltre, è realizzato e distribuito in Java, il che lo rende multipiattaforma senza bisogno di modifiche: funzionerà allo stesso modo su qualsiasi sistema operativo e dispositivo, purché sia installata la Java Virtual Machine. Potete scaricarlo dal sito ufficiale.
Al momento, la versione completa è la 4.6, che però ha un problema: non supporta l’ultima versione del Java, ossia il Java 7 (1.7, se preferite). Se siete già passati a quella, vi conviene scaricare la nuova versione di ProGuard, ossia la 4.7: è ancora in fase beta, per cui potrebbe contenere bug o presentare altri problemi; per quanto ho potuto verificare io, però, funziona bene.
Dopo averlo scaricato, non ci sarà nulla da installare, basterà estrarre il contenuto della cartella compressa e sarete pronti a usarlo. Una volta estratto, vi troverete di fronte ad alcune cartelle, che contengono tutto ciò che ci serve: il codice sorgente (src), la documentazione (docs), ma soprattutto i JAR eseguibili (lib). Entriamo dunque nella cartella lib, dove dovremmo trovare tre file JAR: proguard.jar, proguardgui.jar e retrace.jar.
Proguard.jar e proguardgui.jar sono le due versioni di ProGuard, per compattare e offuscare il codice: la prima funziona da linea di comando, la seconda ha una comoda interfaccia grafica (GUI). Retrace.jar, invece, serve a de-offuscare il codice, ossia a recuperare il codice originario da un file offuscato (o almeno a tentare). Ma vediamo più in dettaglio come si usa ProGuard.
Per avviare la versione da linea di comando, sarà sufficiente scrivere:
java -jar proguard.jar
e aggiungere le eventuali opzioni. Suppongo però che la maggior parte di voi preferirà usare la versione con interfaccia grafica, per cui mi concentrerò su quella. Per avviarla, se il Java è installato correttamente, basta un doppio click sulla sua icona (su un sistema Windows). Altrimenti, sempre su un sistema Windows, potete entrare nella cartella bin e cliccare sul file batch proguardgui, oppure potete digitare questo testo da linea di comando:
java -jar proguardgui.jar [-nosplash]
Il risultato è lo stesso e vi si aprirà questa finestra.

Puro stile Java, come vedete. In alto a sinistra troviamo alcuni pulsanti, che corrispondono alle varie fasi del processo di compressione/offuscamento.
Input/Output serve a selezionare il file JAR su cui vogliamo lavorare (input) e il luogo in cui vogliamo salvare il risultato dell’operazione (output).
Shrinking serve a impostare le opzioni per il compattamento del JAR.
Obfuscation serve a impostare le opzioni per l’offuscamento del codice.
Optimization serve a impostare le opzioni per ottimizzare il codice (non l’avreste mai detto, eh?).
Information serve a specificare alcune opzioni su cui volete essere informati nel corso del processo.
Process salva le impostazioni e avvia il processo di compattamento-offuscamento-ottimizzazione di ProGuard.
ReTrace serve a svolgere l’operazione opposta: de-offuscare il codice offuscato.
In basso a destra troviamo anche il pulsante “Load configuration”, che serve a caricare una precedente configurazione di ProGuard, che potremmo aver salvato. Se è la prima volta che lo usiamo, però, ovviamente non ci sarà nessuna configurazione salvata. Dovremo quindi seguire tutta la procedura. Clicchiamo dunque il pulsante “Next”, che troviamo lì accanto.

Il primo passaggio è Input/Output. Nella metà alta della finestra dovremo cliccare su Add input, per selezionare il file (o anche la cartella) su cui vogliamo lavorare. Add output ci permette di scegliere dove vogliamo salvare il risultato finale. Nella metà bassa della finestra, invece, dovremo aggiungere le eventuali librerie extra. Di base, troveremo già la libreria della nostra versione di Java, ma potremmo aver bisogno di aggiungere altre librerie, se il JAR su cui vogliamo lavorare le utilizza. Una volta selezionato tutto ciò che deve essere selezionato, clicchiamo Next.
Siamo al capitolo Shrinking. Contiene svariate voci e sarebbe piuttosto lungo descriverle tutte, a una a una. Se tutto ciò che vedete è misterioso, lasciate le impostazioni di base e proseguite. Tutto funzionerà bene. Se sapete cosa state facendo, potete modificare liberamente.
Subito dopo troviamo Obfuscation. Anche qui, vale quanto detto in precedenza: se sapete cosa state facendo, modificate a seconda delle vostre necessità. Se non capite nulla di ciò che vedete, lasciate le opzioni di base. Se seguite la via degli smanettoni e volete sperimentare, sperimentate pure. Una voce che potreste voler deselezionare è “Use mixed-case class names”: in certi casi potrebbe darvi problemi e provocare un messaggio di avvertimento, in fase di offuscamento. Dipende comunque dal vostro JAR e dalle librerie che potreste aver caricato.
Nella sezione Optimization troverete una lista di opzioni per migliorare e ripulire il vostro codice: a ognuna di quelle voci corrisponde una componente che ProGuard ripulirà, se risulterà inutilizzata. Vale quanto detto prima: nel dubbio, lasciate così com’è. Se però volete sperimentare e capire meglio il funzionamento del programma, potete eseguire anche qui vari tentativi: il file originale non sarà modificato, per cui potrete cancellare e rifare, se il risultato non vi soddisferà.
Information contiene altre opzioni, per ricevere segnalazioni di errore, pre-verificare il codice prima di modificarlo e così via. Sempre la solita storia: modificate a vostro rischio.
Process, infine, ha due tasti fondamentali, in basso a destra: “Save configuration” ci permette di salvare le impostazioni che abbiamo scelto, per riutilizzarle in futuro e non dover rifare tutto, mentre “Process!” avvia il processo di compressione e offuscamento del codice.
Dopo aver cliccato Process!, ProGuard comincerà a lavorare sul nostro JAR. La durata del processo dipende soprattutto dalle dimensioni del file: può andare da un paio di secondi a qualche minuto. Alla fine, riceveremo eventuali messaggi di errore (se qualcosa è andato male), oppure ci informerà sul processo concluso: troveremo così il nostro JAR, ristretto e offuscato, nella cartella in cui abbiamo deciso di salvarlo (la cartella di output), pronto per essere distribuito.

domenica 4 dicembre 2011

Algoritmi genetici: che cosa sono

Gli algoritmi genetici sono una famiglia di modelli computazionali ispirati alle teorie darwiniane dell’evoluzione. Definiti così, probabilmente non vi diranno nulla, per cui procederemo con una spiegazione più semplice (spero) di cosa siano gli algoritmi genetici e di quale sia il loro utilizzo.
Tanto per cominciare, gli algoritmi genetici sono utilizzati dai computer su altri programmi, per cui nessun essere vivente ne subisce danni e non hanno nulla in comune con l’ingegneria genetica. Sono invece una tecnica per trovare soluzioni a particolari problemi che, usando altri algoritmi più tradizionali, sarebbero di difficile soluzione. In particolare, gli algoritmi genetici sono molto usati nel campo dell’intelligenza artificiale.
Ma cos’è un algoritmi genetico e perché è genetico? Adesso ci arriviamo. Un algoritmo è un sistema di calcolo che serve a dare una risposta a un determinato problema. Un esempio di algoritmo che conoscete molto bene e che probabilmente usate molto spesso è quello che permette di scoprire la strada più breve tra un punto A e un punto B (pensate a Google Map o a un qualsiasi navigatore). In questo caso, l’algoritmo di ricerca registra il punto di partenza, il punto di arrivo e “prova” le varie strade che congiungono i due punti, fino ad aver trovato la strada ottimale. Allo stesso modo, un algoritmo può risolvere problemi di altra natura, tentando varie soluzioni fino a che non ha trovato quella migliore.
Un algoritmo genetico cerca di ottimizzare e migliorare questa ricerca, utilizzando una soluzione ispirata alla biologia e all’evoluzione. Come in natura sopravvivono e si moltiplicano gli esemplari più adatti al loro ambiente, così in un algoritmo genetico sono le soluzioni più adatte a essere portate avanti, fino a che non si arriva alla soluzione ottimale per il problema.
Quando si trova di fronte a un problema, un algoritmo genetico produce una prima “generazione” di possibili soluzioni al problema, composte in maniera puramente casuale. Dopo averle prodotte, le valuta sulla base del risultato a cui si deve arrivare: chi ci è andato più vicino, avrà maggiori probabilità di sopravvivere e riprodursi, tramandando alla prossima generazione il proprio patrimonio genetico. Di generazione in generazione, dunque, la popolazione dovrebbe arrivare sempre più vicina alla soluzione ottimale del problema, fino a trovare la risposta (che in questo caso non è necessariamente 42).
Un algoritmo genetico produce dunque una popolazione virtuale, il cui scopo nella vita è trovare la soluzione a un problema. Grazie al meccanismo di selezione dei migliori, ogni generazione ottiene risultati migliori rispetto alla precedente, fino ad arrivare a un punto dove non è più possibile migliorarsi: quella sarà la soluzione ottimale.
Entriamo più nello specifico. Il problema iniziale è scomposto in una serie di piccoli elementi, ognuno dei quali rappresenta un possibile frammento della soluzione: questi elementi sono chiamati geni. Una sequenza di geni rappresenta una possibile soluzione ed è chiamata genoma. Ogni genoma è contenuto in un cromosoma, che è un “individuo” della popolazione.
Un algoritmo genetico crea dunque una popolazione di cromosomi, combinando in modo casuale i geni di cui dispone. Dopo averli creati, esamina il genoma dei vari cromosomi e guarda quanto questo genoma sia vicino alla soluzione che deve trovare: più il genoma è vicino e più alte saranno le probabilità che quel cromosoma si possa riprodurre.
La riproduzione consiste nel selezionare due cromosomi, prelevare da ognuno una parte del suo genoma e unirlo, per creare un nuovo cromosoma, che sarà composto in parti più o meno uguali dal genoma dei due genitori. Di tanto in tanto, a questa fase può essere applicata una mutazione, che consiste spesso nell’invertire la posizione di due geni all’interno del genoma: un processo che vuole imitare quanto accade in natura e che serve a introdurre una novità, per evitare che a ripetersi siano sempre gli stessi modelli.
Dopo aver prodotto in questo modo una nuova generazione di cromosomi, si riparte col processo di valutazione e riproduzione. Tutto ciò può sembrare molto dispendioso e lungo, ma in realtà un algoritmo genetico di solito ottiene risultati in tempi molto più brevi, rispetto a un algoritmo di altro tipo. Inoltre, può trovare soluzioni anche a quei problemi che sarebbe difficile sottoporre ad algoritmi più tradizionali.
Un esempio classico di applicazione degli algoritmi genetici è il problema del commesso viaggiatore (in inglese Traveling Salesman Problem, abbreviato in TSP). Il problema è il seguente: un commesso viaggiatore deve visitare un certo numero di città, una dopo l’altra, e deve farlo seguendo la strada più breve, senza ripassare mai per la stessa città.
Un algoritmo genetico lo risolve in questo modo. Ogni città corrisponde a un gene. Il genoma di ogni cromosoma sarà dunque formato da una sequenza diversa delle città da attraversare: un possibile itinerario, insomma, cioè una possibile soluzione. Per valutare un cromosoma, si guarderà la lunghezza totale del percorso che rappresenta, ossia la distanza che c’è tra ogni città, seguendo l’ordine in cui sono disposte nel suo genoma. Il nostro scopo è quello di trovare il percorso più breve, quindi i cromosomi con una distanza complessiva più bassa saranno i “migliori”, mentre quelli con una distanza complessiva più alta saranno i “peggiori”.
I cromosomi che rappresentano un percorso più breve avranno maggiori probabilità di produrre i cromosomi della prossima generazione: in questo modo, a ogni generazione ci si dovrebbe avvicinare sempre più al traguardo ideale, ossia un cromosoma che possieda tutte le città, disposte in modo da ridurre al minimo la distanza da percorrere. La fase di riproduzione consisterà nell’unire i genomi di due cromosomi, per produrre un cromosoma che sia la sintesi dei loro percorsi, mentre la mutazione consisterà nello scambiare di posizione due città, all’interno del percorso.

giovedì 1 dicembre 2011

Inserire link in un Epub con Sigil

Questo è un argomento che ho già affrontato in alcuni commenti all’articolo sull’uso di Sigil, ma che probabilmente merita una discussione tutta sua, anche per aggirare i limiti imposti da un commento. È piuttosto difficile inserire codice con una formattazione decente, in un commento... A ogni modo, vediamo di procedere con la spiegazione.
Inserire link all’interno di una pagina in HTML è un’azione estremamente semplice. Il tag da usare è il tag <a> e al suo interno va indicato l’indirizzo a cui i link dovrà portare. Racchiudiamo una parola tra il tag di apertura <a> e il tag di chiusura </a> e avremo ottenuto il nostro link.
<a href="indirizzo da raggiungere">parole da cliccare</a>
Prima dell’inizio della malaugurata era dei programmi wysiwyg (what you see is what you get), quando il codice HTML si inseriva a mano e non cliccando un pulsante colorato, chiunque producesse una pagina web conosceva questo e mille altri tag. Adesso non è detto che li si conosca ancora. A ogni modo, in HTML un link si crea così.
Gli Epub, però, non sono realizzati in HTML, ma in XHTML: un linguaggio molto simile, ma non identico. Nel caso di un link a un sito web, il tag <a> funzionerà benissimo e potremo usarlo senza problemi. Se dunque vogliamo inserire nel nostro Epub un link che rimandi per esempio a Wikipedia, o a qualsiasi altra pagina web, basterà utilizzare il formato che abbiamo visto in precedenza.
Apriamo dunque il nostro Epub con Sigil, che al momento è l’unico programma a permetterci di modificare la struttura di un Epub in modo indolore, e cerchiamo il punto in cui dovremo mettere il nostro link. Clicchiamo poi sul pulsante Code View, cioè quello coi simbolo < >. Visualizzeremo il codice XHTML della pagina del nostro Epub. Apparirà qualcosa di questo tipo:

Può essere inquietante, se non siamo abituati al linguaggio, ma non è poi così terribile. Giusto per dare qualche punto di orientamento, due parole rapide sulla struttura di una pagina XHTML. Di base, una pagina è composta così:

<div class="testo">
<h2>Capitolo 1</h2>
   <div class="corpo-capitolo">
     <p>Testo del paragrafo</p>
     <p>Testo del paragrafo</p>
     <p>Testo del paragrafo</p>
     <p>Testo del paragrafo</p>
   </div>
<h2>Capitolo 2</h2>
   <div class="corpo-capitolo">
     <p>Testo del paragrafo</p>
     <p>Testo del paragrafo</p>
     <p>Testo del paragrafo</p>
   </div>
</div>

Eccetera. Il corpo di ogni capitolo è racchiuso tra i tag <div> e </div>, mentre il corpo di ogni paragrafo è racchiuso tra i tag <p> e </p>. Tutto ciò non serve al fine di inserire un semplice link, ma può essere d’aiuto per non perdersi mentre cerchiamo il punto in cui mettere il nostro link. Una volta individuato, basterà usare la struttura che abbiamo già descritto, ossia:
<a href="indirizzo del sito da raggiungere">parole da cliccare</a>
Come indirizzo, usate la forma completa, ossia http:// eccetera.

Se invece vogliamo creare un link interno al nostro Epub, per esempio il link a una nota a fine pagina, dovremo utilizzare un sistema leggermente diverso. Prima di tutto, infatti, dobbiamo fissare il punto di arrivo del nostro link: nel caso di una nota, il punto di arrivo sarà l’inizio della nota. Cerchiamolo all’interno del codice. In quel punto dovremo inserire un riferimento, che servirà poi a dire al nostro link quale parte della pagina dovrà aprire.
Se nel punto di inizio della nota c’è già un tag <div>, allora possiamo modificare quello, altrimenti dovremo inserire un tag <span> nel punto iniziale. Per esempio,
<span id="nota1">1- Inizio della nota</span>.
Lo id è il “nome” della nota, ossia il nome della porzione di testo che sarà raggiunta dal link. Possiamo mettere qualsiasi nome, l’importante è che sia unico: nel caso delle note, una soluzione molto semplice è inserire un nome progressivo, come “nota1”, “nota2” e così via, finché ce ne sono.
Usando invece un tag <div> già esistente, dovremo solo aggiungere lo id, ottenendo quindi un codice di questo tipo:
<div ... id="nota1">
dove i puntini di sospensione indicano eventuali altre specifiche del tag (ad esempio, class).
Dopo aver fissato il punto di arrivo, dovremo fissare il punto di partenza. Spostiamoci dunque nella parte di pagina in cui vogliamo inserire il link e scegliamo la parola che dovrà portare il link, ossia la parola da cliccare per rimandare alla nota. Attorno a quella parola dovremo costruire di nuovo il nostro amico tag <a>, che stavolta assumerà questo aspetto:
<a href="#nota1">parola col link</a>
Come vedete, al posto dell’indirizzo di un sito web, stavolta abbiamo inserito il nome della nota, preceduto dal simbolo #. Se la nota si trova nello stesso file del link, questo funzionerà benissimo; se la nota si trova in un altro file, ma sempre all’interno del nostro Epub, allora dovremo cambiare il testo dello href e inserire href="nomedelfile.xhtml#nota1". Al posto di “nomedelfile”, ovviamente, dovremo mettere il nome del file, mentre l’estensione può essere .xhtml o anche .xhtm. In ogni caso, il nome esatto del file lo potete leggere nell’intestazione della finestra, se la aprite con Sigil.

domenica 27 novembre 2011

Breve presentazione di GNU Emacs

GNU Emacs è un ambiente di sviluppo per testi e programmazione, altrimenti detto editor di testo. In origine. Adesso, invece, GNU Emacs può fare anche molte altre cose, grazie alle continue estensioni che ne sono state fatte, ma il suo scopo primario resta sempre quello: sviluppo testi e programmazione.
GNU Emacs, come si capisce già dalla sigla iniziale, è software libero, distribuito sotto i termini della licenza GNU GPL, il che non è per nulla sorprendente, dato che il suo sviluppatore iniziale è stato proprio Richard Stallman, padre e profeta del software libero. Che ci abbia messo le mani Stallman lo si può intuire facilmente, vedendo le funzioni di crittografia dei testi di cui GNU Emacs dispone e conoscendo le fissazioni di Stallman stesso. A ogni modo, il programma nasce nella prima metà degli anni ’80 come editor di testo per gli ambienti UNIX e la sua origine è ancora ben visibile, pure a distanza di quasi vent’anni: ottimo programma, ma difficile da domare, per chi lo affronta per la prima volta e non ha molta voglia di impegnarsi. Vediamo però qualche dettaglio in più.

Innanzitutto, GNU Emacs è al momento disponibile per i principali sistemi operativi, da Windows a GNU Linux: è dunque molto probabile che ne troverete una versione adatta a voi. Questo è il sito da cui è possibile scaricarlo, anche se un utente Windows preferirà passare da questa pagina e scaricare la più recente versione in formato ZIP: al suo interno troverete una versione pre-compilata di GNU Emacs, pronta a essere estratta e usata. Il file che cercare avrà un nome del tipo emacs-23.1-bin-i386.zip (il numero sarà diverso, a seconda della versione).
Nella versione per Windows, questa è la sua schermata iniziale, cioè quello che vi appare dopo averlo avviato cliccando su “runemacs.exe”, o usando l’icona che potreste aver aggiunto al desktop:

Se l’unico editor di testo che conoscete è Word, potreste trovarvi molto spaesati. Consolatevi: non siete gli unici e non sarete gli unici. Giusto per intenderci, GNU Emacs può essere utilizzato senza mai staccare le mani dalla tastiera, ricorrendo alle innumerevoli combinazioni di tasti di cui dispone, il che può già costituire un primo ostacolo per gli amanti del punta-e-clicca. Ostacolo lieve, perché le versioni attuali del programma supportano il mouse e infatti lo potrete usare senza problemi. Per guidarvi nel magico mondo di GNU Emacs e aiutarvi a familiarizzare con le scorciatoie da tastiera, avete a disposizione un buon tutorial, che trovate già nella schermata di avvio: per aprirlo e seguir ela guida iniziale, basta cliccare su Emacs tutorial, oppure usare la combinazioni di tasti Ctrl + h e t. No, non è un errore di battitura: prima dovete premere assieme Ctrl e h, poi premere la t. Immagino che userete tutti il link da cliccare col mouse.
A titolo informativo, nelle combinazioni da tastiera il tasto Ctrl è comunemente abbreviato in C, mentre M è il tasto Alt: C + h significa dunque che bisogna premere assieme il tasto Ctrl e il tasto h.
Come altra nota informativa, sempre per entrare nel giusto stato mentale, nell’ambiente GNU Emacs si utilizza il termine buffer per indicare il riquadro contenente il testo su cui state lavorando. Potete avere aperti più buffer nello stesso momento e saltellare dall’uno all’altro, così come in un browser saltellate da una scheda all’altra. Per semplicità, potete pensarla proprio così: un buffer è l’equivalente di una scheda di Firefox. Quando usate GNU Emacs, avrete in primo piano il buffer su cui state lavorando e tutti gli eventuali altri buffer aperti saranno sullo sfondo, ma raggiungibili in qualsiasi momento.
Per il resto, funziona come un qualsiasi editor di testo, anche se utilizza combinazioni di tasti diverse rispetto a quelle a cui siete probabilmente abituati; per questo motivo è utile cominciare dal tutorial, che vi guiderà attraverso una prima panoramica delle funzioni di Emacs. È anche un ottimo ambiente per la programmazione, anche se vi dovrete dimenticare tutti i giocattoli plasticosi dei vari Visual qualcosa: qui i programmi si scrivono, non si costruiscono trascinando e incollando pezzi sullo schermo. Sempre per dare una idea, ecco come si presenta GNU Emacs in versione “ambiente di sviluppo per Common Lisp”, grazie all’aggiunta del componente SLIME:

Poter aggiungere nuovi componenti ed espandere il programma attraverso moduli è uno dei punti di forza di GNU Emacs, rispetto ad altri editor di testo.
Come dicevo, però, Emacs può anche svolgere svariate altre attività, che vanno ben oltre le normali competenze di un editor di testo. Provate a dare una occhiata al menu “Tool” e troverete risorse sorprendenti, come un calendario, una calcolatrice, diversi giochi e anche una opzione per scaricare e leggere email.

Ce n’è per tutti i gusti, insomma. L’inizio può essere complicato, ma alla fine ne vale la pena.

giovedì 24 novembre 2011

Facebook, un difetto nel “visualizza come”

Visto che mi è capitato già più volte di dover affrontare questo discorso, rispondendo a commenti su altri articoli, forse è il caso di discuterne in modo più ampio e dedicargli uno spazio apposito. Ciò non mi eviterà di doverlo spiegare altre volte, ma pazienza.
Il pulsante “Visualizza come”, che troviamo in alto a destra nella pagina del profilo di Facebook, serve a mostrarci come appare il nostro profilo a un determinato, oppure a un estraneo. Se clicchiamo quel pulsante, ci sarà dunque chiesto di inserire il nome di un nostro amico, oppure potremo cliccare su “public”, per vedere il nostro profilo con gli occhi di un estraneo. E fin qui, tutto normale. Ne avevo anche già parlato in un altro articolo, presentando le modifiche al profilo.
La funzione, in sé, è utile, perché ci permette di verificare quali elementi siano scoperti nel nostro profilo e regolare di conseguenza le impostazioni sulla privacy. Se abbiamo deciso di nascondere un certo elemento a un nostro amico, possiamo accertarci che quell’amico non riesca davvero a vedere l’elemento nascosto. Possiamo sapere quante e quali cose un estraneo potrebbe vedere sul nostro conto, visitando il nostro profilo. Eccetera eccetera. C’è soltanto un piccolo e insignificante problema: non funziona.
O meglio, non funziona come dovrebbe.
Quando clicchiamo su “Visualizza come” e scegliamo la prospettiva da cui vogliamo vedere il nostro profilo, soltanto la prima pagina sarà caricata correttamente; se invece proveremo a spostarci su un’altra pagina, sempre all’interno del nostro profilo, essa ci apparirà come dovrebbe apparire a non, e non come dovrebbe apparire alla persona selezionata.
Spieghiamolo con un esempio. Vogliamo vedere come appare il nostro profilo all’amico Pincopallino. Clicchiamo dunque su “Visualizza come”, poi scriviamo Pincopallino nello spazio in cui inserire il nome dell’amico. Si aprirà così la nostra Bacheca, come appare a Pincopallino. Se però noi clicchiamo “Info”, oppure “Foto”, dal menu a sinistra della Bacheca, quelle pagine ci appariranno come appaiono a noi, non come appaiono a Pincopallino. Insomma, il “visualizza come” vale solo per la prima pagina aperta, cioè la Bacheca. Se poi vogliamo visualizzare il nostro profilo così come appare a un estraneo, troveremo di nuovo lo stesso problema: soltanto la prima pagina sarà visualizzata come se fossimo estranei (di solito la pagina “Info”), mentre tutte le altre pagine appariranno così come appaiono normalmente a noi.
Probabilmente, non è quello che volevamo ottenere noi. Con il “Visualizza come”, molto spesso vogliamo vedere tutto il nostro profilo dalla prospettiva di un amico, oppure di un estraneo, e non solo una pagina. In attesa che Facebook decida di sistemare questo difetto (ammesso che sia davvero un difetto e non un comportamento voluto), c’è un sistema per aggirarlo e visualizzare ogni altra parte del nostro profilo così come appare a un amico o a un estraneo. È un metodo da smanettoni, ma funziona ed è piuttosto semplice.
Clicchiamo su “Visualizza come” e scegliamo il nome di un amico, oppure scegliamo l’opzione “public”: il sistema vale in entrambi i casi. Si aprirà così la prima pagina, visualizzata come se fossimo l’amico Pincopallino o un perfetto estraneo. Benissimo. Guardiamo ora nella barra degli indirizzi e troveremo una scritta di questo tipo:
http://www.facebook.com/profile.php?id=XXXX&viewas=XXXX&returnto=profile
Al posto delle X ci sarà di solito un codice numerico: il primo rappresenta noi, il secondo rappresenta il nostro amico (o l’estraneo). Di tutto questo, a noi interessa un pezzo soltanto, ossia il pezzo &viewas=XXXX, che ho evidenziato in rosso. Copiamo questo frammento di testo: è il codice che ci permette di visualizzare una pagina come se fossimo qualcun altro, ossia la persona contraddistinta da quel codice numerico (un amico o un estraneo, a seconda della nostra scelta). Apriamo adesso un’altra pagina del nostro profilo e torneremo alla visualizzazione normale: ci apparirà così come appare a noi, insomma. Andiamo nella barra degli indirizzi e incolliamo in fondo all’indirizzo quel frammento che abbiamo copiato prima, ossia &viewas=XXXX, e premiamo Invio. La pagina ci apparirà come appare alla persona che abbiamo selezionato.
Ogni volta che cambiamo pagina, dovremo rifare il procedimento, ossia incollare quel pezzo di codice in fondo all’indirizzo della pagina, se vogliamo che sia visualizzata come appare alla persona da noi scelta. Un sistema un po’ macchinoso, forse, ma efficace, e che ci permette di aggirare il difetto del “Visualizza come” di Facebook.

sabato 19 novembre 2011

Miniera, un semplice roguelike

Sempre a proposito di roguelike, giusto per passare il tempo ho provato a prepararne uno molto semplice io stesso, sperando che sia utile a dare una idea più precisa di cosa sia un roguelike e di come funzioni. Ammesso che a qualcuno interessi, naturalmente. Il gioco in questione è “Miniera” ed è realizzato in Java, per cui può funzionare allo stesso modo su qualsiasi sistema operativo: l’unico requisito è appunto che sia installata la Java Virtual Machine. Ah, anche una tastiera può tornare utile, dato che i comandi di gioco sono dati proprio attraverso i tasti, come in quasi tutti i roguelike “classici”. Nello specifico, “Miniera” è un coffeebreak roguelike.
Un coffeebreak roguelike, come il nome stesso suggerisce, è un tipo di roguelike molto breve e veloce da giocare, adatto appunto a spendere cinque o dieci minuti di pausa, giusto per rilassarsi e per far passare il tempo. Come caratteristiche di questo sottogenere, possiamo indicare la brevità del gioco, la dimensione del livello che solitamente coincide con quella della finestra di gioco, poche regole, pochi tasti da usare e in generale uno stile di gioco orientato più che altro verso i neofiti e chi non ha tempo/voglia di lanciarsi in un roguelike “maggiore”, di quelli con manuali di svariate pagine, decine di razze e categorie tra cui scegliere e combinazioni inimmaginabili di tasti.
Un modo per sperimentare un roguelike senza doverci perdere la vita sociale, insomma.
In “Miniera”, il gioco è molto semplice: sei rimasto intrappolato in una miniera e devi raggiungere l’uscita. Per raggiungere l’uscita, basta salire un livello dopo l’altro, fino a che non sarai arrivato alla profondità zero. Se ci arrivi, vinci; se muori strada facendo, perdi. Tutto qui.
La grafica è in ASCII, puro e semplice. Questo significa che tutto è raffigurato attraverso caratteri di testo: lettere dell’alfabeto, segni di punteggiatura e così via. Il protagonista è la classica @, che ogni giocatore di roguelike conosce, # sono le pareti, § sono i cumuli di detriti (che si possono scavare, se avete una pala o un piccone), > è un passaggio verso il livello più in basso, < un passaggio verso il livello più in alto. Altri simboli rappresentano le cose che potete trovare nel corso dell’esplorazione: se non si muovono, di solito sono oggetti e li potete raccogliere e usare; se si muovono, allora non sono oggetti, ma cose che vi vogliono fare male.
Per il resto, lo scopo del gioco è trovare le scale che portano verso l’alto (cioè <) e salire, fino a che non siete arrivati all’uscita. Per un elenco completo dei pochi tasti, basta premere ? durante il gioco.

Due parole adesso su come è strutturato il programma.
Lo schermo di gioco è costituito da un JPanel, su cui ho simulato una console vecchio stile: quella che, come abbiamo già visto, in Rogue era definita Curses. Per il Java, come per altri linguaggi di programmazione analoghi, si possono trovare librerie che emulano il comportamento dei curses, ma personalmente non mi piacciono granché: ho dunque trafficato un po’ coi JPanel, per ottenere più o meno gli stessi risultati. Non sarà identico, ma mi pare soddisfacente.
I mostri sono dotati di un AI piuttosto rudimentale, sia perché l’ho programmata in tempi ristretti, sia anche per non rendere troppo complicata la vita al protagonista. Sono comunque forniti di due sistemi di ricerca del personaggio: ricerca a vista e ricerca a olfatto. In altri termini, se vedono il personaggio lo inseguono a vista; se non vedono il personaggio, cercheranno di seguire l’odore che il personaggio ha lasciato nelle aree visitate. Se sono messi male, possono tentare di fuggire, oppure di mangiare qualcosa per recuperare le energie.
Per simulare l’odore, ho usato una semplice variabile numerica. Quando il personaggio calpesta una casella, la variabile corrispondente guadagna una certa cifra, che poi decade col tempo, quando il personaggio si allontana. I mostri possono “fiutare” il punteggio della variabile e seguire così la traccia, alla ricerca di variabili più “fresche”. Forse non è il sistema migliore per svilupparlo, ma è rapido e sufficientemente semplice. Inoltre, non richiede algoritmi che consumano tante risorse.
Personaggio e mostri possono fare più o meno le stesse cose. o almeno potrebbero: in questo caso, ho preferito evitare di far usare anche ai mostri gli attrezzi che si possono trovare, ma sono capaci di raccogliere il cibo (o almeno ciò che loro considerano cibo) e mangiarlo quando sono a corto di energia. Entrambi, infatti, estendono la stessa classe, ossia “Creatura”, al cui interno si trova la gran parte dei metodi usati dai mostri e dal giocatore. Utilizzato in un roguelike normale, questo sistema darebbe anche ai mostri la possibilità di servirsi di tutte le armi e di tutti gli oggetti magici che il giocatore potrebbe usare. E potrebbe essere molto letale, credetemi... ma sarebbe anche molto interessante, per cui credo proprio che lo farò, prima o poi.
È poi possibile che il gioco contenga alcuni bug, anzi diciamo pure che è probabile: quasi tutti i programmi ne contengono, ma nel peggiore dei casi dovreste solo notare comportamenti anomali del personaggio o dei mostri. Nel caso, siete liberi di segnalarli, così li cercherò e li correggerò.
Se il Java è installato correttamente, potete avviarlo come qualsiasi altro programma: se usate Windows, insomma, è sufficiente un doppio click.

Download

venerdì 18 novembre 2011

Come funziona Daemon Tools Lite

Avevo già accennato a Daemon Tools Lite, parlando dei file ISO e di come aprirli: vediamo oggi di approfondire il discorso su questo programma.
Daemon Tools Lite è la versione ridotta (e gratuita) di Daemon Tools, una serie di prodotti per emulazione e creazione di immagini disco, ma è più che sufficiente se abbiamo soltanto bisogno di utilizzare un file ISO e non intendiamo masterizzare un CD (o un DVD, a seconda dei casi). Un file ISO, come già detto, è una immagine di disco, ossia una “fotocopia” digitale del contenuto di un disco: può essere un CD, un DVD, ma anche qualsiasi altro tipo di supporto analogo. Per poter utilizzare questa fotocopia digitale, di solito è necessario “appiccicarla” su un altro supporto dello stesso tipo: masterizzarla su un CD se è la copia di un CD, su un DVD se è la copia di un DVD, e così via. Otterremo così una copia perfetta dell’originale. Di solito.
Un programma come Daemon Tools, invece, ci permette di aggirare questo problema utilizzando un supporto virtuale, su cui “appiccicheremo” provvisoriamente il nostro file ISO. In questo modo, lo potremo far funzionare come se fosse stato masterizzato su un CD, anche se in effetti sta soltanto girando su un programma che simula un CD. Detto in altri termini, con Daemon Tools potremo aprire un file ISO sul nostro computer, come se fosse un qualunque altro tipo di file.
Il motivo formale per cui si consiglia di usare un programma di questo tipo è quello di testare il corretto funzionamento di un file ISO, prima di procedere con la masterizzazione. Il motivo reale per cui la maggior parte della gente utilizza questo programma, con tutta probabilità, è quello di far funzionare videogiochi o altri programmi, scaricati in formato ISO attraverso eMule o Torrent. Una questione di punti di vista, insomma.

Daemon Tools Lite si può scaricare dal sito ufficiale del programma, senza alcuna difficoltà.
La procedura di installazione percorre i soliti, noiosi punti di ogni altra installazione e non dovrebbe dare problemi. Da sottolineare che dovrete selezionare la Licenza Gratuita di Daemon Tools, al momento dell’installazione; inoltre è consigliabile non selezionare le opzioni “Barra degli strumenti” (se non volete ritrovarvi un’altra, inutile barra nel vostro browser) e il Provider di ricerca predefinita (altra funzione inutile). Se avete Windows Vista o Windows 7, è probabile che cercherà anche di rifilarvi un Gadget, che finirà nel vostro desktop: potete ignorare anche quello.
Conclusa l’installazione, tra i “Dispositivi con archivi rimovibili” del vostro computer ci sarà una nuova unità, ossia il disco virtuale creato da Daemon Tools: lo utilizzerete per far girare i file ISO e funzionerà come se fosse un disco reale (più o meno). Ci sarà anche una nuova icona nella barra delle applicazioni, in basso a destra: l’icona di Daemon Tools: cliccandola col tasto destro del mouse, ci apparirà questo menu.

Le varie voci del menu dovrebbero essere abbastanza semplici da capire, a ogni modo vediamo una breve descrizione.
DAEMON Tools Lite: serve ad aprire la finestra principale del programma e si può attivare anche con un doppio click del tasto sinistro del mouse sull’icona stessa.
Immagine Disco: fornisce alcuni dati sul file ISO attualmente caricato (se ce n’è uno) e sul disco virtuale che stiamo usando.
Masterizza Immagine su Disco: richiede un altro programma, Astroburn Lite, che permette di masterizzare su un disco adatto il nostro file ISO. Se non avete Astroburn Lite, vi suggerirà di scaricarlo e installarlo.
Periferiche Virtuali: vi mostra l’elenco delle periferiche virtuali che avete creato con Daemon Tools Lite (ce n’è almeno una, creata al momento dell’installazione). Se volete crearne altre, potete farlo da qui.
Preferenze: permette di selezionare (o deselezionare) diverse opzioni relative al funzionamento di Daemon Tools Lite, come la lingua, l’avvio automatico, i formati di files da associare a questo programma e così via. Se non volete che Daemon Tools si avvii automaticamente ogni volta che accendete il computer, dovrete agire qui.
Acquista Ora: se volete passare alla versione a pagamento.
Aiuto: per aprire il manuale e gli altri strumenti di supporto (come il forum ufficiale).
La finestra principale del programma è la seguente:

In basso troverete la lista delle principali funzioni, che abbiamo visto anche nel menu precedente. Per ognuna, apparirà in sovrimpressione un breve testo descrittivo, in italiano, al passaggio del mouse: non credo sia dunque necessario ripetere quanto già detto.
Per montare un file ISO (o un’altra immagine di disco), dovremo innanzitutto cliccare sul disco virtuale che vogliamo usare, scegliendolo dalla lista in basso (se abbiamo più di un disco virtuale). Nell’immagine sopra, c’è un solo disco virtuale disponibile, per non creare troppa confusione.
Scegliamo poi l’immagine da montare, utilizzando “Aggiungi file”. Dopo averla selezionata, nella parte alta della finestra, cioè nel “Catalogo immagini”, troveremo il nostro file: selezioniamolo con un doppio click e la sua icona apparirà in basso, sopra quella del disco virtuale che stiamo usando.
A questo punto, basta cliccare “Monta”, per avviare il caricamento del file e far partire di conseguenza il programma che contiene.

lunedì 14 novembre 2011

La ricerca per immagini: Tineye e Google

La ricerca tramite immagini, come abbiamo già visto, consiste nell’utilizzare una immagine come base per effettuare una ricerca di altre immagini, nonché di pagine su cui sono state pubblicate. In altri termini, noi inseriamo una immagine nel motore di ricerca (caricandola dal nostro computer, o copiando l’indirizzo dell’immagine) e il motore di ricerca ci dirà su quali siti possiamo trovare quella stessa immagine, oppure una immagine simile (in certi casi).
A cosa può servire una ricerca di questo tipo? Può servire a soddisfare diverse esigenze, la cui importanza poi è del tutto soggettiva. Per esempio, può servire a trovare l’origine di una immagine, cercando la pagina su cui è apparsa per la prima volta. Se l’immagine fa parte di una serie, potremmo trovare il resto della serie, cercando tra le pagine su cui la foto è stata pubblicata. Inoltre, in questo periodo di caccia alle streghe del copyright, può essere molto utile per scoprire tutti i siti e le persone che hanno utilizzato una determinata immagine, se siamo talebani del copyright e vogliamo punire chiunque abbia osato condividere una immagine realizzata da noi. Infine, può servire a fornirci maggiori informazioni su una immagine, sempre cercando tra le varie pagine su cui è stata caricata.
Prima dell’ingresso di Google in questo settore, avvenuto in estate, il motore di ricerca di riferimento è stato Tineye, il quale però presenta alcune differenze rispetto al servizio offerto da Google. Osservando più in dettaglio queste, differenze, possiamo capire meglio come funzioni e quanto funzioni questo tipo di ricerca, ossia la ricerca tramite immagini.

Tineye è (era?) il motore di ricerca più usato, per localizzare una determinata immagine. Ecco come ci si presenta:

Il suo utilizzo è piuttosto semplice, così come sono piuttosto semplici anche le sue funzioni. Basta caricare una immagine dal nostro computer e lanciare la ricerca: in breve, Tineye ci dirà su quali siti appaia la nostra immagine. Tutto qui. Tineye stesso si presenta come strumento per la tutela del copyright, secondo quanto dicevo sopra, e come sua principale ragione di essere indica proprio quella di cercare tutte le pagine su cui una determinata immagine è stata usata.
Il principio di base è analogo a quello di un comune motore di ricerca: invece di cercare le pagine su cui appaiono le parole che abbiamo inserito, cerca le pagine su cui appare l’immagine che abbiamo inserito. Una ricerca per immagini, tuttavia, implica un lavoro più complesso rispetto a una semplice ricerca per parole e richiede determinate tecniche di riconoscimento dell’immagine, che per un occhio umano sono molto banali ma per un computer sono molto complicate. Non è dunque un lavoro così facile, come potrebbe sembrare, e questo spiega i risultati non sempre precisi che otteniamo.
A ogni modo, Tineye si limita a cercare copie esatte dell’immagine, per cui il processo di riconoscimento è sì fondamentale, ma non è spinto all’eccesso. Questo, semmai, succede con Google e il suo motore di ricerca per immagini.

Google è entrato nel campo della ricerca tramite immagini con l’obbiettivo di fare molto di più, rispetto ai motori di ricerca visti fino a questo momento. Il che era alquanto prevedibile, da parte del leader mondiale (o almeno occidentale) nella ricerca in Rete. Vediamo dunque cosa ha aggiunto, rispetto a motori come Tineye.
Innanzitutto, ecco come ci si presenta:

Abbiamo già parlato di come usarlo, per cui adesso parleremo meglio di come funzioni. Una volta caricata o inserita l’immagine da cercare, Google ci restituirà tutte le pagine su cui detta immagine compare. Fin qui nulla di diverso rispetto a Tineye, anche se il numero di risultati è mediamente maggiore. Ciò che Google ci offre in più è la possibilità di cercare anche immagini simili a quella che abbiamo caricato: simili sia come soggetto, sia come disposizione degli elementi. Tra le immagini che Google ci suggerisce, in fondo a una nostra ricerca, potremo dunque trovare altre foto con la spessa persona (o almeno con quella che Google interpreta come la stessa persona), oppure altre foto con la stessa ambientazione o lo stesso stile. Ed è qui che comincia la difficoltà vera e propria, rispetto alla semplice ricerca di una immagine identica.
Le reti neurali sono forse lo strumento più usato nel campo del riconoscimento delle immagini e sono uno strumento piuttosto avanzato, nel campo dell’intelligenza artificiale. Non scenderò qui nei dettagli, perché sarebbe estremamente complicato, ma mi limiterò a sottolineare una caratteristica base delle reti neurali: la capacità di apprendimento. Una rete neurale può essere allenata e può imparare a svolgere sempre meglio un determinato compito. Nel campo del riconoscimento delle immagini, più una rete neurale è allenata e più i suoi margini di errore saranno ridotti: in altri termini, col tempo e con varie prove diventerà sempre più brava a riconoscere una immagine.
Tutto questo per dire che la ricerca per immagini di Google, in teoria, dovrebbe migliorare col tempo e dare risultati sempre più vicini all’ottimale. È tutto da dimostrare che ci riesca davvero, ma personalmente l’ho trovata migliorata rispetto all’estate. Vedremo poi come proseguirà.
Un’altra opportunità offerta da Google è quella di cercare parole assieme alle immagini: basta che le scriviamo nel solito riquadro di Google, accanto all’immagine, e le due ricerche saranno incrociate, con la speranza di dare risultati più vicini a ciò che desideriamo noi. In caso di scarsi risultati, sarà Google stesso a suggerirci di aggiungere qualche parola, per descrivere meglio la nostra ricerca di immagini.