Acilia Blog

Categorías

Resumen de Symfony Live 2011

Marcos Labad Founder & Director en Acilia

Actualidad 07-03-2011

Como el año pasado, parte del equipo de Acilia Internet nos hemos dejado caer por el evento Symfony Live Paris 2011. Han sido unos días fantásticos en los que hemos tenido la oportunidad de conocer de primera mano novedades de Symfony e intercambiar impresiones con otros symfoneros de todo el mundo.

Como sensación general, nos quedamos con que Symfony2 está aún algo lejos de su versión final estable, aunque hay programadores que ya lo están utilizando. También pensamos que se está construyendo un Framework a largo plazo, menos encapsulado que Symfony 1, y que estará bastante tiempo en liza. Dado el enfoque que se le está dando al proyecto, veremos distribuciones distintas de Symfony2 en el futuro, diseñadas para fines específicos.

La palabra performance, tanto en front, arquitectura o en las propias aplicaciones, estuvo presente en un buen número de charlas. Ha sido una de las pegas más importantes que se pusieron a Symfony 1 y es evidente que muchos esfuerzos de esta nueva versión han ido en esa dirección.

Os dejamos por aquí algunas notas de ponencias que nos llamaron la atención. Este año hubo hasta 3 zonas simultáneas donde se estuvieron impartiendo diversos temas, por lo que la cobertura total fue casi imposible.

Primer Día, Jueves 3 de Marzo.

La conferencia comenzó con una charla de Josh Holmes, titulada [The Lost Art Of Symplicity]. Muchas veces se olvida que conseguir soluciones simples es realmente lo más difícil, y a la vez lo más útil y mantenible en el futuro.

Posteriormente, Johannes Schmitt nos habló de dos de los componentes esenciales de Symfony, la capa de seguridad y Dependency Injection. Por lo que vimos en otras charlas, la capa de Seguridad puede cambiar bastante todavía.

Apostrophe de P’unk Avenue. Tom Boutell nos hizo un recorrido por este CMS a tener en cuenta, que incide de forma importante en la facilidad de uso de cara a los editores finales. [Apostrophe CMS]

Pierre Spring, presentó formas de lograr rapidez en nuestros Frontends. Muchas de sus recomendaciones son muy conocidas, pero son muy poco aplicadas, algo sorprendente teniendo en cuenta que la ejecución y descarga de componentes en el navegador puede llegar a ser el 80% del total en una página. Hizo un guiño a Assetic, un complemento ideal para esta tarea. [Speedy App, Frontend Optimization Considerations]

La siguiente charla tuvo como temática la posibilidad de utilizar Edge Side Includes para lograr distintas reglas de cache en distintas zonas de la página. Esto fue implmentado por dos personas de Sensio, Emmanuel Cohen y Marc Weistroff , para el periódico L’Express. Aunque Symfony2 hace una gran interpretación del protocolo HTTP y esto se puede lograr, los mismos ponentes admitieron que la solución es algo experimental y posiblemente sea mejor utilizar reverse proxies como Varnish o Squid para esta tarea. [Nice performance using Sf2 cache wrapping Sf1 application].

No faltó una buena carga hispana el primer día, con Álvaro Videla, que nos habló de RabbitMQ y su integracion en Symfony2 con un Bundle que él mismo ha programado. RabbitMQ nos puede ayudar enormemente a la hora de separar procesos en cola, como generación de thumbnails o hacer “hablar” tu aplicación en PHP con otras, programadas incluso en otros lenguajes.[There is a Rabbit on My Symfony]

Pablo Díez, creador de MondonGo, nos habló de Doctrator que nos permite utilizar behaviours en Doctrine2. Si los utilizabas, ya no tienes excusa para pasarte a Doctrine2, podrás seguir utilizándolos. [Doctrator].

El día finalizó con una presentación un tanto informal de Fabien Potencier, explicando de forma general Symfony2. Como anécdota humorística, estuvo unos minutos intentando arrancar su aplicación de ejemplo en Symfony2 sin lograrlo inmediatamente, con algunos de los 500 desarrolladores ayudando a resolver el misterio, que no era más que la configuraciónde Apache :) . El momento quedó inmortilizado en este Twitt.

Día 2, Viernes 4 de Marzo

Symfony2 from the trenches, donde el core team desveló el funcionamiento interno de Symfony, proporcionando además consejos y buenas prácticas de diseño de tu aplicación en Symfony2. Una vez más, descubrimos que hay cambios y debates abiertos sobre ciertas partes del Framework, como los formularios o la capa de seguridad. [Symfony2 from the Trenches]

Assetic, donde Kris Wallsmith volvió a incidir en la importacia de optimizar el frontend de nuestras aplicaciones. Un front mal optimizado puede echar por tierra una buena aplicación. Assetic nos provee de herramientas para comprimir, unir y optimizar nuestros CSS y JS. Como nota interesante, Kris se centrará en optimización de imágenes en futuras evoluciones de la herramienta. [Assetic, Asset Management for PHP 5.3]

HTTP Cache. Fabien nos llamó al orden y a que nos leamos la especificación del protocolo HTTP. Si somos Web Developers, es fundamental. Se centró en la parte de cache. Un buen manejo del protocolo HTTP puede hacer que tu aplicación no sea llamada o sea llamada sólo en los casos en los que sea necesario, y por lo tanto ahorrar ancho de banda y mejorar increíblemente el rendimiento. Una vez más con referencias importantes a los Edge Side Includes.

Varnish, parece la opción preferida o postulada para hacer cache a través de proxy. Según sus creadores, es el único proxy reverso creado para tal fin. Se habló y se recomendó también desde otras ponecias. Al parecer, es más rápido que Squid y otras soluciones.

Ryan Weaver nos enseñó lo extremadamente sencillo y potente que resulta utilizar Twig como lenguaje de plantillas PHP. El peligro radica en que además, es realmente rápido. [Being Dangerous With Twig]

Jonathan Wage nos llevó por ejemplos prácticos de Doctrine utilizados en Open Sky, la empresa donde trabaja actualmente, en una aplicación de comercio electrónico. En esta aplicación se utiliza tanto la parte ORM con Mysql como la parte ODM con Mongo. [Doctrine in the real world].

Hay muchas herramientas que pueden acompañar nuestras aplicaciones en Symfony, dedicadas a tareas específicas como búsqueda (Solr, Lucene, Xapian…), Cache (Memcached,, Xcache, APC…), Colas (RabbitMQ, ActiveMQ…), Monitoring (Cacti ,Nagios, Ganglia), Integración Continua (CruiseControl, Jenkins CI) entre otras funciones. Stefan Koopmanschap nos ofreció su visión en la ponencia [Don't use a srew when you really need a nail]

Y como cierre a las jornadas, Fabien Potencier nos desveló algunos detalles interesantes de Symfony2. Tendrá un instalador y se crearán distintas distribuciones orientadas a aplicaciones específicas (e-commerce, CMS…). Además, se estrena web de Symfony en un nuevo dominio, Symfony.com.

El Sábado se celebró un Hack Day en el que tuvimos ocasión de jugar con distintos elementos entre bastidores, como el proyecto del Content Management Framework en Symfony2 o Vespolina (aplicación de e-commerce en Symfony2). Nosotros nos centramos en hackear con MondonGo y Varnish.

La sensación general nes que el proyecto está más sólido que nunca y se están sentando las bases para un gran proyecto a largo plazo.

La experiencia es más que recomendable y animamos a todos los symfoneros a acudir a próximos eventos.

entrada-universidad.jpg

Contáctanos

Cuéntanos tu idea, comparte tu proyecto con nosotros o ven a formar parte de nuestro equipo.

Escribe tu nombre y apellidos.
Escribe tu e-mail. El e-mail no tiene un formato válido.
Es necesario aceptar los términos y condiciones.

Gracias por ponerte en contacto con nosotros.


card image

Renovamos la web de Acilia

Marcos Labad Founder & Director en Acilia Rosa Suárez Project Manager

Actualidad 16-06-2020

Renovamos la web de Acilia Leer más
card image

Otorgamos dos becas para bootcamp de programación en Upgrade Hub

Marcos Labad Founder & Director en Acilia

Actualidad 12-09-2018

Otorgamos dos becas para bootcamp de programación en Upgrade Hub Leer más

¿Hablamos?

Cuéntanos tu idea, comparte tu proyecto con nosotros o ven a formar parte de nuestro equipo.