Claudio Cherubino's blog Life of a Googler

29Nov/070

Fixare i bug di PHP e MySQL

Nell'ultimo periodo ho dedicato buona parte del mio tempo libero allo studio di alcuni dei più importanti progetti open-source esistenti, tra cui PHP e MySQL, in modo da partecipare allo sviluppo.

Devo ammettere che giàla fase di build dei sorgenti ha richiesto del tempo per essere acquisita.
Ogni progetto prevede il proprio sistema di controllo della versione (CVS, SVN o Bitkeeper) e la sua procedura per la configurazione, compilazione e installazione.

Anzi, se pensate che possa interessare, magari potrei provare a scrivere una guida passo-passo per la compilazione di PHP o MySQL su Ubuntu 7.10, che è la piattaforma di sviluppo che ho adottato.

Una volta che si riesce a compilare il sorgente, il passo successivo è trovare un bug da studiare e tentare di fixare.

Niente di complicato, basta visitare il bug-tracker di PHP o MySQL e scegliere uno dei bug ancora aperti.

Identificato il bug si deve cercare di riprodurlo nella propria macchina.

Se il problema si verifica come descritto, allora si passa allo studio del codice per capire dove intervenire e in che modo.

Ovviamente conviene cominciare da qualche bug facile, in modo da cominciare a conoscere il codice, che in progetti come questi è sicuramente complesso.

Nel mio caso, ho scelto un bug di PHP e uno di MySQL, e sono riuscito a chiuderli entrambi.

Volete mettere la soddisfazione personale di vedere il proprio nome nel codice di PHP, come si vede in questo log?

revision 1.656
date: 2007/11/21 02:27:07; author: stas; state: Exp; lines: +2 -2
fix #42866, from Claudio Cherubino

Il bug in questione è il seguente, e riguardava il supporto per UNICODE nella futura release 6 di PHP:

http://bugs.php.net/bug.php?id=42866

Per quanto riguarda MySQL, invece, il bug riguardava la funzione LAST_DAY():

http://bugs.mysql.com/bug.php?id=32770

ed ecco qui la la descrizione della mia patch, compresa di codice e test case:

http://lists.mysql.com/internals/35187

Lo so che si tratta di piccole cose, ma è sempre un inizio, e anche se la comunitàopen-source non mi saràdebitrice a vita, sicuramente il mio orgoglio di informatico se la passa molto bene...

24Nov/072

Tempi di consegna

Negli ultimi mesi mi è capitato di richiedere via Internet della merce gratuita da Nokia, Nintendo e Ubuntu (vedi qui, qui e qui) e ho scoperto che i tempi di consegna sono incredibilmente variabili.

Per ricevere a domicilio due cd con l'ultima release di Ubuntu è bastato un mese esatto, mentre Nintendo ha impiegato quasi il doppio del tempo (dal 7 Ottobre a oggi) per recapitare i gusci protettivi per telecomando Wii.

La vera sorpresa negativa però è sicuramente Nokia, che non mi ha ancora fatto avere la batteria di ricambio per il cellulare, nonostante siano passati più di 3 mesi.

Inoltre, se negli altri due casi si trattava di omaggi o gadget comunque superflui, in questo caso la sostituzione è dovuta ad un difetto della batteria che potrebbe portare all'esplosione della stessa!

Qualcuno di voi ha ricevuto la batteria sostitutiva che gli spetta?
E se nel frattempo la mia esplode che faccio? :sad:

11Nov/074

Ubuntu a domicilio

Da circa un mese, approfittando del rilascio di Ubuntu 7.10 (versione detta anche Gutsy Gibbon), sono finalmente riuscito a passare definitivamente da Windows a Linux per l'uso quotidiano e lavorativo.

L'unico applicativo che secondo me non regge il confronto con la controparte Windows è OpenOffice, che nonostante gli enormi passi avanti, non è ancora al livello di Microsoft Office.

Per chiunque voglia provare ad usare Linux, mi sento tranquillamente di consigliare Ubuntu, le cui immagini da masterizzare possono essere scaricate gratuitamente dal sito ufficiale.

Esiste un ulteriore possibilità , dedicata a chi magari non ha una connessione ad Internet veloce o non vuole masterizzarsi da solo i cd, ed è quella chiamata ShipIt, cioè un servizio offerto da Canonical (l'azienda alle spalle di Ubuntu) che consente di richiedere l'invio gratuito a domicilio di uno o più cd con la distribuzione Linux.

Io ho voluto provare personalmente tale servizio e ho richiesto due cd di Gutsy Gibbon.
Dopo un mese esatto mi è stato recapitato a casa un pacchetto contenente non solo i cd ("One for me, One for a friend") ma anche 4 adesivi di Ubuntu.

Che ne pensate di questo servizio?