Appunti, scoperte e invenzioni

Tutto quello che mi viene in mente (se permettete l’esagerazione…)

  • Universal Declaration of Human Rights

    Article 19. Everyone has the right to freedom of opinion and expression; this right includes freedom to hold opinions without interference and to seek, receive and impart information and ideas through any media and regardless of frontiers.
  • My Last Twits

    • va a una probabilmente improduttiva riunione al circolo velico... speriamo che non ci siano solo i soliti 4 gatti... 14 hours ago
    • bello il client twitter come widget di opera.. mi sto innamorando di opera e del suo client di posta integrato... 18 hours ago
    • caro me, come sto? Io sto bene, come spero di me. Quando mi vedo, salutami. Forse sto impazzendo... 1 day ago
    • giocherella con il client mail di opera.. bellino, davvero bellino... 1 day ago
    • prova opera, con curiosità e malcelato interesse... 1 day ago
  • Meta

  • Delicious Links

  •  

    Luglio 2009
    L M M G V S D
    « Giu    
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
  • Archivi

  • Disclaimer

    Questo blog non rappresenta una testata giornalistica [...]

    L’autore del blog dichiara di non essere responsabile per i commenti inseriti dai lettori.[...]

    Le immagini pubblicate sono quasi tutte tratte da internet e quindi valutate di pubblico dominio. [...]

    L'autore declina qualunque responsabilità per danni a cose o persone derivanti dall'applicazione di istruzioni apprese da questo blog.[...]

    Per ulteriori info legali vi consiglio di passare da qui.

Thriller

Pubblicato da piccimario su Luglio 8, 2009

Questa foto è il mio piccolo personalissimo tributo alla memoria di Michael Jackson.

thriller-tci2007

Estate 2007, villaggio Touring Club La Maddalena (Sardegna). Foto di gruppo dell’equipe d’animazione che ha appena eseguito sul palcoscenico del villaggio una coreografia ispirata a quella di Thriller. Si, uno di quelli sono io, ma lascio a voi scoprire chi..

Pubblicato su Uncategorized | Contrassegnato da tag: , , | Lascia un commento

Una regata vista dall’alto

Pubblicato da piccimario su Giugno 29, 2009

Ieri, nell’ambito di un corso di vela che sto tenendo presso il circolo velico AVAS di Lovere, ho partecipato con i miei allievi all’edizione numero 37 della “Lovere-Tavernola-Lovere”, storica regata sociale. Tempo bello, un caldo mostruoso e vento purtroppo abbastanza scarso; le 3 ore e mezza di regata hanno lasciato profondi segni sulla nostra pelle e nella nostra psiche (soprattutto a causa del sole), ma ne è comunque valsa la pena.

Ne ho approfittato per sperimentare il Geonaute Keymaze 500, stupendo gps da polso che abbiamo regalato a mio padre per il suo compleanno pochi giorni fa, e che sarà oggetto di una recensione in un post successivo. Per ora voglio solo mostrarvi la traccia gps che ho registrato durante la regata, esportata in Google Earth.

lovtavlov2009

Il percorso è stato: partenza davanti a Lovere, bordo di bolina fino alla boa numero 1 (davanti a Tavernola), bordo di poppa fino alla boa numero 2 (davanti a Pisogne), bordo di lasco/traverso (noi siamo riusciti a tenere lo spi anche se a fatica) fino alla boa numero 3 (all’altezza del confine tra Lovere e Costa Volpino), arrivo di bolina in corrispondenza della partenza.

Percorso completo di 13,90 miglia nautiche, completato in 3 ore e 35 minuti con una velocità media di 3,85 nodi (dati gps). La velocità oscillava tra i 6-7 nodi di lasco con lo spi fino ai 1-2 nodi in prossimità della boa numero 1 (una sofferenza :-( ).

Nota per i non addetti ai lavori: il bordo tra la partenza e la boa numero 1 è a zig-zag, ma non a causa di un timoniere ubriaco. Se volete scoprire perchè siamo andati così, vi consiglio la wikipedia.

Ps: Adoro giocare col gps! :-)

Pubblicato su Uncategorized | Contrassegnato da tag: , , , , , , | Lascia un commento

Cuore di Ingegnere

Pubblicato da piccimario su Giugno 28, 2009

Molti dicono che gli ingegneri sono immuni o comunque poco interessati alle faccende di cuore.. Molti altri dicono che gli ingegneri, addirittura, non sanno cosa sia il cuore.. Beh, carissimi, vi sbagliate, e lo posso dimostrare con una semplice equazione tridimensionale!

eq-cuore

Semplice, no? ps: sono proprio un nerd…

Pubblicato su Uncategorized | Contrassegnato da tag: | 1 Commento »

Facebook Developer Tips: i cookies nelle web application

Pubblicato da piccimario su Giugno 25, 2009

La piattaforma Facebook, per la quale da qualche tempo mi rallegro di sviluppare software a tempo perso, mi riserva ogni giorno sorprese sempre nuove. Giusto mezz’ora fa ho scoperto che supporta anche i cookies, messi a disposizione delle applicazioni e residenti sui server di FB, legati all’ID dell’utente. Il che vuol dire che anche per stavolta non mi tocca configurare mysql sul mio hosting, evviva! :-)

Per i non addetti ai lavori (in particolare per i non pratici di programmazione web based) faccio una piccola digressione: i “cookie” altro non sono che piccoli contenitori di informazioni, che vengono memorizzati (o letti, ovviamente) da un’applicazione web, e che sono memorizzati normalmente nel browser dell’utente finale. Ad esempio, se scrivo un sito web posso fare in modo che quando un utente vi accede la prima volta memorizzo un piccolo cookie sul suo browser, in modo che la prossima volta che tornerà io, leggendo il cookie, me ne accorgerò e potrò salutarlo con un “bentornato!” invece che col solito “benvenuto!”. Ovviamente i cookie sono utilizzati per funzioni molto più complesse e utili. :-)

L’unica differenza tra i cookie normali e i cookie di FB è che questi ultimi sono archiviati sui loro server e vengono identificati grazie al legame con lo specifico utente. Le modalità di utilizzo alla fine sono le stesse, ma il legame del cookie con l’utente è molto più sicuro (ad esempio, con i cookie tradizionali se cambio computer, ad esempio passo dal computer della scuola al mio portatile, le informazioni sono perse). Unico limite: max 50 cookie per utente per applicazione.

Veniamo alla parte developer! Per creare un cookie in un’applicazione facebook è sufficiente il comando:

$facebook->api_client->data_setCookie($userid, $cookiename, $cookievalue);

ovviamente, $userid è l’identificativo dell’utente cui il cookie sarà associato, $cookiename è il nome e $cookievalue è il contenuto. Fatto!

Per cercare il cookie, è invece sufficiente:

$cookiesReturn = $facebook->api_client->data_getCookies($userid, $cookiename);
$cookievalue = $cookiesReturn[0][value];

Voilà! Se per caso il cookie cercato non esiste, la variabile $cookievalue sarà vuota.

Grazie a queste poche righe posso pubblicare un commento (riga singola, per non spammare troppo :-) ) sul feed di ogni utente che utilizza il mio Numerologicon, con la certezza di non pubblicare commenti duplicati nell’arco delle 24 ore (dopo tale tempo il cookie di default scade e viene cancellato). Esistono opzioni per modificare la vita del cookie prima della scadenza, ma per questo e altri dettagli teNNici vi rimando alle fonti ufficiali

Ciao a tutti!

Pubblicato su Uncategorized | Contrassegnato da tag: , , | Lascia un commento

Piccole applicazioni crescono…

Pubblicato da piccimario su Giugno 14, 2009

La mia applicazioncina Facebook, il famoso Numerologicon creato in un momento di frustrazione, continua a crescere… perlomeno questa è l’impressione sfogliando questi numeri:

facebook-app-stats-146

Si, non sono certo numeri da capogiro, ma magari sono destinati ad aumentare.. in particolare adesso che ho raggiunto un numero decente di utilizzatori ho potuto fare richiesta per inserirla nella directory applicazioni, il che dovrebbe darle maggiore risalto..

Comunque i 43 utenti che l’hanno installata hanno la mia piena gratitudine, e per ringraziarli, da buon sviluppatore, mi adopererò al fine di aggiungere funzionalità interessanti al software.. stay tuned! E se ancora non l’hai fatto, sii gentile e aggiungi anche tu il Numerologicon al tuo profilo! Non costa nulla ed è simpatico! :-)

Pubblicato su Uncategorized | Contrassegnato da tag: , , , | 4 Commenti »

Facebook e i nomi utente

Pubblicato da piccimario su Giugno 13, 2009

Quella che è stata la caratteristica principe e vincente di Facebook nella lotta contro gli altri social network, ovvero l’iscrizione mediante nome e cognome, viene finalmente complementata dalla presenza del “nome utente”, un nickname che affianca le generalità comunque disponibili e rende più semplice la gestione del proprio profilo; ad esempio, le pagine personali, fino a ieri composte dal link a facebook seguito da un elenco impronunciabile di numeri, ora sono fatte così:

http://www.facebook.com/piccimario

(ovviamente quello sopra è il mio nuovo username :-) ). Comodo, no? Altro vantaggio è l’indicizzazione su google, a causa del nome “search engine friendly”: tra un pò cercando “piccimario” su google (o su qualunque altro motore di ricerca) potrete trovare anche il mio account facebook…

Per ulteriori informazioni e per impostare l’username sul vostro account fb potete andare qui. Sbrigatevi, però, i nomi utente sono unici e vengono assegnati in base all’ordine in cui sono richiesti!

Pubblicato su Uncategorized | Contrassegnato da tag: , , | Lascia un commento

Applicazioni Facebook: il pulsante “Condividi”

Pubblicato da piccimario su Giugno 12, 2009

Un elemento molto importante in qualunque applicazione (e non solo) in ambiente Facebook è il pulsante condividi:

fb-puls-condividi

Tale pulsante permette infatti all’utente dell’applicazione di pubblicare una casella di link sul suo profilo, che ovviamente punterà all’applicazione e permetterà in tal modo di farle pubblicità verso tutti gli amici dell’utente (di solito si tratta di decine se non centinaia di persone raggiunte con un semplice click!).

Per creare il suddetto pulsante è sufficiente inserire uno specifico tag FBML (una specie di HTML per Facebook), il tag fb:share-button. Ecco un esempio, tratto dalla mia applicazione Numerologicon:

<fb:share-button>
<meta name=”medium” content=”application”/>
<meta name=”title” content=”Numerologicon”/>
<meta name=”description” content=”L’antica arte della numerologia, lo studio del significato dei nostri numeri e delle loro implicazioni sulla nostra vita. Scopri i tuoi numeri fortunati, leggi i loro significati e condividii con gli amici!”/>
<link rel=”image_src” href=”http://photos-f.ak.fbcdn.net/photos-ak-sf2p/v43/173/93221711021/app_1_93221711021_443.gif”/>
<link rel=”target_url” href=”http://apps.facebook.com/numerologicon/”/>
<
<fb:share-button class="meta">
 <meta name="medium" content="application"/>
 <meta name="title" content="Numerologicon"/>
 <meta name="description" content="L'antica arte della numerologia, lo studio
    del significato dei nostri numeri e delle loro implicazioni sulla nostra
    vita. Scopri i tuoi numeri fortunati, leggi i loro significati e
    condividii con gli amici!"/>
 <link rel="image_src" href="http://photos-f.ak.fbcdn.net/photos-ak-sf2p/v43
    /173/93221711021/app_1_93221711021_443.gif"/>
 <link rel="target_url" href="http://apps.facebook.com/numerologicon/"/>
</fb:share-button>

All’interno del tag come si vede sono ospitati gli attributi che andranno a comporre il risultato finale: il tag “medium”, ad esempio, specifica che si tratta di un’applicazione, il tag “title” il titolo del blocco di condivisione, il “target_url” l’url del link, e così via. Il risultato è un semplice pulsante “Condividi”, del tutto identico a quello visto all’inizio del post, che se premuto mostrerà qualcosa del genere:

fb-app-condiviso

A questo punto, premendo il pulsante “condividi”, il nostro link è bello che pubblicato sul nostro profilo, e sarà visibile a tutti i nostri amici.

fb-app-condiviso2

Ecco fatto. Per concludere, ulteriori informazioni ed esempi sull’uso del tag fb:share-button si possono trovare sul Facebook Developer. Buon lavoro!

Pubblicato su Uncategorized | Contrassegnato da tag: , , | Lascia un commento

La Cache di Google

Pubblicato da piccimario su Giugno 10, 2009

Come sicuramente molti di voi sanno, il motore di ricerca di Google (come qualunque altro motore di ricerca al mondo, in effetti) lavora su un indice: quando noi cerchiamo una parola sul sito di Google, questo va a cercarla in un elenco (ENORMISSIMISSIMO) di pagine che ha precedentemente analizzato, e in quell’elenco trova i risultati. Google possiede infatti dei sistemi che analizzano costantemente la rete alla ricerca di pagine nuove.

Quello che forse qualcuno di voi non sa è che ogni volta che i sistemi di Google analizzano una pagina ne fanno anche una copia, da tenere nell’indice di ricerca: la cosidetta cache. Poichè è impossibile e inutile per Google analizzare l’intera rete tutti i giorni, la copia in cache viene aggiornata ogni tanto, diciamo ogni tot giorni. La cache di Google contiene quindi una immagine di un qualunque sito internet allo stato in cui si trovava qualche giorno fa. Le possibilità sono interessanti.

Per esempio, a me è capitato di andare a cercare un articolo di un blog per una faccenda che riguarda il mio circolo velico. Mi avevano detto che su un certo sito era scritto qualcosa di interessante, ma quando sono andato sul sito non ho trovato nulla. Mi sono detto “possibile che qualcuno si sia accorto del polverone sollevato da questo articolo, e l’abbia cancellato?”. Ho aperto la stessa pagina, ma stavolta nella cache di google, et voilà: l’articolo era lì, bello in mostra. Per andare a vedere pagine modificate o “causalmente” cancellate la cache di google è il massimo!

Esistono due modi per accedere alla cache di Google:

  • Mediante la ricerca: tutte le volte che eseguiamo una ricerca su Google, sotto i link risultanti viene mostrato anche il link per accedere alla copia in cache.
    googlecachericerca
  • Mediante link diretto: molti non sanno che è disponibile un link diretto per accedere alla copia cache:
    http://www.google.com/search?q=cache: SITODACERCARE

Ecco fatto. Tenete presente che quando aprite una pagina in cache in alto alla pagina stessa è sempre presente un’indicazione di quando la copia è stata presa dal sito originale. Inoltre tenete presente che non sempre è disponibile la copia in cache di un sito: è necessario che Google l’abbia indicizzato, e se il sito è recente probabilmente non è ancora successo.

Ciao a tutti!

Pubblicato su Uncategorized | Contrassegnato da tag: , , | Lascia un commento

Risultati delle Comunali di Lovere

Pubblicato da piccimario su Giugno 8, 2009

Delle europee si è detto tanto oggi.. delle provinciali si dirà molto nel tg della sera.. io sono molto più interessato alle comunali di Lovere, il mio paesello..

Tre liste in gioco hanno ottenuto questi risultati definitivi:

Lista 1: PER IL BENE COMUNE – MARIO CAROLI – voti n. 918

Lista 2: L’AGO DI LOVERE – GIOVANNI GUIZZETTI – voti n. 2020

Lista 3: RIFONDAZIONE PARTITO COMUNISTA -SINISTRA EUROPEA – GABRIELLA RIVA – voti n. 296

Totale voti validi: 3234
Schede bianche: 65
Schede e voti nulli: 54
Voti contestati: 0

Per ora non faccio commenti nè dò giudizi. Mi limito a dire: in bocca al lupo al nuovo sindaco. In campagna elettorale ha fatto affermazioni molto forti e critiche nei confronti della vecchia amministrazione, e da parte del suo seguito non sono mancati proclami roboanti e sprezzanti, e spesso inesatti (come in qualunque campagna elettorale che si rispetti, del resto); adesso vedremo se saranno all’altezza delle aspettative e sapranno mantenere le promesse. Io me lo auguro, con tutto il cuore. Per il bene di Lovere.

In bocca al lupo.

Pubblicato su Uncategorized | Contrassegnato da tag: , | Lascia un commento

Creare un’applicazione per Facebook: le basi

Pubblicato da piccimario su Giugno 8, 2009

Tutti usano Facebook (o almeno quasi), ma molti meno sono quelli che ne conoscono le reali potenzialità. Facebook non è solo un modo per scrivere cazzate o chiedere l’amicizia a centinaia di persone che neanche saluterei se le vedessi per strada, ma anche e soprattutto una vera e propria piattaforma di sviluppo per applicazioni sociali web based. Spinto dalla curiosità ho voluto cimentarmi nell’impresa di creare una semplice applicazione, e ho scoperto che, a parte i primi attimi di smarrimento, in realtà è semplice come bere un bicchier d’acqua (beh, a patto di conoscere un pò bene php, html e magari pure sql).

Il primo passo è installare sul proprio account fb (beh, si, ovviamente bisogna avere un account!) l’applicazione Developer (se avete l’account in lingua italiana si chiamerà “Sviluppatore”). La trovate all’indirizzo: http://www.facebook.com/developers/. Installatela, accettate le richieste ed è fatta.

A questo punto, accedendo all’applicazione (mediante l’indirizzo visto sopra o il pulsante che sarà apparso nel vostro menu di fb) troveremo in alto a destra il pulsante “Set Up New Application”, che ovviamente andrà premuto.

set-up-new-application-png

A questo punto comparirà la finestra di creazione dell’applicazione, in cui si chiede semplicemente di inserire il nome e accettare le licenze. A questo punto l’applicazione è nata, anche se per il momento solo in modo virtuale. Ci troviamo di fronte a una finestra in cui dobbiamo cominciare a configurare i parametri base della nostra creatura.

Le informazioni più importanti che abbiamo a disposizione in questa finestra sono la chiave segreta dell’applicazione (che, ovviamente, dovrà essere mantenuta segreta e servirà ad autenticare le transazioni tra l’applicazione e gli sviluppatori accreditati) e la chiave API, quella che dovrà essere usata per le chiamate alle API di facebook.

fb-application-keys

Accantoniamo un attimo questa bella pagina e soffermiamoci un attimo su un problema: abbiamo bisogno di un hosting che ospiti i files (e i database, se necessario) della nostra applicazione. L’hosting deve essere gratuito (cioè, non è obbligatorio, ma è sempre meglio :-) ), deve avere un database a disposizione (se richiesto dall’applicazione) e supportare il php5. Io mi sono iscritto a Joyent, che fornisce account gratuiti di prova progettati appositamente per hostare applicazioni per facebook; credo che per applicazioni non particolarmente massicce qualunque account gratuito possa andare bene.

Se come me volete usare Joyent, non dovete fare altro che andare qui, premere “sign up for a free facebook accelerator” in alto a destra, inserire un pò di dati (verà richiesto anche il codice API che abbiamo visto prima) e aspettare la mail con nome utente e password (si, il nome utente ve lo assegnano loro a random, ma tanto non apparirà scritto da nessuna parte all’utente della vostra applicazione quindi no problem).

Torniamo alla finestra di prima (quella dell’applicazione) e inseriamo ii dati sull’hosting: apriamo la sezione “Modelli” e compiliamo i primi due campi:

  • Canvas Page Url: l’url interno a facebook al quale ci si dovrà riferire per aprire la nostra applicazione, sotto forma di “apps.facebook.com/NOME”. Di solito coincide con il nome dell’applicazione o una sua versione abbreviata.
  • Canvas Callback Url: l’url vero e proprio della nostra applicazione, o meglio del server sul quale è hostata. Qualcosa del tipo “http://NOMEUTENTEJOYENT.facebook.joyent.us”.

A questo punto possiamo premere il pulsante “Salva impostazioni” in basso. Dovremmo tornare all’elenco delle nostre applicazioni. In fondo alla pagina vedrete un link “Example Code”:

fb-get-sample-code

Cliccandolo si aprirà un popup con del codice di esempio, un ottimo modo per iniziare a scriver un’applicazione (sono già predisposte le inizializzazioni degli oggetti per la chiamata alle api). Copiamo questo codice e incolliamolo in un file “index.php”.

Come ultima cosa ci dovremo procurare alcuni files di libreria che sono necessari al nostro codice php per interagire con facebook. Nella stessa pagina in cui ci trovavamo poc’anzi c’è un link “Scarica Libreria Client”. Scarichiamo il file e decomprimiamolo: avremo una serie di cartelle, di cui una si chiama “footprints” (contiene un’applicazione d’esempio) e un’altra “client”: i tre files contenuti in quest’ultima insieme al nostro index.php devono essere caricati sull’host, nella stessa cartella; se abbiamo un account Joyent la cartella da usare è “~/web/public”. Per caricare i files bisogna usare un client che supporti l’SFTP, e se siete uteiti mac vi consiglio l’ottimo Cyberduck (open source).

A questo punto, che ci crediate o no, la vostra applicazione è pronta a funzionare; il codice di prova mostra una semplice chiamata alle api di fb per visualizzare 25 amici della vostra lista, potete verificarlo voi stessi all’indirizzo http://apps.facebook.com/NOME (dove NOME è ovviamente il nome che avete inserito prima).

Bello, eh? Per ulteriori informazioni vi consiglio il sito ufficiale di supporto agli sviluppatori facebook, qui.

Nota promozionale: se vi è piaciuto il tutorial, andate a installare la mia prima applicazione, il Numerologicon. Attraverso un semplice script PHP e un pò di HTML colorato calcola alcuni vostri “numeri maestri” secondo i principi della numerologia e vi mostra un report, che potete poi anche pubblicare come box a fianco del vostro profilo! Si, lo so, non è nulla di eccezionale, ma è la mia prima applicazione e godrei un mondo nel vedere salire il “numero di utenti attivi”, senza contare il fatto che se otterrà un pò di notorietà sarò spronato a migliorarla e aggiungere informazioni e funzionalità aggiuntive, delle quali ovviamente parlerò su questo blog. Grazie! :-)

Pubblicato su Uncategorized | Contrassegnato da tag: , , , | 3 Commenti »