symfony

Recursos de programación de symfony
En esta charla veremos cómo Behat nos puede ayudar a definir el comportamiento de nuestra aplicación web con sencillos ejemplos prácticos, poniendo especial énfasis en el uso de buenas prácticas. Moisés Carretero: desarrollador web enganchado a Symfony desde hace ocho años. Apasionado de las bases de datos y el desarrollo ágil. Búscalo en twitter como @mocal81 Meetup: https://www.meetup.com/PHPMad/events/226230644/ Twitter: https://twitter.com/phpmad Nos vemos en PHPMad...
Sylius es un framework de calidad diseñado para construir plataformas de comercio electrónico sobre Symfony. Hablaremos de aspectos y utilidades interesantes que nos ofrece esta herramienta para construir soluciones de e-commerce e incluso de otro tipo. También tocaremos temas transversales como BDD que se usan a la hora de trabajar con la misma.
Tener un buen dominio de la serialización es algo fundamental para construir APIs limpias. Tanto el componente Serializer de Symfony como el JMSSerializerBundle son dos herramientas muy potentes que nos facilitan la tarea de crear diferentes representaciones de nuestros modelos y crear o actualizar esos objetos a partir de sus representaciones. En esta charla explicaremos cómo funcionan y cómo se utilizan tanto el componente como el bundle, veremos casos de uso interesantes y analizaremos qué fortalezas tiene cada uno de ellos y en qué ocasiones o para qué tareas concretas puede resultar más cómodo uno u otro. Todo ello enfocado desde un punto de vista práctico, con ejemplos que ayuden a ilustrar los distintos usos y situaciones.
Symfony Flex es la nueva forma de desarrollar y hacer crecer las aplicaciones Symfony. Disponible a partir de Symfony 3.3, su verdadero potencial no estará disponible hasta el lanzamiento de Symfony 4 en noviembre de 2017. En esta charla veremos cómo funciona Symfony Flex en detalle, qué novedades nos traerá Symfony 4 y cómo adaptar nuestras aplicaciones existentes al futuro que nos prepara Symfony.
Los entornos concurrentes y distribuidos son una constante cuando queremos escalar un proyecto. Nos ayudan a la hora de construir sistemas capaces de procesar millones de peticiones, pero también dificultan nuestra manera de programar. Generan una incertidumbre en nuestras ejecuciones que debemos controlar, porque de nada vale un sistema con un gran rendimiento si no es fiable. Los locks son una de las herramientas principales a la hora de sincronizar y ordenar distintas ejecuciones que deben acceder a un mismo recurso. En Symfony 3.4 se incluye un lock de serie en forma de componente. Éste nos servirá para ilustrar los problemas de los entornos concurrentes y las buenas prácticas que podemos adoptar a la hora de enfrentarnos a ellos.
La tendencia actual es migrar todos los proyectos a microservicios, por las grandes ventajas que esto ofrece. Pero cuando tu compañía tiene mucho código legado, y sobretodo cuando este esta en un monolito, dicha migración puede ser un camino doloroso (lo digo por experiencia propia). Es por ello que la charla está orientada hacia cómo se puede aprovechar la creación de bundles propios, para poder migrar poco a poco el código que iría en los microservicios, a dichos bundles, como proceso intermedio. La facilidad de crear bundles en Symfony y poderlos integrar tanto en proyectos Symfony como en proyectos en otros frameworks gracias al inyector de dependencias del propio Symfony. Y cómo hace crecer dichos bundles para que acaben convirtiéndose en microservicios reales, pero de forma paulatina y poco dolorosa, aportando a negocio en el menor tiempo posible
La propuesta es basada en una necesidad que tuvimos en Acilia. Debíamos traducir ciertas propiedades de entidades a varios idiomas (títulos, descripciones, etc). Esto lo solucionamos desarrollando una Factory de formularios que crea, para cada entidad traducible, su formulario base y una colección de formularios "i18n" basados en el formulario base. Este desarrollo es interesante, dado que debimos trastear bastante y hurgar en el core de formularios de Symfony para generar una solución fácil de reutilizar, que permitiera manipular las traducciones y agregar nuevas tocando muy poco código. La propuesta es contar el cómo llegamos a este desarrollo, los problemas que encontramos y las soluciones que les dimos y por qué elegimos esta solución frente a otras ya existentes.
Se hablará de cómo en PCComponentes, se pasó de unas pocas personas realizaban subidas a producción, hasta el despliegue de varias aplicaciones complejas desarrolladas en symfony por varios equipos. Describiremos en detalle la arquitectura, cómo configuramos el framework para el desarrollo, las pruebas y la monitorizacion hasta llegar a producción. Contaremos los problemas de configuración de Symfony que tuvimos y las soluciones que aplicamos en este proceso. Hablaremos de Monolog para la gestión de errores y como detectarlos.
OpenSky es uno de los primeros grandes usuarios de Symfony desde su lanzamiento. Hoy en día cuenta con varios millones de usuarios activos. Compartiremos como OpenSky utiliza Symfony, Doctrine con MySQL y MongoDB y otros componentes. También ofreceremos algunos tips de la infraestructura y la organización que posibilitan un crecimiento gradual, continuo y ágil.
Hace 6 meses nos planteamos un rediseño completo de nuestros sites. Anteriormente teníamos el típico site con Symfony + jQuery + CSS a pelo. En su momento decidimos dejar de lado jQuery y apostar por algún framework de JavaScript moderno. Seis meses después es el momento de compartir las lecciones aprendidas en este camino. La idea de esta charla es exponer en forma de decálogo los trucos que hemos aprendido sobre Server Side Rendering, SEO, Routing, Progressive Web Applications, Webpack, Code Splitting, Testing. Todo de manera rápida y clara.