Symfony live 2012 – giorno 2

Posted on 08/06/2012, 09:52, by Massimiliano Arione and received No Comments ».

spacer Il secondo giorno inizia con un talk in track unica di David Zuelke. Purtroppo si tratta ancora di Designing HTTP interfaces and RESTful web services. Il titolo vi dice qualcosa? Se avete partecipato almeno a una conferenza su PHP nell’ultimo lustro, c’è una buona probabilità che l’abbiate già visto.
Purtroppo la presenza di tre track, invece delle due di ieri, ci consentirà una copertura inferiore dell’evento.


Il talk in francese di William Durand su Propel2 ha evidenziato lo stato attuale di questo ORM, che sta cercando di recuperare la strada perduta rispetto a Doctrine. La buona notizia è che Propel2 sarà un refactoring della versione 1.6, quindi con le stesse funzionalità. Rispetto alla vecchia versione, ci sono numerosi miglioramenti: supporto solo da PHP 5.3.3, coding standard rivisto, aderenza a PSR-0 (Propel2 è nel FIG), componenti di Symfony2 al posto di phing (ma non solo), adapter per poter non usare PDO, supporto ai traits su 5.4.


Gli onnipresenti Stof e Lukas hanno tenuto un talk sui bundle. Dopo una breve introduzione su cosa sono i bundle e su dove sia possibile trovarli (ovviamente su knpbundles!), hanno mostrato una carrellata di best practice per crearne di nuovi: struttura delle cartelle, licenza (meglio MIT), configurazione del DIC, uso di composer, scrittura di test, interazione con travis, ovverride di controllori, gestione di bugfix e di pull request su github. Infine, hanno mostrato alcuni dei bundle più famosi e più usati (molti dei quali scritti da loro stessi), come fosuser, fosrest, stofdoctrineextension, knpmenu, liipimagine, eccetera.


spacer Larry Garfield ha tenuto un talk sulla situazione di Drupal e sull’integrazione prevista in Drupal 8 di diversi componenti di Symfony. Ha riconosciuto e messo in evidenza i limiti di questo popolare CMS, dovuti secondo lui soprattutto al fatto che è un progetto partito oltre un decennio fa. Ha poi esposto tutti i miglioramenti in vista per Drupal, sia relativamente a come saranno integrati i componenti, sia alle pratiche di svilippo e di gestione del progetto.


Purtroppo ho dovuto saltare uno slot, per presentare un lighting talk nell’unconference.
spacer In chiusura, David Buchmann, già speaker al phpDay, ha parlato di Symfony2 e agile. Dopo una non breve introduzione all’agile, ha evidenziato come Symfony si adatti bene a chi voglia seguire le pratiche agili: modularità, separazione (grazie al DIC), testabilità, possibilità di sviluppare codice che sia a sua volta modulare (per esempio usando i controllori come servizi). A seguire, diversi consigli su come scrivere i test e quali bundle possono aiutare (per esempio JMSCommandBundle e LiipFunctionalTestBundle). Non poteva mancare l’invio all’utilizzo di travis.


Per completezza, nei track non coperti qui si è parlato di: Service Container, ORM e prestazioni, PHPCR, Redis, Behat, Solr, CMF, un case study su Overblog, sysadmin skills, PostgreSQL, websockets.
Purtroppo è mancato un intervento conclusivo: dopo le ultime sessioni, ci sono stati dei lighting talk in track principale, poco convincenti, anche se a dire il vero sono andato via prima che finissero.

In conclusione: un evento sicuramente migliorato rispetto allo scorso anno (due difetti evidenti, cibo e connessione, sono stati risolti una volta per tutte), ma che non dà ancora l’impressione di essere ai livelli di due anni fa. Speriamo nel 2013.

Tags: sflive

Symfony live 2012 – giorno 1

Posted on 07/06/2012, 10:26, by Massimiliano Arione and received 2 Comments ».

spacer Una piccola rappresentanza della comunità italiana è presente anche quest’anno a Parigi, per la conferenza di riferimento su Symfony.
Il keynote di apertura è stato tenuto, ça va sans dire, da Fabien Potencier in persona. L’argomento è stato proprio la comunità, la community di Symfony, che secondo l’autore originario del nostro framework preferito è alla base del suo stesso successo. Ci sono stati, come prevedibile, diversi ringraziamenti ai membri di spicco e ai contributos principali. Si è parlato molto di SensioConnect, dentro cui viene introdotta, proprio oggi, una importante novità: la possibilità di certificarsi, con un esame che è stato annunciato come “non facile”. L’intervento di Fabien si è concluso con un commovente finale, un “I love you all ♥!”


Dopo il keynote, avremmo voluto seguire una sessione sulla sicuezza, ma purtroppo è stata scambiata con una sullo sviluppo del sito mobile della BBC. In sintesi, le parole chiavi di questo talk sono state: mobile first, velocità, back to basics, responsive. Purtroppo il talk non era proprio attinente a Symfony, anzi il relatore ha ammesso a un certo punto di usare Zend Framework spacer


spacer A seguire, un talk molto tecnico di Johannes Schmitt, l’autore del bundle sulla sicurezza della Standard Edition. A dispetto del titolo (Security in real life), l’inizio è molto didascalico, con un elenco molto lungo di classi e con spiegazioni sul funzionamento del componente Security di Symfony. Più avanti, l’autore ha mostrato in effetti diversi casi d’uso relativi alla sicurezza, mostrando anche molti esempi di codice. Personalmente, avrei preferito qualcosa di più astratto e relativo alla sicurezza a più alto livello, piuttosto che una spiegazione che alla fine si potrebbe anche trovare nella documentazione.


spacer Dopo un’abbondante pausa pranzo, la conferenza è ricominciata con un case study sulla conversione di wetter.com, un grosso sito tedesco di previsioni del tempo, a Symfony2.
In conclusione, i due speaker erano molto contenti di come il framework li abbia supportati nel costruire e personalizzare un sito ad alto traffico, soprattutto grazie a Varnish, twig e assetic.


spacer Si prosegue con un argomento di cui si parla molto ultimamente: mongoDB, con un talk tenuto direttamente da uno dei membri di 10gen. La maggior parte del talk è stata molto tecnica, con argomenti avanzati (quasi a livello sistemistico), quindi sicuramente più adatta a chi conosce già bene lo strumento (purtroppo io non sono tra questi). Sfortunatamente, nonostante una delle slide iniziali facesse pensare diversamente, la parte di integrazione con PHP (Doctrine ODM) è stata alquanto ridotta, giusto un accenno.


spacer L’ultimo talk serio della giornata è tenuto nuovamente da Schmitt e riguarda twig.js, una libreria che consente di scrivere template javascript con la stessa sintassi di Twig. Come Twig, tale libreria è estensibile, essendo possibile scriverne estensioni che intervengono al momento della compilazione oppure a runtime.


Per la cronaca, le sessioni a cui non abbiamo assistito, nell’altra track, parlavano di: full stack framework, configurazione di bundle, composer, Silex, componenti.
La serata si è conclusa con un gioco a quiz, su cui sorvoliamo.
A domani!

(stay tuned, il post sarà aggiornato….)

Tags: sflive

deploy semplificato con Symfony2

Posted on 21/05/2012, 11:37, by Massimiliano Arione and received 3 Comments ».

Come probabilmente saprete, l’attuale standard de facto per il deploy con Symfony2 è Capifony.
Può capitare però, di avere esigenze di deploy molto più semplici, oppure di non voler usare ruby, o ancora non avere la possibilità di configurare il server remoto per utilizzarlo.
Perché allora non riciclare la semplice strategia utilizzata dal caro vecchio symfony 1? Ecco qui un semplicissimo script shell, da inserire per esempio in bin/deploy.sh:

#!/bin/bash
 
# adattare queste tre variabili
user='nome_utente'
server='nome_server'
dir='nome_sito'
 
/usr/bin/rsync -azC --force --delete --progress --exclude-from=app/config/rsync_exclude.txt -e ssh . $user@$server:$dir
 
/usr/bin/ssh $user@$server 'cd '$dir'; /usr/bin/php app/console cache:clear --env=prod --no-debug'

Basterà copiare e adattare un file rsync_exclude.txt da un vecchio progetto symfony (o usare quello della sandbox) nella cartella app/config e sostituire ai vari nome_utente, nome_server e nome_sito i valori adeguati.
Ovviamente, si possono personalizzare i comandi da eseguire dopo aver eseguito rsync, basta aggiungerli all’interno degli apici singoli, dopo quello di pulizia della cache, separati da puntoevirgola.

Tags: deploy

VichUploaderBundle, file upload con doctrine

Posted on 11/04/2012, 10:30, by Francesco Tassi and received No Comments ».

L’ upload di file è una delle necessità più comuni di un’applicazione web. La documentazione ufficiale copre l’argomento in maniera piuttosto chiara, trattando sia l’upload di file generico che quello di file legati ad un’entità doctrine. In particolare quest’ultimo è probabilmente il caso più comune dato che, nella maggioranza dei casi, vorrai avere su database un riferimento al file caricato.

La procedura descritta nel cookbook è assolutamente corretta, ma l’utilizzo del bundle VichUploaderBundle rende il tutto più efficace e risolve, abbastanza bene, anche un paio di problemi. Ecco la mia esperienza con questo bundle.

Continue reading this post »

Tags: bundle, file upload, symfony 2.0

Velocizzare i test usando un RAM Disk

Posted on 03/04/2012, 10:15, by Francesco Tassi and received 4 Comments ».

Dato che la RAM costa relativamente poco e il tempo invece è merce rara, mi pare una buona idea “investire” un po’ di RAM per risparmiare tempo. Se lavorate con una suite di test automatici probabilmente questa girerà decine di volte al giorno (forse addirittura all’ora) facendo una serie di operazioni su disco che, probabilmente, avranno un peso significativo sul tempo di esecuzione finale. Montando una porzione di RAM e utilizzandola come FS si può velocizzare l’esecuzione dei test.

Continue reading this post »

Tags: symfony2, TDD, tips

Documentazione ufficiale italiana di Symfony 2.0

Posted on 13/03/2012, 17:07, by Massimiliano Arione and received 3 Comments ».

Il team di traduzione italiano, ancora una volta, è riuscito a tradurre per primo la corposa documentazione di Symfony2, che ora è finalmente disponibile sul sito ufficiale. Ci sono ancora alcuni dettagli da definire, come per esempio i collegamenti nel menù non ancora tradotti, ma ci stanno lavorando. Nel frattempo, grazie al contributo di Vittore Zen, è anche disponibile il file PDF della medesima documentazione.
AGGIORNAMENTO: un PDF ufficiale, anche separato per sezioni, è ora disponibile in Italiano sul sito ufficiale.

Tags: documentazione

Symfony Live 2012

Posted on 06/01/2012, 12:29, by Massimiliano Arione and received 1 Comment ».

spacer È stato appena annunciato su twitter che l’edizione 2012 della nota conferenza Symfony Live si terrà un po’ più tardi, a giugno, esattamente il 7 e l’8, con la consueta giornata di workshop il giorno precedente e un hacking day il giorno successivo. Speriamo di vedere presto aperto il call for paper!

Tags: sflive

Utilizzare le Estensioni di Doctrine in progetti symfony2

Posted on 24/11/2011, 10:30, by Francesco Tassi and received 2 Comments ».

Doctrine prevede un set di eventi che permettono di modificarne ed estenderne il comportamento. Tramite l’utilizzo di questi eventi è possibile implementare nuove funzionalità non previste dall’ ORM. Sfruttando questa potenzialità è stato creato un set di estensioni per mettere a disposizione degli sviluppatori alcuni comportamenti di uso comune. L’integrazione all’interno di symfony2 è facilitata dal bundle StofDoctrineExtensionsBundle.

Continue reading this post »

Tags: bundle, doctrine, symfony2

Abilitare estensioni aggiuntive per Twig

Posted on 14/11/2011, 23:35, by Francesco Tassi and received No Comments ».

Twig è il template engine integrato in Symfony2. Nella Standard Edition oltre al core di Twig è presente anche il repository delle estensioni. Le funzionalità di queste estensioni non sono disponibili automaticamente, è richiesto all’utente di attivarle manualmente, vediamo come. Continue reading this post »

Tags: symfony2, twig

Un piccolo problema con Symfony2 e PHPUnit 3.6

Posted on 08/11/2011, 10:48, by Massimiliano Arione and received No Comments ».

Se usate Symfony2 (al momento fino alla versione 2.0.5) e aggiornate PHPUnit alla recente versione 3.6, probabilmente avrete delle eccezioni in test che fino a un attimo prima erano verdi.
Il bug è noto e spiegato in dettaglio sul repo di PHPUnit, in cui si trova anche un semplice, ma efficace, rimedio, in attesa che si mettano d’accordo su chi deve fixare cosa spacer

Tags: PHPUnit, symfony2
« Older Entries
Related searches:
symfony bundle received posted giorno
gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.