solid

Recursos de programación de solid
En este primer episodio hablamos del framework SCRUM. Este ayuda a los equipos de desarrollo a llevar a cabo los proyectos de una forma ágil. La idea del framework es permitir llegar cuanto antes a una versión entregable para que el cliente nos de feedback. Esto permitirá llegar al producto que el cliente realmente necesita y no a aquel que se pensaba que quería.  Durante el episodio hablamos del proceso, los roles, y eventos que existen en SCRUM y cómo se combinan.Aquí podéis encontrar las dos entidades más famosas influyentes de SCRUM:http://www.scrumalliance.org/http://www.scrum.orgLa guía en la que nos hemos basado para contaros los aspectos básicos de SCRUM la podéis encontrar en: http://www.scrumguides.org/index.htmlEste episodio ha estado grabado una segunda vez, afinando mejor para mostrar las finalidades y los puntos fuertes de SCRUM. La primera versión pasaba por alto un poco estos aspectos. Si queréis escuchar el episodio 1 original podéis bajarlo en formato mp3: Episodio 1 originalAl final del episodio original finalmente decidimos que el nombre para este podcast sería "Programar es una mierda", que aunque no refleja nuestra opinión, si que es una cosa que piensa cualquier desarrollador/a de software en algún momento de su día a día. Lo mejor, tomárselo con humor.El programa de videoconferencia que usamos para grabar la sesión y que nombramos en el episodio es https://www.loowid.comArrancamos así una serie de episodios que tocaran diferentes temáticas del mundo del desarrollo del software. Esperemos que sean de vuestro agrado.Tod@s l@s que tengáis comentarios o sugerencias para el podcast podéis enviarnos un correo a programaresunamierda@gmail.com o dejarnos un comentario en Twitter: @progesunam .No olvidéis de suscribiros a nuestro podcast en ivoox o itunes, o si lo preferís agregad el RSS a vuestra app de podcast preferida. En cualquier caso siempre agradeceremos reviews del podcast en cualquiera de las plataformas.También podéis uniros a nuestro canal de Slack.La música elegida para la entrada y salida del podcast son del grupo "Dilo". En concreto las canciones son "War Inside" y "Sick of reality"
Event Sourcing and CQRS are the new buzz words for a while now. Driven by the modernization needs of old monolithic applications, the industry's march towards more modular applications through microservices seems unstoppable. But you don't have to use latest buzzy microservices frameworks to build rock solid and modular applications. You can also use proven technology like Akka. This talk gives an overview about event sourcing and how to achieve this with Akka and Java 8. You'll learn how CQRS fits into the puzzle and what other technologies are there to help you build state of the art applications.
Presentación preparada entre Luis Artola y yo mismo para la para la Pamplona Software Craftmanship 2017Videovideo scpna2017-el-arte-del-patadon-palante-libro-de-recetas Muchisimas gracias a Autentia por el Video (AutentiaMedia youtube channel) (Post de Autentia con todas las charlas Pamplona-software-craftsmanship-2017)Slidesscpna2017-el-arte-del-patadon-palante-libro-de-recetas SCPNA2017 El arte del patadon pa'lante / libro de recetas de Eduardo Ferro Aldama Referencias:CAS201...
Presentación preparada entre Luis Artola y yo mismo para la para la Pamplona Software Craftmanship 2017Videovideo scpna2017-el-arte-del-patadon-palante-libro-de-recetas Muchisimas gracias a Autentia por el Video (AutentiaMedia youtube channel) (Post de Autentia con todas las charlas Pamplona-software-craftsmanship-2017)Slidesscpna2017-el-arte-del-patadon-palante-libro-de-recetas SCPNA2017 El arte del patadon pa'lante / libro de recetas de Eduardo Ferro Aldama Referencias:CAS201...
Team of Teams: The Power of Small Groups in a Fragmented World General Stanley McChrystal, Tantum Collins, David Silverman, Chris Fussell A great book on how to generate a flexible and agile organization prepared to win in a complex world. The authors explain how they created a culture and an organization composed of a network of autonomous teams that at the same time have a shared purpose and a common context.The most impressive thing about this book is that they described a real...
Team of Teams: The Power of Small Groups in a Fragmented World General Stanley McChrystal, Tantum Collins, David Silverman, Chris Fussell A great book on how to generate a flexible and agile organization prepared to win in a complex world. The authors explain how they created a culture and an organization composed of a network of autonomous teams that at the same time have a shared purpose and a common context.The most impressive thing about this book is that they described a real...
Entrevistamos a Alvaro Fidalgo en T3chfest 2017 y le preguntamos acerca de los consejos de su charla de buenas prácticas, como: aplicar Solid, que todo el mundo revise el código que se sube, no se repita el código. El código Legacy hay que refactorizarlo para que sea un código legible. Todos los videos de T3chfest 2017; https://www.youtube.com/playlist?list=PLKxa4AIfm4pUirRheABHJJQ5BZJCBL8sd Suscríbete a nuestra newsletter; bit.ly/newsletterautentia Facebook; https://www.facebook.com/Autentia-127966880558674/ Twitter; https://twitter.com/autentia
This post appeared originally on Codesai’s Blog. Lately at Codesai we’ve been studying and applying the concept of connascence in our code and even have done an introductory talk about it. We’d like this post to be the first of a series of posts about connascence. 1. Origin.The concept of connascence is not new at all. Meilir Page-Jones introduced it in 1992 in his paper Comparing Techniques by Means of Encapsulation and Connascence. Later, he elaborated more on the idea of connascence in h...
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 :)
Nuestro software debería tener la capacidad de poder ser modificado con un coste bajo. Para ello utilizamos algunas buenas prácticas de diseño o code smells que nos guíen (SOLID, Yagni, Demeter Law, etc). Pero a veces, estos elementos suelen ser algo subjetivos que a veces derivan en discusiones poco productivas para el fin. Los tipos de Connascence nos ofrece otra herramienta para evaluar nuestro diseño en otros términos, basado en 2 conceptos clave "Coupling & Cohesion" de los que Yourdon y Constantine ya nos hablaban en el año 79 en su famoso libro Structured Design. La charla hablará de los tipos de connascence (o grado de acoplamiento), como podemos ver el impacto que tiene en nuestro diseño y algunas maneras de resolverlo. El paradigma es OOP por lo que se hará una muy breve introducción sólo a Encapsulation, Informations Hiding y Messaging. Aunque he indicado que la charla será en español porque es mi lenguaje nativo, intentaré prepararla en inglés bajo la recomendación del documento para el call for papers.