Migrazione alla versione 5.5 di PHP

Il problema

Molti di voi dopo aver letto il titolo di questo post, probabilmente avranno detto: “Mbhe, qual’è il problema ???”. Qualche tempo fa l’avrei detto anche io. Togli la versione corrente e installi l’ultima versione… e il gioco è fatto. È vero, questa è una soluzione, la più banale e lineare, ma non sempre applicabile, soprattutto quando la migrazione non va fatta per un’unico progetto e per un’unico sviluppatore, ma per tutta un’azienda e per tutti i progetti in manutenzione, evoluzione e progettazione.

Alcune Valutazioni

Partiamo dalle motivazioni che mi spingono verso la scelta di migrare ad una nuova versione del linguaggio. In prima istanza si tratta di performance. Da alcuni test che ho potuto svolgere e da altri riscontrati in rete l’ultima versione del PHP ha delle prestazioni superiori anche fino al 40% rispetto alla precedente. Già questa potrebbe essere una motivazione più che valida per affrontare il problema. La seconda motivazione, ed è quella che gioca un ruolo portante, è la compatibilità con le librerie. Con il tempo sempre più librerie, probabilmente quelle migliori, avranno come requisito questa ultima versione di PHP. Non allinearsi potrebbe realmente significare non poter utilizzare qualcosa di già pronto. Oggi è una libreria, domani magari un framework e quello che potervi fare in due ore sei costretto a dovertelo rifare da capo, per di più, con qualità anche inferiore. Non vorrei certo fare la fine di qualche società che sta ancora su PHP4 con la quale qualsiasi tipo di integrazione è impossibile. Continue reading “Migrazione alla versione 5.5 di PHP”

Il nostro talk al codemotion 2013: Let’s test

Anche quest’anno ho avuto il piacere di partecipare come speaker al codemotion insieme al mio collega Andrea. A dirla tutta è lui che ha spinto per proporre un talk. Era talmente tanto entusiasta di quello che ha appreso in un anno ( da quando si è trasferito in dnsee) sulla pratica del “testing automatico” che aveva voglia di condividere con quante più persone possibile… e c’è riuscito. Continue reading “Il nostro talk al codemotion 2013: Let’s test”

Uno schermo che fa la differenza: quello di Jenkins

Capita di portare avanti un progetto con molte persone, parliamo di 6/7 persone, che magari sono distribuite in differenti team di lavoro (frontend/backend) e che per rendere le cose più semplici ( si fa per dire ) sono anche dislocate in diversi settori dell’ufficio. In questo contesto, quando i  tempi stringono ed è necessario tenere tutto sotto controllo, è molto produttivo mettere in piedi un sistema di continuous integration (da qui in poi CI) che sia in grado di stabilire quando c’è qualcosa che non va nell’eseguire la suite di test.

Bene, non è la prima volta che parlo di CI e soprattutto non è la prima volta che la metto in pratica per un progetto delicato. Ma questa volta c’è qualcosa di diverso, qualcosa di semplice, una mossa in più (anzi, due) che cambia tutto.

Continue reading “Uno schermo che fa la differenza: quello di Jenkins”

Symfony: Quando i filtri non fanno parte del modello

L’admin generator di symfony è un componente fenomenale, se non ci fosse bisognerebbe inventarlo. Permette di creare un’applicazione basica (CRUD di tutti i modelli) in pochissimo tempo. In più man mano che lo si utilizza si impara sempre meglio a personalizzarlo per i propri scopi.

Ultimamente mi è capitato di dover filtrare la lista di risultati di un modello non in base ad uno dei suoi attribuiti (quindi una delle sue colonne) ma in base ad un attributo di un altro modello strettamente collegato a quello di interesse.

Immaginate di avere tre differenti modelli: nazione, regione, città. Tra nazione e regione una relazione uno a molti cosi come pure tra regione e città. Ma se volessimo sapere tutte le città di una nazione senza impostare una regione, come bisognerebbe comportarsi con i filtri del modello città? Continue reading “Symfony: Quando i filtri non fanno parte del modello”

Continuous Integration con Hudson

Avessi avuto la stessa passione anche per gli argomenti che trattavano a scuola sarei stato il primo della classe!

Non è un post storico! Stavo ripensando agli Specch che ho seguito al phpday 2010.  E stato un continuo prendere appunti: software, modelli di sviluppo, tool. Insomma ho veramente fatto tesoro di tutto quello che ho potuto ascoltare. E senza pensarci su, tornato nella mia quotidianità ho cominciato piano piano a mettere in pratica tutto il possibile.

Continue reading “Continuous Integration con Hudson”

Il mio phpday2010

Quest’anno per la prima volta, preso un po’ da questa onda social che non si era mai presentata in me, ho partecipato al #phpday2010.
Quest’anno posso dire: “C’ero anche io!”. Non che prima non conoscessi questa manifestazione, anzi, diciamo che l’ho sempre seguita … solo che a posteriori, su blog, riviste e quant’altro (in fondo sviluppo in php da quasi 10 anni).

Continue reading “Il mio phpday2010”