getClicky: strumento gratuito per monitorare le statistiche del proprio blog

Scritto il 29 Aprile 2008
Nella categoria Blog e blogsfera, Recensioni | Scrivi un commento
Tag: , , ,

Per un anno circa ho utilizzato reinvigorate come servizio di statistiche e mi ci trovavo bene, ma, oltre al fatto che non è ancora uscito dalla beta ad inviti, alla lunga alcune limitazioni si sono fatte sentire: resettavano alcuni dati a caso, senza nessuna possibilità di esportarli e non si riesce a gestire e monitorare un periodo al posto di un giorno singolo.

Ho deciso quindi di passare a Clicky Web Analytics (per gli amici getClicky, visto che trovo scomodissimo chiamare un sito con un nome diverso dal dominio); è un servizio gratuito, pensato sia per i blogger che per chi ha un sito generico, esiste sia il classico plugin per Wordpress, ma in realtà basta mettere un piccolo codice in un widget (o in un altro punto della pagina).

Pagina principale getClicky

Già in prima pagina ci sono tutte le informazioni utili di cui si può avere bisogno, sia quelle generali come visitatori, page-views eccetera, ma anche (da poco) da dove vengono i visitatori in percentuale (da motori di ricerca, bookmark, link, siti sociali come digg o stumbleupon) e un riassunto dei dati che troviamo sulle altre pagine.

Leggi il resto

Consigli per script PHP più veloci

Scritto il 21 Aprile 2008
Nella categoria Guide, PHP | 1 commento
Tag: , ,

Oggi ho letto il post di antirez su cosa era e invece cosa è importante ora per la programmazione, quando si fa moltissimo scripting in PHP ad esempio, e pochissima “vera” programmazione in C o simili. In particolare è diventato più utile ottimizzare in modo anche “sporco” le righe di codice, piuttosto che sapere qual’è l’algoritmo più efficiente per affrontare un problema, perché questo secondo tipo di codice è molto meno utilizzato oggi, quando spopolano le web-application.

Quindi ho deciso di prendere spunto da tre articoli che trovai tempo fa su come ottimizzare la scrittura di codice PHP, verificare, e spiegarli.

Consigli generici: meno chiamate a funzioni

Sempre, sempre, sempre, fare meno chiamate possibili alle funzioni, questa deve essere una regola generale, sempre meglio tenere in memoria una variabile in più (che poi andrà distrutta con unset). Il classico esempio non è inserire una chiamata all’interno di un ciclo, ma all’esterno oppure dentro la prima clausola di un for

for($a = 0; $a < sizeof($array); $a++)

Questo va malissimo, piuttosto meglio

$max = sizeof($array);
for($a = 0; $a < $max; $a++) {
...
}
unset($max);

Oppure più carino

for($a = 0, $max = sizeof($array); $a < $max; $a++) {
...
}
unset($max);

Consigli generici: ordine nelle condizioni

Quando si controllano più condizioni tra loro è importante farlo nell’ordine giusto e con gli operatori logici giusti.

Ad esempio usando || e && al posto dei semplici | e &, i primi hanno il vantaggio di terminare il controlla appena le condizioni non sono verificabili, quindi se controlliamo che ($var1 && $var2), se già la prima condizione è falsa, non sarà valutata la seconda facendo risparmiare tempo macchina.

Grazie a questo principio, è possibile velocizzare il codice valutando le condizioni nell’ordine giusto, cioè nel caso di una condizione ($var1 || $var2) è preferibile mettere come prima condizione quella che più spesso viene verificata.

Usare funzioni più semplici possibili

PHP mette a disposizione diverse funzioni che fanno a prima vista la stessa cosa, ma in modo diverso; ad esempio per sostituire pezzi di stringhe, ci sono ereg_replace, preg_replace e str_replace ma sono diverse tra loro, in particolare le prime due sfruttano le Espressioni Regolari, mentre la seconda cerca stringe semplici; ovviamente utilizzare quest’ultima rende il codice molto più veloce, di almeno la metà, dipende dalla complessità della RegExp.

Allo stesso modo le funzioni explode è più veloce di split, visto che anch’essa sfrutta le espressioni regolari.

Infine consiglio di utilizzare time() al posto di date('U'), in quanto la mancanza di parametri rende la prima molto più rapida e leggera.

Conta pochissimo invece utilizzare le virgolette singole 'stringa' al posto di quelle doppie "stringa", la differenza, per chi non lo sapesse, è che se una variabile appare tra due virgolette doppie viene sostituita, con le singole no; ma la differenza è talmente minima che non vale la pena di fare salti mortali per controllare tutto il codice, se scappa una virgoletta doppia (magari anche perché vogliamo inserire un codice ascii come \n), è un errore perdonabile.

Consigli che non vale la pena di seguire

Gli articoli che ho citato si perdono purtroppo anche in alcuni consigli un approssimativi o poco approfonditi, che non vale la pena di seguire.

In particolare sembra che utilizzare === al posto di == dia alcuni vantaggi, ma in realtà non è proprio così, solo in alcuni casi. Il secondo operatore infatti controlla prima che i due oggetti siano dello stesso tipo, mentre il primo cerca di converti nello stesso tipo. In particolare:

('22' == 22) è VERO
('22' === 22) è FALSO

Ho verificato che confrontando stringhe uguali, non ci sono miglioramenti sensibili scambiando == con === .

Stesso discorso per le funzioni ctype_digit e is_numeric, che tra loro sono differenti: la prima verifica se in una stringa sono scritte solo cifre, mentre la seconda controlla se un oggetto è di tipo numerico (un int, float, etc) oppure se è una stringa che rappresenta un numero, prendendo quindi per buono il valore "0.12", per cui la ctype_digit restituirebbe falso.

Utilizzo avanzato e trucchi di aMSN: avatar, emoticon, trilli, profilo, tab, inattività e log

Scritto il 14 Aprile 2008
Nella categoria Guide, Software | Scrivi un commento
Tag: , , , , , ,

Ho già parlato di aMSN, un ottimo client open source alternativo a MSN Live Messanger, disponibile anche per Linux tra l’altro. È venuto il momento di utilizzarlo al meglio imparando alcuni piccoli trucchi e dettagli su dove vengono salvati i dati.

Tab

Una delle feature migliori di aMSN è proprio l’apertura di una sola finestra per tutte le chat aperte, in modo da non essere sommersi in caso di troppi amici chiaccheroni. In Account > Preferenze, selezionare la tab Sessione, qui più in basso si può scegliere se non utilizzare le tab (Finestre normali senza schede), utilizzare sempre le tab (Una finestra singola con schede per tutti gli utenti della lista contatti), oppure utilizzare le tab solo per chi è nello stesso gruppo (Una finestra singola con schede per tutti gli utenti di uno stesso gruppo). Leggi il resto

Seguire Naruto Shippuuden in italiano (su Veoh che è meglio di youtube)

Scritto il 8 Aprile 2008
Nella categoria Fumetti, Guide | Scrivi un commento
Tag: , , , ,

Il mio passato articolo su come guardare Naruto su youtube riscuote sempre un po’ di successo quindi decido di replicare, indicando come seguire la seconda serie di Naruto, Shippuuden, in cui loro sono più grandi, direi adolescenti. Tra parentesi a me piace abbastanza, la trovo molto ben fatta, sarà il degno successore di Dragon Ball, con cui condivide numerose caratteristiche. Ovviamente il materiale qui elencato è tutto anime in giapponese con i sottotitoli italiani; io non li trovo per niente pensanti, anzi, seguirli in lingua originale te li fa apprezzare ancora di più perché è tutto un clima diverso.

Naruto Shippuuden Revolution

Questo è il primo metodo che è trovato, il riferimento è il forum Naruto Shippuuden Revolution, i video vengono pubblicati su Veoh, ottima piattaforma di video, con qualità molto più alta di youtube, i primi sono stati pubblicati da DarkAp89, dal 46 in poi invece se ne prende carico Koyuki-Kakashi.

Dragon Ball Forever

Può sembrare strano, ma proprio una board con questo nome pubblica delle traduzioni alternative, ottime e con un carattere anche più leggibile, di Naruto Shippuden; purtroppo sarebbe necessario iscriversi per seguire (che noia!), ma io trovo i video sempre su Veoh, questa volta pubblicati da Trunks02SSJ.

Feed anche per la Star Comics

Scritto il 4 Aprile 2008
Nella categoria Fumetti, PHP, Produzioni Proprie | 1 commento
Tag: , , ,

Grazie ad una amica (Federica) mi sono mosso e oggi ho sistemato finalmente il feed per la Star Comics, casa editrice che ammetto di seguire poco.

Già che c’ero ho migliorato gli altri feed e creato una pagina per tutti i Feed per i fumetti.

Feed Star Comics

VLC Player (o Totem) producono schermo nero con Compiz-Fusion

Scritto il 4 Aprile 2008
Nella categoria GNU/Linux, Guide | Scrivi un commento
Tag: , , , , ,

Dopo un lungo periodo, finalmente mi sono deciso a tenere sulla mia macchina Ubuntu sempre attivo Compiz-Funzion, e non solo per fare il gallo con i miei amici; ma per renderlo usabile ho dovuto sudare un pochetto, perché quando riproducevo un video, VLC Player (o anche Totem) mi riproduce solo una schermata nera, che mostra il vero filmato solo mentre spostavo.

Schermata eloquente di VLC Player

Finalmente, dopo tanto tempo, sono riuscito a risolvere, la soluzione in effetti era proprio sul wiki ufficiale, la traduco qui in italiano per convenienza:

VLC Player

Eseguire VLC Player, dal menu Impostazioni scegliere Preferenze… Nella finestra appena apparsa, aprire la sezione Video cliccando sul triangolino appena a sinistra, nella barra di sinistra, selezionare Moduli di uscita, qui abilitare la spunta Opzioni Avanzate in basso a sinistra, ora scegliere come Modulo di uscita video la voce “uscita video X11“. Cliccare su “Registra“, chiudere VLC e riaprire un video.

Se ancora non si vede oppure VLC si chiude da solo, riaprire lo stessa finestra, quindi espandere Moduli di uscita, selezionare X11, quindi togliere la spunta da Utilizza memoria condivisa (se la voce non si vede, è perché bisogna sempre abilitare le Opzioni Avanzate).

Totem

Dal terminale o dopo aver premuto ALT+F2, eseguire il comando “gstreamer-properties“, quindi nella sezione Video selezionare come plugin la voce “X Window System (senza Xv)“. Chiudere quindi eseguire Totem.

Onestamente le performance non saranno le stesse, io vedo peggio di prima, ma sicuramente è meglio di niente ;)