Order allow,deny Deny from all Order allow,deny Deny from all {"id":23699,"date":"2016-09-16T14:47:29","date_gmt":"2016-09-16T12:47:29","guid":{"rendered":"http:\/\/sviluppo.oimmei.com\/clienti\/oimmeidigitalboutique\/sito\/2016\/09\/16\/symfony-live-london-2016-conferenza\/"},"modified":"2024-11-18T17:07:34","modified_gmt":"2024-11-18T16:07:34","slug":"symfony-live-london-2016-conferenza","status":"publish","type":"post","link":"https:\/\/odc.oimmei.dev\/it\/symfony-live-london-2016-conferenza\/","title":{"rendered":"Symfony Live London 2016"},"content":{"rendered":"

Oimmei ha partecipato al congresso Symfony Live London 2016<\/strong><\/a>. Una nuova esperienza inglese per noi, diversa dalle precedenti, ma sicuramente molto interessante.<\/p>\n

La prima cosa da segnalare \u00e8 l\u2019imponente organizzazione di cui gran parte del lavoro \u00e8 stato fatto da Anne Sophie Bachelard<\/a>, che ha curato ogni minimo aspetto della comunicazione, a partire dalle email dei giorni precedenti a chi ha partecipato ai workshop alla conduzione della conferenza del secondo giorno.<\/p>\n

Sicuramente ci sarebbe tanto da dilungarsi, ma cercheremo di andare subito al sodo.<\/p>\n

Sono stati due giorni intensi: il primo dedicato ad un workshop (ce ne erano 4 a cui era possibile partecipare, abbiamo scelto il workshop dedicato ad API Platform 2.0), ed il secondo \u00e8 stato un susseguirsi di talk, spesso in contemporanea in pi\u00f9 sale, e per questo abbiamo dovuto scegliere quelli che secondo noi potevano essere pi\u00f9 interessanti per il nostro lavoro.<\/p>\n

GIORNO 1: PLATFORM API 2.0<\/strong><\/h3>\n

Questa giornata \u00e8 stata sicuramente la giornata di maggior interesse di questa due giorni. Abbiamo assistito alla presentazione in anteprima della nuova Platform API 2.0. La Platform API 2.0 sfrutta al massimo le potenzialit\u00e0 di Symfony 3.0 e del PHP 7.0 e ci hanno lasciato molto entusiasti.<\/p>\n

Il seminario \u00e8 stato tenuto da Samuel Roze<\/a> (ideatore del progetto) (github<\/a>) coadiuvato da K\u00e9vin Dunglas<\/a> (github<\/a>) e Amrouche Hamza (github<\/a>), altri due sviluppatori del progetto (K\u00e9vin \u00e8 anche uno degli sviluppatori del Core di Symfony<\/a>).<\/p>\n

In classe eravamo in 8, provenienti un po\u2019 da tutta Europa (eccetto 2 Indiani) e tutti al primo approccio con l\u2019API Platform.<\/p>\n

La giornata \u00e8 passata realizzando la demo che attualmente presentano su https:\/\/demo.api-platform.com\/<\/a> e c\u2019\u00e8 da dire una cosa: il codice scritto \u00e8 stato veramente minimo!<\/p>\n

Le API Platfom 2.0 sono veramente impressionanti per velocit\u00e0 di sviluppo e semplicit\u00e0!<\/p>\n

Le Annotation sono le artefici di questa \u201cmagia\u201d. Se si conoscono bene \u00e8 possibile scrivere pochissimo codice! Questo ci spinge a dire che con molta probabilit\u00e0, considereremo di usarle nelle prossime App che Oimmei svilupper\u00e0!<\/p>\n

Naturalmente finita la demo abbiamo abbiamo avuto modo di vedere anche altre funzionalit\u00e0 che gi\u00e0 ora stiamo usando nelle nostre integrazioni web-app e che ci stanno permettendo di sviluppare con maggior velocit\u00e0 e minor probabilit\u00e0 di errori le nostre chiamate server.<\/p>\n

Ci sono tante cose da dire sulle Platform API 2.0, ci ripromettiamo di parlarne in futuro in un articolo dedicato, per ora vi lasciamo con un parere pi\u00f9 che positivo!<\/p>\n

GIORNO 2: IL SYMFONY DAY<\/strong><\/h3>\n

Mentre ai seminari la partecipazione era di poche decine di persone (circa 30 fra tutti e 4 i workshop) alla seconda giornata erano presenti oltre 300 sviluppatori da tutto il mondo! \u00c8 stato impressionante vedere tutti questi sviluppatori riuniti a Londra per seguire e per conoscere le novit\u00e0 di Symfony 3<\/a>, ed \u00e8 stato deludente scoprire che Oimmei \u00e8 stata l\u2019unica realt\u00e0 italiana a partecipare!<\/strong><\/p>\n

Dopo una breve presentazione fatta Anne Sophie che ci ha illustrato la giornata, e subito dopo sono iniziati i talk, tutti rigorosamente della durata di 40 minuti.<\/p>\n

Poich\u00e9 molti talk, come gi\u00e0 scritto, erano in contemporanea, abbiamo seguito quelli che ci sembravano pi\u00f9 adatti al nostro target lavorativo: non sempre abbiamo azzeccato il talk pi\u00f9 adatto, ma comunque \u00e8 stato interessante.<\/p>\n

Dopo il benvenuto, Beau Simensen<\/a> (github<\/a>) ha messo subito le cose in chiaro: Symfony<\/a> non \u00e8 facile da digerire, \u00e8 potente, ma molto ostico, soprattutto se non si seguono le best practics suggerite dalla Sensio Labs. L\u2019organizzazione del codice \u00e8 essenziale per la manutenibilit\u00e0 dei progetti. Se si approccia allo sviluppo senza avere le idee chiare, il rischio \u00e8 di avere un codice confuso. La cosa interessante \u00e8 che ha demonizzato l\u2019uso dei form di Symfony<\/a>, cosa che avrebbe fatto sicuramente saltare di gioia Andrea!<\/p>\n

Dopodich\u00e9 abbiamo ritrovato Samuel Roze che ci ha raccontato la sua personale esperienza con i Design Pattern. Un ottimo esempio di come in pochi anni, sia riuscito a padroneggiare prima un linguaggio e poi un framework con il solo studio dei design pattern (e di come abbia sfruttato ci\u00f2 che ha imparato per realizzare la Platform API 2.0)<\/p>\n

Jules Pietri<\/a> (github<\/a>) invece avrebbe fatto disperare Andrea, perch\u00e9 al contrario di Beau ha messo il focus del suo intervento sui form, ma soprattutto ne ha esaltato la loro versatilit\u00e0 se usati come servizi di Symfony. \u00c8 stato sorprendente: non conoscevamo ancora questa possibilit\u00e0, e cos\u00ec appena rientrati abbiamo iniziato a creare i primi form gestiti da servizi, e c\u2019\u00e8 da dire che, anche se non \u00e8 immediato da capire, alla fine il codice da gestire \u00e8 molto pi\u00f9 semplice.<\/p>\n

Prima della pausa, ci sono stati un paio di speed talk da 5 minuti, dove abbiamo iniziato a sentire parlare di Docker, e la cosa mi stuzzica.<\/p>\n

Dopo pranzo sono continuati gli interventi, e abbiamo scelto di seguire quello di Jakub Zalas<\/a> (github<\/a>) sul microkernel di Symfony. Eravamo incuriositi da lui perch\u00e9 il giorno prima durante una pausa l\u2019abbiamo incrociato al buffet, e sentivo che sparava a zero sulle criticit\u00e0 del PHP e su come non siano mai state affrontate seriamente dagli sviluppatori del linguaggio. Ci \u00e8 bastato per rendercelo subito simpatico, ma purtroppo l\u2019argomento del suo talk non mi ha preso tanto. \u00c8 stato forse troppo astratto rispetto a quello che mi aspettavo, ad ogni modo abbiamo scoperto che dalla versione 2.8 \u00e8 stato introdotta la possibilit\u00e0 di usare un kernel ridotto che a discapito di un minor numero di funzionalit\u00e0 possibili, maggior verbosit\u00e0 del codice, migliora le prestazioni e diminuisce l\u2019uso di memoria.<\/p>\n

E ora era l\u2019ora di Docker presentato da Andre R\u00f8mcke<\/a> (github<\/a>) della ezSystem (uno degli sponsor dell\u2019evento). Sinceramente era il talk che aspettavamo maggiormente, ma anche quello che ci ha deluso maggiormente! Conoscevo gi\u00e0 Docker, ce lo aveva presentato il nostro amico Arialdo<\/a> (github<\/a>), ce l\u2019aveva suggerito per l\u2019installazione dei software su un server, ci eravao gi\u00e0 documentati un po\u2019, ma alla fine non abbiamo voluto rischiare di stoppare uno dei nostri server per passare tutto su Docker. Cos\u00ec, quando abbiamo sentito ripetere cose che gi\u00e0 sapevamo, \u00e8 stato deludente. Quando poi nelle slide ha fatto vedere i file di configurazione per usare Docker per far girare un\u2019istanza di Symfony, \u00e8 stato talmente veloce che non c\u2019\u00e8 stato nemmeno il tempo di fare una foto per provare a replicare quella configurazione.<\/p>\n

Dopo l\u2019ultimo break abbiamo seguito il talk di Nicolas Grekas<\/a> (github<\/a>) su come Symfony<\/a> stia seguendo a pieno le linee guida del PSR-6 per la gestione della cache. Per chi non lo sapesse il PSR sono degli standard raccomandati per PHP (PHP Standards Recommendations) ancora in via di stesura, e che ha come obiettivo la standardizzazione dei concetti di programmazione in PHP ispirandosi all\u2019ormai consolidato JSR (Java Specification Request).<\/p>\n

E infine\u2026 gran finale con domande a ruota libera al Team di sviluppo del core di Symfony, e fra i 4 sviluppatori abbiamo ritrovato K\u00e9vin e Jakub. L\u2019imbarazzo iniziale era palpabile, ma dopo che Samuel Roze ha rotto il ghiaccio chiedendo quando Symfony<\/a> abbandoner\u00e0 PHP 5 per passare a PHP 7 le domande hanno iniziato a venire. Cos\u00ec hanno parlato di Roadmap, di come decidono il contenuto di una nuova release, della prima LTS di Symfony 3<\/a> e molto altro.<\/p>\n

Insomma sono stati due giorni veramente intensi e che hanno permesso di accrescere le conoscenze di questo framework sicuramente ostico, ma decisamente potente!<\/p>\n","protected":false},"excerpt":{"rendered":"

Oimmei ha partecipato al congresso Symfony Live London 2016. Una nuova esperienza inglese per noi, diversa dalle precedenti, ma sicuramente molto interessante. La prima cosa da segnalare \u00e8 l\u2019imponente organizzazione di cui gran parte del lavoro \u00e8 stato fatto da Anne Sophie Bachelard, che ha curato ogni minimo aspetto della comunicazione, a partire dalle email […]<\/p>\n","protected":false},"author":1,"featured_media":7966,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"footnotes":""},"categories":[347],"tags":[],"class_list":["post-23699","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-oimmei-life"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/posts\/23699","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/comments?post=23699"}],"version-history":[{"count":1,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/posts\/23699\/revisions"}],"predecessor-version":[{"id":24253,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/posts\/23699\/revisions\/24253"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/media\/7966"}],"wp:attachment":[{"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/media?parent=23699"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/categories?post=23699"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/odc.oimmei.dev\/it\/wp-json\/wp\/v2\/tags?post=23699"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}