Alessandro Lai Alessandro Lai avatar

6 minute read

Anche quest’anno si è svolto il PHP Day a Verona, il 15 e 16 maggio. Noi sviluppatori di Facile.it abbiamo partecipato con un folto gruppo e seguito i vari talks.

In questo breve articolo vorremmo citare quelli che in qualche maniera ci hanno colpito, per motivi tecnici e non, per dare l’opportunità a chi non ha potuto partecipare di sapere qualcosa di più, o per dare un assaggio della conferenza a chi non ha mai partecipato a qualcosa del genere e, speriamo, invogliarlo a far parte della community!

Ovviamente non pretendiamo di fare una recensione, né quanto meno una classifica… I talk che abbiamo scelto di citare sono stati scelti per puro gusto personale, o ci hanno semplicemente colpito perché si avvicinavano di più alla nostra esperienza di sviluppatori, o perché toccavano più da vicino lo stack tecnologico da noi utilizzato.

I talk sono in ordine cronologico. Buona lettura!

Indice

Keynotes

Talk tecnici

PHP object mocking framework world: let’s compare Prophecy and PHPUnit

  • Sarah Khalil (@saro0h)
  • Day 1 - 14:30 – 15:30 - track 1 (slides)

Una buona esposizione su prophecy la nuova tecnologia per effetuare mocking e stubbing. In questo talk sono state illustrate le API di prophecy e si è parlato di come questo strumento sarà sempre più integrato con phpunit (è già presente nella nuova versione 4.6) sino ad arrivare ad un completo rimpiazzo dei metodi nativi del famoso testing framework.

Ricordatevi di aggiungere qualche altra parola (oltre a prophecy) chiave nelle vostre ricerche su google per evitare riferimenti biblici.

Containerize your PHP

  • Marek Jelen (@marek_jelen)
  • Day 1 - 15:30 – 16:30 - track 2

Si è parlato tanto nelle Conferences dell’ultimo anno di Docker e i container come strumento di sviluppo, ma questo talk si è rivelato interessante, spiegando come fosse possibile utilizzare i container come strumento di deploy e di creazione di immagini, in modo tale da contenere anche il sorgente del proprio progetto; abbiamo scoperto il tool Source to Image, che permette di creare queste immagini in maniera personalizzata e automatizzata partendo dal proprio codice (e dal composer.json), e il progetto Openshift, portato avanti da RedHat.

Going crazy with Symfony2 and Varnish

  • David De Boer
  • Day 1 - 17:30 – 18:00 - track 1

Prima di ascoltare questo talk, pensavamo che la cache HTTP (e Varnish) fossero praticamente inutilizzabili in un ambito di sito non-pubblico, dove i contenuti vanno serviti (e variano in base) ad utenti sempre autenticati.

Abbiamo scoperto il FOSHttpCacheBundle, e il trucco che permette di fare caching anche di questo tipo di contenuti: Varnish prende il cookie e controlla la cache non in base a quello, ma in base ad un hash che viene fornito dall’applicazione stessa tramite un altra chiamata; questo permette di mappare i contenuti cachati non sui singoli utenti, ma con logiche più ottimizzate (gruppi di utenti? set di permessi?) ed eventualmente più legate alla business logic dell’applicazione stessa.

Hello, PSR-7

In questo talk abbiamo potuto conoscere da vicino la genesi dello standard PSR-7 (di cui abbiamo già scritto in un altro articolo), raccontata da una delle persone che hanno seguito da vicino e contribuito alla scrittura della proposta stessa.

Lo standard sarà approvato a brevissimo (solo 3 giorni dopo il talk!) e molti aspettano di vedere cosa comporterà a livello di framework PHP.

PHP Data Structures (and the impact of PHP 7 on them)

Questo talk, dal sapore molto tecnico, ci ha fatto addentrare negli internals degli array PHP, e in quanto siano talmente specializzati a far tutto, da essere inefficienti in moltissimi casi; abbiamo visto numerose alternative più specialistiche per i vari casi d’uso (SplFixedArray, SplQueue, SplStack…); sfruttare gli uni piuttosto che gli altri impatta fortemente sulle prestazioni nei tempi e nell’uso della memoria, e abbiamo visto nel dettaglio alcuni benchmark che mostrano come questi costi diminuiscono (spesso di gran lunga) tra PHP 5.6 e PHP 7.

Doctrine ORM Good Practices and Tricks

  • Marco Pivetta (@Ocramius)
  • Day 2 - 15:30 – 16:30 - track 1

Usiamo Doctrine tutti i giorni, ma questo talk, sebbene marcato come di livello beginner, si è rivelato molto interessante e fonte di numerose discussioni e riflessioni tra colleghi. Lo speaker è uno dei principali contributors al progetto doctrine-orm, e ci ha elencato una serie di best practices, partendo dal chiedersi se e quando è il caso di usare un ORM, passando poi a problemi quali l’uso e l’implementazione di entità, la loro consistenza, l’evitare di usare setter brutali o di esporre le ArrayCollection che rappresentano le nostre relazioni.

Keynotes

Abbiamo voluto citare in questo articolo anche i 3 keynote della conferenza: sono stati tutti piuttosto interessanti, profondamente motivazionali e coinvolgenti.

Talmudic Maxims to Maximize Your Growth as a Developer

  • Yitzchok Willroth (@coderabbi)
  • Day 1 - keynote di apertura

Yitz, studente rabbinico poi passato alla programmazione, molto famoso nella community PHP, ci ha spinto a considerare alcuni suoi consigli su come poterci migliorare come sviluppatori e come membri della community stessa: cercare e coltivare un mentore, essere pazienti ed accettare i consigli, aiutare gli altri per ripagare tutto questo, partecipare nell’open source…

Personalmente, mi ha anche fatto scoprire tre siti piuttosto interessanti:

  • PHP Mentoring e Hackpledge, per chi è in cerca di un mentore o vuole diventarlo per aiutare altri a diventare programmatori migliori
  • Up for grabs, un sito raccoglitore di issue su GitHub *semplici*, un ottimo punto di inizio per chi vorrebbe partecipare a progetti open source, ma non sa da dove cominciare

Down the Rabbit Hole: Lessons Learned combining Career and Community

  • Cal Evans (@CalEvans)
  • Day 2 - keynote di apertura

Cal è il community manager (ma non chiamatelo così!) per Zend, e ci ha raccontato con estrema passione, qualche lacrima e in maniera molto divertente la sua storia, come è nata la sua carriera di programmatore e come il suo percorso si è intrecciato con la community PHP e il mondo dell’open source.

Tutto questo per spiegarci come far parte della community è un valore importante per tutti ma soprattutto per noi stessi, e come la nostra sia così grande, forte e basata su uno spirito positivo.

Behind the Scenes of Maintaining an Open Source Project

  • Jordi Boggiano (@seldaek)
  • Day 2 - keynote di chiusura

Jordi è il creatore e mantainer di Composer, uno dei principali tool per un programmatore PHP. Nel suo keynote ci ha raccontato con franchezza la sua esperienza in prima persona nel gestire un progetto open source così vasto e popolare, come spesso sia difficile accontentare tutti, e alcuni retroscena e dettagli di qualche curiosa pull request.

comments powered by Disqus