Appunti di sviluppo e varie

Archive for January, 2009

Migrazione completata (?)

Friday, January 30th, 2009

Sono riuscito a finire la migrazione al server nuovo. Ho spento il vecchio e sto scrivendo dal nuovo. Adesso c’è quella fantastica sensazione, come quando esci di casa e sei sicuro di esserti dimenticato qualcosa :)
Comunque sia i siti rispondono tutti, no-ip pare funzionare, bind pure … direi che grossomodo non mi serve altro.
Un giorno per controllare che la migrazione sia avvenuta in modo corretto e passo il vecchio server al mio amore, al posto del suo decrepito AthlonXP 2800+ e ci mettiamo la Bubbuntu

P.S.
Meno male che gli hanno messo un paio di lucine a ‘sto MD100, altrimenti sembra spento pure da acceso (come il mio cervello il lunedì mattina peraltro)

Vecchi amori (PEAR SpreadSheet_Excel_Writer)

Thursday, January 29th, 2009

Per un cliente ho dovuto rivangare le mie conoscenze di succitata libreria.
Va da sé che ho perso di nuovo un pomeriggio a sistemare il file di uscita per Excel. Open office lo digeriva senza fare una piega, mentre il prodotto WinBlows continuava a lamentarsi per la «Possibile perdita di dati».

Il lavoro consiste nell’andare su un sito tramite curl, raccogliere i cookie necessari a non essere sbattuti fuori, richiedere 2 files xml, farne il parsing e sbatterne quinid i valori in un file xls di tre fogli, con i dati splittati secondo un certo criterio.

Alla fine ho risolto modificando un loop:

i due ultimi fogli sono lo split del secondo file xml in due fogli diversi in base ad un criterio. Il problema con Excel sorgeva perché nell’iteratore (un for each) nel caso della prima riga scrivevo oltre alla prima riga stessa i nomi di colonna in riga 0. Ovviamente scrivevo lo stesso nome di colonna su entrambi i fogli con due chiamate distinte, ma nello stesso blocco if (i fogli hanno gli stessi nomi di colonna: sono divisi tipo per «in» «out»)

tipo:

if($rigaAttuale=1){
$worksheetB->write(0,$colonnaAttualeA,$chiave,$format_title);
$worksheetC->write(0,$colonnaAttualeA,$chiave,$format_title);
}

Alla fine ho risolto così:

if($rigaAttuale=1){
if($in){
$worksheetB->write(0,$colonnaAttualeA,$chiave,$format_title);
} elseif($out){
$worksheetC->write(0,$colonnaAttualeA,$chiave,$format_title);
}
}

e tutti sono contenti.

Di come sono riuscito a fare ‘sta cosa tramite curl ne scrivo fra un po’: è una cosa della quale sono abbastanza fiero, anche se in realtà si tratta di un caso di RTFM’ing ben riuscito :)

Non è un fulmine, ma è carino forte :)

Saturday, January 24th, 2009

Il mio nuovo serverino è proprio bello e assolutamente silenzioso. Non è proprio un fulmine nelle compilazioni (sono arrivato a compilare tutta la parte LAMP e poco di più) ma dato il consumo ridottissimo direi che ci si può accontentare.

I siti li ho già migrati, devo solo rifare il dump di mysql per beccare gli ultimi aggiornamenti (tipo questo post) e poi posso migrare sulla macchina nuova.

Nel passaggio da x86_64 a x86 non ho dovuto cambiare pressoché nulla dei file di configurazione che ho riciclato quasi completamente.

È arrivato

Friday, January 23rd, 2009

È arrivato il nuovo server. Piccolo, silenziosissimo e non sembra neanche così lento.

Per provare a vedere se è tutto a posto e funzionante ho fatto partire una live della Ubuntu e funziona tutto, ivi compresa l’accelerazione 3d (peccato che non mi servirà mai su questa macchina)

Adesso la spengo e faccio partire una più consona Gentoo x86_64¹ e poi vai di gcc :)

Facciamolo sudare ‘sto Atom

¹Ehm, effettivamente non è x86_64 l’atom 230, è 32 bit :D È bastato un kernel panic perchè me ne accorgessi

Accenni di GPG

Friday, January 23rd, 2009

Per vari motivi mi sono dovuto documentare sulla crittografia da un punto di vista informatico anche se la cosa non mi interessa più di tanto da un punto di vista personale. Io sono dell’idea che staremmo tutti meglio se vivessimo in case con pareti trasparenti.

Ad ogni modo finalmente comincio ad avere un’idea un po’ più chiara di cosa sia la crittografia e di come implementarla. Riguardo a quest’ultima cosa mi pare d’aver capito che in raltà l’unico sistema sia la crittografia asimmetrica con coppia di chiavi pubblica e privata.

Un po’ uno sbattimento in effetti.