E son 27!
Ebbene oggi compio 27 anni ed è uno fra i compleanni più belli in quanto quest'anno mi son laureato, mi son trasferito a Pisa, convivo con la mia ragazza e ho trovato lavoro fortunatamente quasi subito in una bella azienda qui a Pisa.
Ieri la mia ragazza mi ha presentato un bel semifreddo e un buono da 50 euro da spendere nelle librerie Feltrinelli. Consigli per gli aquisti (libri d'informatica eh :-D)?
10:38 | Categorie: Eventi, me stesso | 12 Comments
Poema Zen delle 20.00 (ma valido sempre)
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
Corto, semplice, chiaro, incisivo.
Via: E. S. Raymond.
20:03 | Categorie: Varie | 0 Comments
[PHP] Installare classi PEAR in fase beta
Puuò capitare di voler installare delle classi PEAR le cui ultime versioni sono in fase beta.
Ora, di default PEAR installa solo package in versione stable se non erro, ma è possibile forzare la cosa senza dover smanettare fra i file di configurazione.
Ammettiamo si voglia installare la classe Spreadsheet_Excel_Writer per creare in PHP dei report in Excel. Tale classe ha delle dipendenze e l'ultima release è in fase beta.
Per installare sia la classe sia le dipendenze in automatico, basta digitare:
orion@orion$: pear install --alldeps Spreadsheet_Excel_Writer-beta
L'opzione --alldeps provvede a scaricare tutte le dipendenze necessarie mentre l'aggiunta del suffisso -beta permette di scaricare l'ultimissima versione della classe, senza dover riconfigurare il livello di accettabilità dei package per PEAR.
23:11 | Categorie: PHP | 0 Comments
[Music] Bobby Marley Compilation
C'è stato un tempo, alcuni anni fa, in cui ero molto preso dal reggae, dalla dance hall: mi piaceva ascoltare Gentleman, Sizzla, Sean Paul, i Seeed e via discorrendo, ripensando ai vari riddim sui quali più o meno tutti ci cantavano sopra.
Ad ogni modo mi piacevano le composizioni piuttosto ritmate e movimentate, tendendo a snobbare il roots e le forme più tranquillone.
Ad ogni modo ho deciso di ascoltarmi l'intera discografia di Bob Marley, alla ricerca dei brani meno noti. Tuttavia nella mia ricerca non sono emersi molti brani diversi dai classici successi dell'artista che più o meno tutti conoscono e ho raccolto le canzoni che preferisco in due compliation:
Parte I
- I'm Hurting Inside;
- Iron Lion Zion;
- Is This Love;
- Jammin';
- Kaya;
- Keep On Moving;
- Misty Morning;
- Natty Dread (live);
- Africa Unite;
- Buffalo Soldier;
- Chant Down Babylon;
- Could You Be Loved;
- Cry To Me (Acoustic);
- Dance Do The Reggae;
- Exodus;
- Forever Loving Jah;
- Get Up, Stand Up;
- Hallelujah Time;
- I Shot The Sheriff.
Parte II
- One Drop;
- One Love;
- Pimper's Paradise;
- Punky Reggae Party;
- Rastaman Live Up;
- Rat Race;
- Redemption Song;
- Roots Rock Reggae;
- Satisfy My Soul;
- She's Gone;
- So Much Trouble In The World;
- Soul Captive;
- Stir It Up;
- Sugar, Sugar;
- Sun Is Shinning (Original);
- Talkin' Blues;
- Three Little Birds;
- Trench Town Rock;
- Waiting In Vain;
- Natural Mystic.
Si noti l'assenza di No woman No cry, che sinceramente mi annoia, musicalmente parlando, per il resto ignoro i testi di quasi tutte le canzoni tranne che per One love, Redemption song e Could you be loved.
23:54 | Categorie: Musica | 0 Comments
[Firefox] Addio Google Browser sync, benvenuto Foxmarks
Dopo aver installato Ubuntu e i 180 aggiornamenti per la versione 8.04 fresca di installazione, mi è spuntata anche l'ultimissima versione di Firefox.
Con sorpresa, Google browser sync non è ha voluto sapere di installarsi con la nuova versione del browser di casa Mozilla.
Sebbene ci siano trucchetti per forzare le installazioni delle estensioni non compatibili, l'aver letto su LifeHacker che Google non ha più intenzione di mantenere questo progetto per mancanza di tempo, ha fatto spostare la mia attenzione su un'estensione analoga consigliata dallo stesso Google, ossia Foxmarks.
Dopo aver creato un account (processo eseguibile sia online direttamente sul sito, sia durante il processo di installazione dell'estensione) e aver sincronizzato i propri bookmarks, ci si ritrova una schermata di questo tipo una volta loggati sul sito ufficiale:
Opinioni personali
Ecco una breve descrizione di quel che si può fare. Premetto che ho provato quest'estensione dopo aver sincronizzato più di 3000 boomakrs.
L'interfaccia è piuttosto lenta quando vogliamo aprire una cartella e tende ad impallare Firefox, probabilmente (o quasi sicuramente) ciò è dovuto alla gran quantità di bookmarks.
Cliccandu sulla voce Details, si aprirà una finestrella che funzionerà da preview dei siti web quando selezionerete un bookmark, una funzione molto comoda.
La voce Search permette di condurre una ricerca all'interno dei propri bookamrks e di vedere i risultati in temp oreale senza il bisogno di cliccare alcun bottone, funzione anch'essa molto comoda sebbene leggermente lenta per i motivi precedentemente esposti.
La voce Tools permette di importare i preferiti dal prorpio account Delicious (non l'ho provata perchè non uso Delicious) e di esportare in HTML i propri segnalibri. La dimensione originale del file bookamrks.html esportato da Firefox è 965 KB mentre tramite questa funzione, il file pesa 696 KB, semplicemente perchè l'esportazione da Foxmarks elimina tutti i dati relativi alle favicon.
La funzione Share permette di condividere cartelle e sottocartelle ma non bookmarks singoli. Ogni cartella principale sarà raggiungibile via Web e sarà possibile abbonarsi anche al feed RSS per sapere se l'utente ha aggiunto qualche segnalibro.
Vi segnalo i miei Foxmarks:
- Link su Firefox e Thunderbird;
- Ubuntu e free software links;
- Da leggere ora (praticamente un contenitore di letture dal nome ridicolo poichè in realtà non si sa bene quando verranno lette :-D)
- Informatica;
- Sicurezza;
E' possibile inglobare i propri bookmarks tramite un iframe ed eventualmente ricorrere anche a javascript e CSS (forniti da loro) per rendere il tutto maggiormente personalizzabile:
Note conlcusive
Mi sembra un ottimo prodotto e mi domando perchè non l'avessi usato prima (ah si, non lo conoscevo... :-) ). La sincronizzazione avviene alla chiusura del browser (di default), è possibile specificare quali elementi cifrare e credo sia possibile utilizzare un proprio server come repository vedendo la schermata qui sotto. Ottimo!
12:18 | Categorie: firefox, Google | 0 Comments
[Linux] ies4linux su Hardy Henron
Per ovvie necessità di webdesign, conviene installare Internet Explorer anche sui sistemi Linux, non si può ovviamente ignorare la larga fetta di affezionati a questo browser.
In questa pagina ci sono le istruzioni di installazione per le versioni precedenti alla 8.04. Per l'ultima versione in sommi capi, si deve fare più o meno la stessa cosa:
- Installare cabextract e wine da Synaptic (o tramite apt-get se preferite).
Da shell digitate le espressioni dopo il dollaro:
orion@orion:~$ wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz
orion@orion:~$ tar zxvf ies4linux-latest.tar.gz
[CUT]
orion@orion:~$ cd ies4linux-*
orion@orion:~/ies4linux-2.99.0.1$ ls
ies4linux lang lib LICENSE mac README ui winereg
orion@orion:~/ies4linux-2.99.0.1$ ./ies4linux
[CUT]
Ho omesso i processi di elaborazione stampati in ouput e marcati da [CUT]. Durante il processo di installazione, quando compare la GUI, cliccare su Advanced e marcare IE7 per installare anche l'ultima versione di IE e spuntate il flag menu per avere l'icona sul desktop.
10:43 | Categorie: Linux, software, web development | 0 Comments
Switch to Ubuntu
Per venire incontro alle scarse risorse del mio computer di lavoro (pentium 2.6 GHz per 512 MB di RAM) e avere gli stessi strumenti del mio collega, ho deciso di piallare XP e mettere Ubuntu.
E' ora di rispolverare un po' di vecchie esperienze fatte negli anni passati, non mi ricordo gran che... (oltre al cammellone vorrà dire che l'Oli dovrà sorbirsi pure le mie richieste da niubbo :-D).
19:28 | Categorie: Linux | 8 Comments
Eventi iCalendar in Thunderbird
Oggi ho ricevuto una partecipazione ad una riunione in formato iCalendar. Non ho mai avuto a che fare con tali strumenti per cui quando ho aperto con Thunderbird una mail generata con Outlook 2007, mi son ritrovato una simpatica accozzaglia di dati del tipo:
BEGIN:VCALENDAR...ma molto più incasinato. Una rapida ricerca in rete mi ha fatto trovare un'ottima estensione per Thunderbird 2.* chiamata Lightning. Questa estensione permette di leggere, accettare e declinare eventi condivisi e di visionare il proprio calendario in un pannello a destra (vedi foto sotto), richiamabile e nascondibile tramite un bottone nella barra degli strumenti.
VERSION:2.0
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
BEGIN:VEVENT
DTSTART:19970714T170000Z
DTEND:19970715T035959Z
SUMMARY:Bastille Day Party
END:VEVENT
END:VCALENDAR
13:01 | Categorie: thunderbird | 0 Comments
[Apache] Protezione .htaccess ed autenticazione
Ammettiamo di voler proteggere una parte del nostro sito tramite la classica autenticazione di base di .htaccess e .htpasswd, ma di voler richiedere l'autenticazione solo per chi si connette con IP diversi da quelli che acconsetiamo:
Order Deny,AllowCome da esempio, permettiamo di entrare senza autenticazione ai range CIDR 192.168.0.0/16 ,172.16.0.0/16 e 10.0.0.0/8. In aggiunta permettiamo all'IP statico 87.65.65.65 di entrare senza autenticarsi.
Deny from all
# permettiamo gli indirizzi privati,localhost e
# alcuni IP, protezione htaccess per gli altri
Allow from 172.16. # lan privata...
Allow from 127.0.0.1 # locale...
Allow from 87.65.65.65 # ip statico a caso...
AuthType Basic
AuthUserFile /percorso/al/file/.htpasswd
AuthName "AREA RISERVATA"
Require valid-user
Satisfy any
Per tutti gli altri ci affidiamo al file .htpasswd che sarebbe bene posizionare al di fuori della directory pubblica (di solito www o htdocs a seconda che Apache sia su Linux o Windows).
Per costruire le coppie username:password presenti in .htpasswd potete usare l'eseguibile omonimo presente nell'installazione di Apache (vedere la documentazion online), potete usare uno dei tanti generatori online come .htpasswd Content Generator oppure si può ricorrere ad uno script PHP come il seguente:if(isset($_GET['pass'])){
// prendiamo il parametro dalla query string...
$clearTextPassword = $_GET['pass'];
// criptazione
$password = crypt($clearTextPassword, base64_encode($clearTextPassword));
echo "Valore da immettere nell'.htpasswd: ";
// se viene fornito l'utente...
if(isset($_GET['user']))
echo $_GET['user'].":".$password;
else echo $password;
echo "";
} Nell'esempio qui sopra si assume di richiamare uno script PHP nel seguente modo: http://localhost/htpass.php?user=Chris&pass=p4ss.
22:37 | Categorie: Apache, PHP, Servizi | 0 Comments
[PHP-MySQL] Connettersi a diversi DB su host diversi attarverso una sola funzione
Se avete a che fare con DBMS su host differenti e volete uno script che sia in grado di connettersi dinamicamente a ciascuno di essi, ci si può basare sull'indirizzo del server su cui risiede il DBMS. L'esempio seguente dovete immaginarlo come il costruttore della classe DBconnect che imposta i campi dbhost (host in cui gira MySQL), dbuser (utente con cui si si collega al DB), dbpassword (password utente) e database.
In quest'esempio si fa uso di preg_match e di espressioni regolari per riconoscere l'indirizzo del server.
function DBconnect() {
// esecuzione su una LAN privata
if(preg_match("/^10\./",$_SERVER['SERVER_ADDR'])) {
$this->dbhost = "10.10.234.89";
$this->dbuser = "lan1";
$this->dbpassword = "lan1";
$this->database = "lan1";
// esecuzione su un'altra LAN privata
} else if (preg_match("/^192\./",$_SERVER['SERVER_ADDR'])) {
$this->dbhost = "192.168.9.134";
$this->dbuser = "lan2";
$this->dbpassword = "lan2";
$this->database = "lan2";
} else { // esecuzione in locale
$this->dbhost = "localhost";
$this->dbuser = "locale";
$this->dbpassword = "locale";
$this->database = "locale";
}
}
22:09 | Categorie: MySQL, PHP | 0 Comments
[PDF] Librerie e applicazioni utili
Nel ricercare un tool su SourceForge che mi permettesse di esportare le immagini da un PDF, ho trovato interessanti librerie che mi propongo di analizzare nel medio-lungo periodo (il tempo è tiranno e gli impegni molti):
- PDFBox [Java]: PDFBox is an open source Java PDF library for working with PDF documents. This project allows creation of new PDF documents, manipulation of existing documents and the ability to extract content from documents. PDFBox also includes several command line utilities.
- PHP PDF Factory [PHP]: PDFLib-free PDF creation using PHP. It has interface compatible with php pdf creator (pdf-php library). Implements most of Adobe recommended features like PageTrees, Outlines, and so on.
- XML-PDF Transformation GUI [Java]: This is a Java Swing GUI for popular XML tools from the Apache Group. It uses Xerces for XML validation, Xalan for XSLT, FOP for XML to PDF and iText for adding security features to the PDF. Can produce FO, HTML and PDF. I personally use it for my DocBook.
- QPDF [C++]: QPDF is a command-line program that [...] is capable of creating linearized [...] files and encrypted files. It is also capable of converting PDF files with object streams [...] to files with no compressed objects or to generate object streams from files that don't have them (or even those that already do). QPDF also supports a special mode designed to allow you to edit the content of PDF files in a text editor. For more details, please see the documentation links below.
- PDF Edit [C++,XPDF, QT3,QSA]: Free (and open source) editor for manipulating PDF documents. GUI version + commandline interface. Scripting is used to a great extent in editor and almost anything can be scripted, it is possible to create own scripts or plugins. Target platform are operating systems of Unix type (Linux, BSD).
- [PHP]: Want to create dynamic pdf documents with PHP, but don't want to (or can't) install any of those required modules? Wll we could have the solution.. for you, a PHP class which will allow the easy production of simple pdf documents.
- PDML [PHP]: PDML is an informal markup language written in 100% PHP, allowing to create complex PDF documents very easily for people already familiar with HTML. People familiar with PHP can also use it as a way to define templates for dynamic PDF documents. PDML is built on top of FPDF, and is licensed under the GPL;
- Peters PHP PDF Report: A PHP5 class, which capable to generate PDF report (w optional sections like pageheader, reportheader, content etc..) based on fpdf class. The report is defined in xml, groups' definitions and variable replacement from any database are supported.
- WP2PDF: it is a script that converts the content of one or more entries of the Blog-Software WordPress to PDF. It is based on FPDF, a free PDF library and written in PHP. It requires a working WordPress installation and PHP 4.x.
19:21 | Categorie: c++, HTML, java, PHP, programmazione, software | 0 Comments
[Software] Esportare tutte le immagini di un PDF
I fun dei Nine Inch Nails avranno sicuramente notato la bellezza delle immagini presenti nel PDF allegato al loro utlimo album e liberamente scaricabile dal sito ufficiale.
Sebbene complessivamente il loro ultimo lavoro non mi sia piaciuto (sebbene mi piacciano molto e abbia ascoltato l'intera discografia producendo una mia compilation personale), le immagini presenti in quel PDF sono veramente belle.
Da qui la necessità e la voglia di esportarle dal loro contenitore.
SomePDF (per Windows) permette di importare un file PDF tramite un pulsante (niente drag & drop) e di esportare in una cartella (posizionata nella medesima directory del PDF che avete importato) tutte le immagini presenti nel PDF.
Nel mio caso, ha elaborato un PDF di 50 pagine contenente una quarantina di immagini in pochi secondi.
Una utility a linea di comando che compie la stessa cosa è PDF2JPG. quest'ultima non l'ho provata poichè ho raggiunto il mio obiettivo immediatamente, ma ho voluto citarla perchè potrebbe sempre tornar utile come integrazione in altre applicazioni.
Se conoscete software analoghi per Linux lasciate un commento grazie.
18:29 | Categorie: software | 0 Comments
[Fun?] Cottura rapida del pop-corn aka cervello
Manco con la pentola riesco a farli così velocemente :-D
Questo video mi ha riportato alla memoria la storia pubblicata da Grillo in cui sembrava che due cellulari accesi e in comunicazione tra loro potessero cuocere un uovo in un'ora. Questa storia è stata in seguito sbufalata da Attivissimo, che a riguardo ne ha anche discusso personalmente alla radio con Grillo, il quale però continuava a sostenerne la validità.
Questa e altre storie sono state usate per indicare che spesso Grillo ne spara qualcuna di troppo (del resto nessuno è perfetto). Quello che mi fa incazzare è che poi si esageri andando a colpire più l'uomo che le sue parole e quello che cerca di fare in quest'Italia fatta dalla politica e dall'informazione ormai marce.
Beh ragazzi, magari due cellulari non riescono a cuocere un uovo in un'ora, ma almeno 4 cellulari riescono a farci i pop-corn in pochi secondi :-D
16:48 | Categorie: film - Video | 0 Comments
[VoIP] Account multipli su Windows
Oggi tornato a casa volevo aver la necessità di poter usare, oltre al mio account storico di Skype, anche quello di lavoro.
Dopo una breve ricerca salta fuori che in XP è sufficiente creare un altro account come amministratore ed eseguire il programma con quest'altro utente.
Ho provato con Vista, dopo aver creato un altro account amministrativo, ma la parolina magica "Esegui come..." non c'era.
A un certo punto mi imbatto in un commentatore che siggerisce l'uso di SandBoxie. Per chi non lo sapesse SandBoxie costituisce una sandbox in cui i programmi che vengono eseguiti al suo interno non possono interagire con lo spazio di memoria esterno del disco alla sandbox (ottima per eseguire i browser o programmi poco sicuri).
Siccome l'avevo già installato, ho provato ed effettivamente la cosa funziona.
E' strano come alle volte la soluzione a certe stupidaggini sia sempre stata lì a portata di mano ma che si sia troppo ciechi per vederla.
Se avete altre soluzioni o conoscete patch simili a quelle per MSN fate un fischi qui sotto ;)
22:34 | Categorie: software | 0 Comments
[Music] La compilation della domenica
Senza alcuna volontà di svilirla, viene così battezzata perchè creata di domenica per l'appunto :-)
Ho avuto modo di ascoltare gruppi e artisti a me sconosciuti e di scoprire certi brani di altri gruppi più o meno noti (per lo più solo di nome).
Durante quest'esplorazione ho dato vita all'ennesima compilation (prima o poi dovrei decidermi a farmi un account su LAST FM per farle anche ascoltare invece di fornire solo dei titoli, magari lo farò in una delle domeniche che verranno, per ora linko i video su Youtube).
Listone:
- Stefanie Heinzmann - My man is a mean man;
- REM - Supernatural superserious;
- Maroon 5 - Wont go home without you;
- Amy McDonald - Mr rock and roll;
- Newton Faulkner - Dream catch me;
- Yael Naim - New Soul;
- Take that - Rule the world;
- Paul Simon - Graceland;
- Gnarls Barkley - Run (I'm a Natural Disaster);
- Girls Aloud - Can't Speak French;
- Gwen Stefani - Early winter;
- Seal - Amazing;
- King family - Perfect day;
- Sunrise avenue - -Fairytale gone bad;
- Lupe fiasco - Superstar;
- Nickelback - Rockstar;
- Sheryl Crow - Love is free;
- Duffy - Mercy;
- Sugababes - Denial;
- Adele - Chasing Pavements;
- Amy Winehouse - Back to black;
Chi ha tempo e si è visto i video lasci pure un commento riguardo a questa selezione. Io mi riservo di sentirla meglio in macchina, praticamente gli unici momenti (a parte il finesettimana) in cui ascolto un po' di musica.
18:39 | Categorie: Musica | 0 Comments
[Hi-Tech?] USB devices per tutti i gusti :-)
In giro per la rete ci capita di vederne di tutti i colori. All'ennesimo dispositivo USB un po' bizzarro ho deciso di elencarne alcuni tra quelli che mi hanno colpito:
- Spinacz: USB pen drive a forma di molletta di legno;
- iGrill: 100$ per avere un tostapane in grado di scaricare le ricette, digitare il tipo di cibo, il peso e il grado di cottura;
- USB Air Darts: lancia razzi USB, per accecare gli ospiti indesiderati che cercano di entrare nella vostra camera (disponibile un video che rende l'idea della inutility);
- USB Engine Hub: USB hub a 3 porte a forma di motore in grado di rombare (direi anche fastidiosamente) se tirate la leva d'accensione;
- USB slippers: pantofole riscaldanti una volta connesse al vostro PC...non oso immaginare quali altri troiai si possano trovare in questo sito...fanno il paio con i guanti riscaldanti;
- usb.brando.com.hk: in questo sito c'è veramente una vagonata di dispositivi tra i più bizzarri: USB Hub a forma di stella, radiolina a forma di pallone in grado di connettersi a diversi dispositivi, DJ Plasma tube (barre al plasma che si muovono in corrispondenza del ritmo), una fontana 21 X 16 X 11 cm, una radiosveglia con 1 GB di memoria in grado di riprodurre anche gli mp3 (disponibile anche in versione cubo);
Fonte: Gadget Fosfor;
18:49 | Categorie: Cazzate, Hardware | 0 Comments
[Social Network] Nasce DiggItSport
Era già in cantiere da un bel po' di tempo questo nuovo aggregatore sociale tutto incentrato sulle notizie sportive, ma nasce ufficialmente oggi DiggItSport, i cui autori sono il solito duo composto dagli amici Guido e Antonio con la collaborazione di Tommaso Baldovino per la parte grafica.
Riporto direttamente le parole di Guido su DiggItSport:
Ma di cosa si tratta? Si tratta di uno, o meglio, del primo ed unico aggregatore italiano di notizie unicamente sportive. E mai come in questi giorni lo sport è argomento di prim’ ordine, dal momento che i prossimi tempi vedranno iniziare gli Europei di Calcio 2008 e le Olimpiadi di Pechino 2008. [CUT]
Sì, perchè DiggItSport si propone [di] diventare il portale che raccoglierà il meglio delle notizie sportive della Rete. [CUT] oltre alle news, è possibile postare anche fotografie e video. [CUT] DiggItSport integra il Revenue Sharing, ovvero da la possibilità ai suoi utenti di guadagnare tramite DiggItSport! Basterà che l’ utente abbia un account AdSense ed inserisca tra le impostazioni del suo account sul portale il proprio codice publisher. Da quel momento sulle pagine delle news da lui segnalate appariranno i suoi banner AdSense! Ogni click altrui su di essi, quindi, andrà ad incrementare il proprio conto Google!
14:47 | Categorie: Annunci, Servizi, Web 2.0 | 0 Comments





