martes, 27 de diciembre de 2016

Madrid-GUG Enero 2017: Operaciones en Microservicios con Groovy

En la primera reunión del año Andrés Viedma (@andres_viedma) nos hablará de Microservicios y Groovy.
Bienvenido a un viaje por el barro, explorando las entrañas más profundas de Groovy a través de artefactos arcanos como las metaclases, el class loading dinámico, el autocompletado en runtime de la shell, la configuración por repositorios GIT, los servicios REST y las transformaciones AST, y haciendo algunos trucos oscuros (y a veces -con suerte- sucios) para conseguir lo que nos vamos proponiendo.
La excusa para este viaje será la realización de operaciones sobre una arquitectura de microservicios en la que potencialmente podemos tener cientos o miles de ellos, y sobre los que muchas veces tenemos que llamar a sus funciones para ajustar datos o simplemente hacer tests manuales. Por supuesto, podemos hacer todo eso usando CURLs o cualquier interfaz gráfica que nos facilite hacer llamadas de este tipo.
O... también podemos utilizar la naturaleza dinámica de Groovy y su shell para facilitar estas llamadas y tener a nuestra disposición toda la potencia del lenguaje para manipular estos datos. Planteándonos por el camino cosas como llamadas dinámicas "naturales" a los servicios, acceso rápido a la documentación, autocompletado dinámico de funciones, o la creación de un directorio centralizado y "auto-actualizable" de servicios.
Si eres un vago, tienes memoria de pez, te gusta la shell y amas la magia negra, esta es tu charla.


Video:


Slides:

Código:
https://github.com/andresviedma/sourcegrape
https://github.com/andresviedma/dynapiclient-groovy
https://github.com/andresviedma/groovy-assets-directory-example

lunes, 14 de noviembre de 2016

Madrid-GUG Diciembre 2016: Macro macro, burrito burrito

El último meetup del año correrá a cargo de Mario García (@marioggar) que hablará de "Macro macro, burrito burrito":
Una de las killer features de Groovy siempre han sido las transformaciones AST. Estas transformaciones permiten al desarrollador generar código en tiempo de compilación, código que puede ser generado, y comprobado estáticamente por el compilador. Eso ha hecho que frameworks como Grails o Spock sean tan populares, ya que permiten reducir el código necesario para implementar una solucion concreta, ya sea una aplicacion web, o un test. El problema con las ASTs es que desarrollarlas siempre ha sido una tarea compleja y oscura...muy oscura. En esta charla mostrare las bondades de 'groovy-macro` un nuevo modulo que estará disponible en Groovy 2.5.0 y que hará que generar código en tiempo de compilación sea casi tan sencillo como programar mientras comes burritos... bueno quizas no tanto :P

lunes, 17 de octubre de 2016

Madrid-GUG Noviembre 2016: Arañas, Webbots y Scrapers con Geb

Después de haber tenido una introducción a Geb en el pasado meetup, en esta ocasión Sergio del Amo (@sdelamo) nos contará cómo scrappear páginas web utilizando Geb:
Geb es una fantastica herramienta de automatización de navegador. Se usa a menudo para crear test funcionales para páginas HTML. Sin embargo, Geb brilla también como herramienta para crear Arañas y Scrapers.
En esta charla, a través de varios ejemplos, aprenderás como:
  • Scrapear páginas HTML con Geb Pages y Geb Modules
  • Páginar dentro de una Web y guardar los datos creados como una base de datos SQLite o un archivo Plist
  • Cambiar el user agent
  • Superar dificultades de scrapeo como contenido escondido.

lunes, 12 de septiembre de 2016

Madrid-GUG Octubre 2016: Geb + Spock: larga y próspera vida a tus tests funcionales

Para esta reunión Esther Lozano (@esloho) nos va a hablar de cómo hacer test funcionales con Geb y Spock:
Todos sabemos que los tests son importantes y por eso no nos dejamos ni uno... ¿¿seguro?? ¿Y los funcionales qué? Los pobres se han llevado la fama de ser engorrosos, muy susceptibles a cambios y difíciles de mantener, ¡pero ellos no tienen la culpa! Sino el no usar herramientas como Geb que nos permiten tener tests funcionales bien estructurados, intuitivos y fáciles de mantener.
Geb es un framework en Groovy para la automatización de navegadores construido sobre WebDriver y que implementa el patrón página. Veremos sus principales características y varios ejemplos en funcionamiento. Y aunque Geb es compatible con los frameworks de testing más utilizados se lleva especialmente bien con Spock, con el que nos salen unos tests bonicos del tó. Y si no, juzgad vosotros mismos tras ver esta charla-demo :D


lunes, 22 de agosto de 2016

Madrid-GUG Septiembre 2016: Groovy everywhere incluso en aplicaciones escritorio

En nuestra siguiente charla Jorge Aguilera (@jagedn) nos hablará sobre cómo usar "Groovy everywhere incluso en el escritorio"
Antes o después asumirás que no todo se puede/debe hacer con aplicaciones web. Un control fino del GUI, acceso a dispositivos del usuario, uso intenso de CPU,... cualquiera de estas cosas te harán plantearte que tienes que volver a Swing y querrás tener un amigo en esos momentos. 
Griffon es un framework al estilo de Grails que te permitirá seguir utilizando tu lenguaje favorito ( Groovy ¿verdad? ) , un uso cómodo del patrón MVC, una gestión sencilla del hilo gráfico, etc. Además no sólo podrás usar Swing, sino JavaFX, Apache Pivot, ..
GriffDnie es una aplicación demo basada en Griffon, que permite a un visitante identificarse con su DNI electrónico y firmar un acuerdo de confidencialidad antes de acceder a nuestras instalaciones. Acude a la charla con tu DNIe actualizado (y con tu clave de acceso) y lo probamos en directo.


viernes, 27 de mayo de 2016

Madrid GUG Junio 2016: Construye un app con Groovy en Android y consume un API JSON de Wordpress

En nuestra siguiente charla Sergio del Amo (@sdelamo) nos hablará sobre cómo "Construir una app con Groovy en Android y consumir un API JSON de Wordpress"
Aprende a crear el backend para una conferencia con Wordpress custom post types y custom fields. Consume mediante una librería de Groovy en Android el API JSON generado por el backend antes creado. Construye un app de Android con Groovy para consumir esta información.  
Después de esta charla sabrás que te aporta Groovy en el desarrollo de Android y como montar un backend muy económico con Wordpress. 




Video:




Slides:








jueves, 14 de abril de 2016

Madrid GUG: Mayo 2016: Usa los Test para Documentar tus servicios REST con Grails

Siguiente reunión del grupo a cargo de Jorge Aguilera (@jagedn) nos hablará sobre Usa los Test para Documentar tus servicios REST con Grails
Un API sin documentación es como un jardín sin flores.  
Ahora que ya has asumido que debes tener test para asegurar su funcionamiento, y que Spock es ideal para ello... ¿porqué no los aprovechas y les dejas que también te hagan la parte sucia de documentar el API?  
--------




Video:




Slides:

http://pvidasoftware.github.io/blog/slides/2016/ddr/slide-docu-driven-rest.html


Código:
https://github.com/jagedn/twitterpeople









miércoles, 17 de febrero de 2016

Madrid GUG Marzo 2016: Sesión de dos charlas: "Groovy para Javeros" y "Test de apps Java con Spock"

En esta ocasión tendremos dos charlas de duración media (aproximadamente 30-40 minutos):
Pablo Alba (@_pabloalba_) hablará sobre "Groovy Goodness: Porque groovy no es java sin punto y coma"
Groovy es un lenguaje magnífico, muy divertido de programar, que hace que trabajar con la JVM sea un placer. A menudo se habla de que tiene una curva de aprendizaje casi nula desde Java. El problema es que esto lleva a que se desconozca gran parte de su potencial. En esta charla quiero comentar a modo de "pildoras" algunos de los aspectos más interesantes de groovy. Para ello me basaré en mi propia experiencia, y en el magnífico libro "Groovy Goodness Notebook".


Slides:

Video:





Después, Iván López (
@ilopmar) "Spock: O por qué deberías utilizarlo para testear tu código Java"
¿Recuerdas esos días en los que testeabas utilizando JUnit? ¡Qué! ¿Todavía lo usas? ¿Es aburrido, verdad? Seguro que te inventas un montón de excusas para no testear tu código. Por suerte esos días pertenecen ahora al pasado porque Spockestá entre nosotros.
Spock es un framework de tests basado en Groovy que podemos utilizar para testear aplicaciones Java y Groovy que hace que escribir tests sea divertido otra vez. Podemos escribir tests totalmente expresivos, fáciles de leer y de mantener debido a su DSL y a todo el poder de Groovy.
En esta charla tipo live-coding aprenderás por medio de ejemplos los conceptos básicos de Spock y verás qué fácil es testear aplicaciones Java. ¡Te advierto que después de la charla no tendrás ningún excusa para no testear tu código!


Video:



---------

lunes, 8 de febrero de 2016

Madrid GUG Febrero 2016: Sesión de lightning talks

En esta ocasión tendremos 2 lightning talks.
Rafael Bermúdez (@rafbermudez) hablará de:
GORM for Cassandra



Apache Cassandra es una base de datos NoSQL altamente escalable. Con la llegada de Gorm 5, se ha abordado una 'as-complete-as-possible' implementación GORM que mapea las clases de dominio e instancias a tablas de Cassandra 2.0. Veremos brevemente qué es Cassandra y qué MAGIA nos proporciona esta capa Gorm para hacernos la vida más fácil.


Slides:


Video:

Y después,  Toni Mas (@390amr) nos contará...
May the Groovy be with you! Gradle, Groovy, Spring Boot. El cielo es el límite


¿Os ha pasado que para convertiros en un caballero Jedi de Groovy, habéis querido meter las rutinas de aprendizaje del maestro Yoda en vuestro día a día y entonces ha llegado algún Conde Dooku tocando las narices o peor, un Jar Jar Binks diciendo que "si madre mía", "que pa qué misa aprender groovy"? Pues a mi si me ha pasado y esta es la historia de cómo usé -f... quiero decir, la fuerza para seguir las doctrinas de los grandes maestros Jedi en mi día a día. En el ejemplo que es más bien sencillo, montaremos un pequeño programa que permitirá publicar una serie de servicios web para que el halcón milenario pueda tener toda la información necesaria para cargarse a los acorazados estelares y sepa bien donde está el conducto ese de la estrella de la muerte... ¿Spoiler a estas alturas? 

Slides:


Video:


Código: https://github.com/amr390/versioning-poc

Enlace a la página del Meetup