arquitectura hexagonal

Recursos de programación de arquitectura hexagonal
After publishing Honey Badger Team visual history, @artolamola asked me on twitter if I used "continuous delivery" as the driving force for the transformation and why. The short answer is Yes, and in this blog post will try to explain the motivations behind.For me, agile requires two things (see the-two-pillars-of-agile-software):A healthy knowledge culture focused on people (collaboration, learning, respect, team work, creativity...) Looking for quality and technical excellence (for e...
@thmuch Those who have survived the DTO hell of former J2EE versions, where we had to copy data between all the layers of our enterprise applications, appreciate the ease that Spring and Java EE have brought us more than one decade ago. But if we look closely at our current architectures and design styles like Hexagonal Architecture and DDD, we're in need again for adapters and transfer objects, for example in the anticorruption layer of a DDD bounded context. In other words: We still need to map data between different entity structures. Often, BeanUtils or Dozer are used to map data between entities, DTOs and similar structures. But those mappings can be slow and are error-prone due to missing type safety... Say hello to MapStruct, the fast and type-safe bean mapper, which - as an annotation processor - generates mapping code at compile time and goes without reflection! https://www.autentia.com
From the tech-related talks I've heard/seen lately, these are the most interesting:Must see for anyone interested in our profession and in real sustainable pace:Rafael Lopez Diez at The Lead Developer New York 2017 #NoEstimates  Allen HolubAgile Metrics - Velocity is not the goal Doc NortonOther interesting tech-related talks:lean customer development with Cindy Alvarez Ep: 512. hanselminutes podcastImmutability Changes Everything Pat Helland, "Accountants Don't Use Eras...
From the tech-related talks I've heard/seen lately, these are the most interesting:Must see for anyone interested in our profession and in real sustainable pace:Rafael Lopez Diez at The Lead Developer New York 2017 #NoEstimates  Allen HolubAgile Metrics - Velocity is not the goal Doc NortonOther interesting tech-related talks:lean customer development with Cindy Alvarez Ep: 512. hanselminutes podcastImmutability Changes Everything Pat Helland, "Accountants Don't Use Eras...
Una sesión para revisar los conceptos de la arquitectura hexagonal, desde un enfoque práctico, que exponga las dificultades que puede encontrarse cualquier desarrollador al aproximarse a este modelo. Adoración González es ingeniero informático con más de 7 años trabajando con PHP, búscala en twitter @srtaDeveloper.
Desarrollar un chat con Scala, Akka y WebSockets desde 0. ¡¿Qué puede salir mal?! Estos últimos meses hemos desarrollado un nuevo sistema de chat para la aplicación de Letgo. En esta charla os contaremos toda la experiencia vivida al respecto, tanto a nivel del proceso seguido, como de nuestro proceso de aprendizaje sobre las tecnologías usadas y los errores que hemos cometido. Por lo tanto no es una charla puramente técnica (hay material mucho mejor para aprender Akka y Scala) pero sí que haremos una breve introducción al paradigma de actores. Viniendo de desarrollar webs en PHP, muy concienciados por temas como SOLID, Arquitectura Hexagonal, DDD, y CQRS; nos encontramos con un paradigma donde nos ha costado encajar según qué planteamientos. Con lo cuál, os contaremos justamente eso: * Estrategia seguida para salir del monolito e ir al microservicio rico * Evolución del proyecto a lo largo de estos meses * Por qué decidimos apostar por el stack tecnológico escogido a pesar del cambio que implica * Paradigma de actores de Akka en el chat de Letgo. * Cómo hemos intentado llevar el CQRS a un protocolo de comunicación por WebSockets * Cómo hemos usado Akka Streams para el proceso de migración inicial de datos * Qué cosas nos han sorprendido del cambio de ecosistema (tanto para bien como para mal) * Cómo hemos conseguido mantener retrocompatibilidad con las versiones anteriores de la app que apuntan al sistema de chat anterior * … Esta charla proveerá de una visión más amplia de lo que se expuso en la Software Craftsmanship de Pamplona ( http://www.slideshare.net/JavierCane/leaving-the-monolith-thanks-to-eventsourcing-scpna-63267815 ). Donde nos centramos únicamente en analizar cómo conseguimos mantener la retrocompatibilidad entre los dos sistemas de chat gracias a eventos de dominio, SNS, y SQS. La charla la daríamos a medias entre los dos, @SergiGP y @JavierCane :)
Parece que en los últimos tiempos se oye mucho hablar sobre Clean Architecture. Desde algo más quizás de Hexagonal Architecture, Onion Architecture… al final comparten muchas ideas: centrarse en el dominio del problema, separación de responsabilidades en diferentes capas, independencia de sistemas externos y frameworks, fácil testeabilidad… Pues bien, en este dojo trabajaremos sobre un ejemplo de proyecto greenfield, a modo de PreparedKata, en el que mostraremos la aproximación a Clean Architecture que estamos implementando en este momento con los Coding Stones. Utilizaremos ruby como lenguaje de programación, rspec será nuestra herramienta de testing. No usaremos ningún framework, así que cualquier podrá seguir el dojo sin problemas.
Dentro de la CAS2016 en Vitoria, presente El arte del patadon pa'lante / posponer decisiones. Esta presentación viene de algunas ideas sobre agilidad que llevo llevando a la práctica en los últimos 5 años, tanto en Alea Soluciones como el último año en TheMotion.Dejo en este post, la presentación, las referencias y el feedback que me han dado al respecto...Video Muchisimas gracias a Autentia por el Video (AutentiaMedia youtube channel)Presentación (versión original con Notas)El Arte del Pat...
Mostraremos cómo hemos trabajado en un proyecto Ruby basándonos en Arquitectura Hexagonal/Clean: Patrones varios, inyección de dependencias, TDD, Crafted Design, unas gotas de DDD... Y por supuesto mostraremos código y las herramientas/gemas utilizadas en el camino: Sinatra/Grape, Sequel, APIs de terceros, Rspec... Todos los videos de Codemotion 2016; https://www.youtube.com/playlist?list=PLKxa4AIfm4pUvMn4lZ8zin500bsp3oL2A Suscríbete a nuestra newsletter; bit.ly/newsletterautentia Facebook; https://www.facebook.com/Autentia-127966880558674/ Twitter; https://twitter.com/autentia
¿Te has preguntado alguna vez cómo estos conceptos de CQRS/ES se pueden aplicar en un proyecto PHP/Symfony? Para ello, echaremos un vistazo al código de nuestro último proyecto: un sistema de gestión de almacén. La charla mostrará cómo entendemos el DDD y cómo lo aplicamos en Ulabox, cómo cambia la arquitectura y el código de la aplicación cuando aplicamos CQRS y cómo tratar con Event Sourcing, cuando no hay entidades persistidas, solo eventos que generan proyecciones que se usan en el modelo de lectura. Es un proyecto con arquitecturas nuevas (CQRS-ES), con la mentalidad DDD-Arquitectura hexagonal, pero con una base muy importante de Symfony.