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

    • google wavin'!!! 3 weeks ago
    • chi è così buono da spedirmi un invito per la beta di Google Wave a mario.piccinelli@gmail.com? 1 month ago
    • perde tempo su internet.. la tesi aspetterà.. bah 1 month ago
    • Noemi Letizia premiata per il suo ruolo nel film Scaccomatto: è la preferita di un boss mafioso. Esattamente come nel film. (spinoza.it) :-) 2 months ago
    • I have sailed the world and seen his wonders, from the Dardinels to the mountains of Peru, but there's no place like.. Lovere! 2 months ago
  • Meta

  • Delicious Links

  •  

    Novembre: 2009
    L M M G V S D
    « Ott    
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30  
  • 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.

Posts contrassegnato dai tag ‘facebook’

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 »

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 »

Ping.fm: aggiornare lo status su mille network

Pubblicato da piccimario su Aprile 15, 2009

Molti di noi utilizzano i servizi social che il web moderno offre: twitter o facebook sono solo i primi esempi che mi vengono in mente.. e tutti, dico tutti, queste piattaforme hanno un servizio in comune: lo status, ovvero una breve frase che dovrebbe esprimere il proprio stato d’animo in un determinato istante, o magari qualche informazione più utile, ma sempre destinata a rappresentare un’istantanea di quello che ci passa per la testa nel momento in cui la scriviamo.

Problema: se io uso, ad esempio, twitter e facebook, quale aggiorno quando mi viene voglia di scrivere qualcosa sul web? Uno dei due? O magari tutti e due? Magari facendo il login su più portali? Uff.. Scomodo…

Per fortuna (?) ho trovato la soluzione ottimale: un servizio che si colloca tra me e i miei social network, e si prende carico di aggiornarli tutti. Sto parlando di Ping.fm, un ottimo sistema che uso già da qualche tempo con ottimi risultati (nonostante sia ancora una beta in fase di sviluppo). Ah, dimenticavo, è gratis! :-)

pingfm-logo

Una volta iscritti a Ping.fm, è sufficiente impostare nella propria dashboard le networks che si desidera aggiornare, e il gioco è fatto. Io lo uso per twittare e contemporaneamente aggiornare il mio stato su facebook; se poi aggiungiamo che sul mio blog è presente il log dei miei ultimi twit, ecco che il cerchio si chiude. Ovviamente il servizio non si ferma qui: ping.fm supporta una quantità incredibile di networks (qui un elenco).

pingfmnetworks

Ma la vera comodità di Ping.fm non è quello che è in grado di fare, ma il come glielo facciamo fare: è possibile aggiornare lo status dal portale, ma esistono altri modi: mandando una mail a un particolare indirizzo, oppure mandando un sms a un particolare numero, o collegandosi alla versione mobile del portale con il browser di un cellulare.

pingfm-services

Ma il mio preferito è mediante Jabber: viene creato un account fittizio jabber/gtalk, che appare nel mio programma di chat;

il bot di ping.fm in Adium

il bot di ping.fm in Adium

mandando un messaggio a questo account, il testo viene immediatamente pubblicato sulle mie social networks. Tempo totale: 5 secondi. Mica male, eh?

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

Le cose di cui Facebook NON ha bisogno

Pubblicato da piccimario su Marzo 24, 2009

fbscoreggia

no comment…

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

Eliminare i messaggi delle applicazioni di Facebook

Pubblicato da piccimario su Marzo 23, 2009

La nuova interfaccia di facebook, debuttata qualche giorno fa, è bella e funzionale. Non capisco perchè siano nati gruppi di migliaia di persone che protestano e rivogliono l’interfaccia vecchia, ma immagino che quella sia la stessa gente che manifestava quando si è passati dalla macchina a vapore a quella a benzina perchè “la benzina ha un odore più cattivo del carbone”. O quelli che dicono che il preservativo non serve a combattere l’AIDS. O quelli che dicono che Windows Vista è ben fatto. Insomma, la gente che parla senza sapere cosa dice.

Però presenta un fastidio: i messaggi di tutte le applicazioni e di tutti i quiz idioti svolti dagli amici che non hanno nulla di meglio da fare adesso appaiono nella pagina principale, insieme a cose più interessanti (come i messaggi di stato o le scritte sulla bacheca), di fatto nascondendole. Per fortuna ho scoperto un sistema per eliminare questi messaggi inutili, e tornare quindi a visualizzare le parti utili della home page.

La soluzione, compatibile che io sappia solo con Firefox, prevede l’installazione di Greasemonkey: si tratta di un plugin che a sua volta permette l’installazione di script, ovvero funzioni aggiuntive per il browser della volpe di fuoco. Per installarlo, è sufficiente andare a questa pagina e premere il pulsante “Aggiungi a Firefox”: la procedura è totalmente automatica e dura pochi secondi; dopo il riavvio automatico il sistema è già installato e funzionante, come dimostrato dalla piccola icona a forma di scimmia in basso a destra sulla barra di stato.

greasemonkey-icon

Il passo successivo è installare dentro Greasemonkey lo script che ripulisce la home page di facebook. Anche in questo caso la procedura è semplicissima: basta andare qui, premere il pulsante grigio “INSTALL”, confermare e attendere 2 o 3 secondi. Già fatto? Gia fatto!

Adesso (provare per credere) sulla home page di facebook non appaiono più scritte del tipo

Il tuo amico XY ha appena svolto il quiz “A quale parte di un cesso pubblico assomigli?” e il risultato è “Sciacquone”. Prova anche tu, e scopri a quale parte di un cesso pubblico assomigli!

Decisamente meglio. Facebook diventa un pò meno inutile e un pò più utilizzabile.

Piccola nota: se per qualche strano motivo Greasemonkey dovesse creare qualche intoppo (ad esempio non visualizzare qualche pagina correttamente) è sufficiente fare click sull’icona della scimmia per disattivarlo (quando è inattivo l’icona è colorata in grigio) e ricaricare la pagina. Stessa cosa per riattivarlo. A me finora non ha dato alcun problema, quindi lo consiglio vivamente a tutti.

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