Páginas

lunes, 13 de enero de 2014

Resumen workshop jBPM & Drools (10/12)


Hola devs!

Cerramos el año 2013 con un workshop de jBPM y Drools el 10 de diciembre de la mano de los compañeros de RedHat: Mauricio Salatino, Pere Fernandez y Walter Medvedeo.

Empezamos con una primera parte de presentación rápida con los conceptos básicos para poner en contexto a todos los asistentes: que son los motores de procesos de negocio y los motores de reglas, para que se usan y cuales son sus ventajas, y una introducción a jBPM y Drools.

A continuación nos presentaron la integración de jBPM y Drools en la nueva plataforma KIE ( Knowledge is Everything), sus principales características, ventajas y las muchísimas herramientas de soporte que hay en la plataforma KIE. Nos presentaron rápidamente las diferentes herramientas y como funciona la plataforma KIE. No pudimos profundizar demasiado para poder pasar a la parte práctica, pero en las slides os dejamos todo el detalle, y cualquier comentario o pregunta, como siempre será bienvenido ;)

En la parte práctica, todos los asistentes pudieron levantar la plataforma KIE en su laptop, con los ficheros que se habían distribuido previamente para el workshop y que podéis encontrar al final del post. Hicimos un tour rápido guiado por la plataforma: vimos un proyecto que teníamos creado (estructura, procesos, human tasks y forms), compilamos y deployamos el proyecto en la plataforma, iniciamos el proceso, ejecutamos las tareas, y vimos las herramientas de monitorización. Un tour muy completo, todo y que rápido por falta de tiempo, pero que sirvió de inicialización.

A continuación os dejamos las slides de la presentación y los ficheros necesarios para el workshop. En la parte final de la presentación podéis encontrar el guión del workshop por si alguno/a se perdió el workshop y quiere probarlo, vale la pena :)



Al final del workshop hubo una tanda de interesantes preguntas e intercambio de experiencias, y surgió el interés de una charla o workshop más centrada en el motor de reglas de Drools. Los ponentes les gustó la idea y están abiertos a buscar fechas y hablarlo ¿Que opináis? Necesitamos vuestro feedback ;) Si vemos que hay interés en la comunidad por temas de Drools o jBPM, miraremos de hacer más charlas y talleres.

Let’s go community!

lunes, 6 de enero de 2014

Introducción a Hadoop (9/1)

¡Hola!

¿Os habéis portado bien? ¿Los Reyes Magos os han dejado algún gadget? Esperamos que sí, pero si no es así, no os preocupéis que aquí os hacemos un pequeño regalo: os invitamos a nuestro próximo evento este próximo jueves día 9 a partir de las 19h, en La Fontana. En esta ocasión, nos centraremos en ese gran /*¿des?*/conocido que es Hadoop, este marco de trabajo diseñado para el procesado distribuido de grandes conjuntos de datos usando modelados simples de programación.


La charla, que será conducida por Ferran Galíconsistirá en una introducción al framework de computación distribuida Hadoop. Descubriremos qué necesidades influyeron en la aparición de ese nuevo paradigma y aprenderemos la base de los dos pilares que conforman la tecnología: HDFS para el almacenamiento, y MapReduce para el procesado. Seguiremos con unas pinceladas en algunos de los proyectos más importantes del ecosistema Hadoop, y terminaremos mirando la tecnología desde una perspectiva más pragmática, comentando algunos proyectos que cubran necesidades reales. 

Ferran Galí i Reniu es ingeniero en informática por la Universitat Politècnica de Catalunya y actualmente está trabajando como desarrollador backend en Trovit resolviendo problemas que requieran de un procesado masivo de datos, desde simples análisis hasta la compleja generación de los índices de búsqueda.

Esperamos poder contar con vosotros este próximo día 9, para poder comentar la jugada y de paso poder compartir experiencias e ideas para este año que justo acabamos de comenzar.

Un saludo,

sábado, 4 de enero de 2014

Summary: Introduction to Graph Databases and Neo4j (28/11)

Hi devs! How's the new year going? We hope everything goes well ;-)

As you remember, last 28th of November we received the visit of Neotechnology, the creators of Neo4j and they gave us a talk about this NoSQL database plus an introduction to Graph Databases in our community. Here is the summary of this talk by Stefan Armbrustrer, and of course, we would like to thank Stefan and Dirk for coming from Munich to talk about Neo4J inside our community, it was really a pleasure to host their talk.


First Stefan started his talk speaking about the trends and what is all about with terms like BigData and NoSQL: we need to rethink about how the data is increasing in size really really fast, why everything is almost connected in our IT world and how is increasingly connected (graphs are everywhere). 

Next, the talk continued with the description about what is NoSQL and why is not the magic key to solve all the problems related with query and save data. First, in the process of comparing a relational database with a non-relational one, we must think of what kind of NoSQL database to choose, and we have a bunch of different types: key/value, column-oriented, document, graph, etc. Depending on which are the problems you are trying to solve, the nature of your database will fit better one or another (ex: cost of the size vs complexity of your database).



When you think in a graph database, you must rethink your model in a way of connected nodes with relationships that have properties (key+value). Of course you can use indexes and in the case of Neo4j another functionalities like labels. Using the example of a social network, Stefan presented numbers comparing the performance of Neo4J vs another relational database and the results were really impressive: the rdbms was really slow (1000x) and increasing the number of records to a million didn't change the time response of the query, in fact, that's the key of the power of a graph database.


In this sense, Stefan showed us the strengths of a graph database for example, how powerful the model you can build like your can do in relational database, or how fast it is and how easy is to query, as well as their constrains, including the learning curve or your conceptual change you must do. The presentation went on the benefits of using Neo4j, and how powerful and functionalities it has: it can be embedded and use it with a lot of languages, provides acid transactions, integrates indexes and a REST API, high-availability, highly scalable, etc. Below, Stefan showed us in live how to play with Neo4J, and how beautiful is to query using a browser or with Java code and how easy is to work with this schema-free database. 

The talk ended with the sample of many of the customers Neotechnology are working with, and how they are satisfied using Neo4j and at the end, the closure was the raffle with few books about Graph databases that helped to end with a better taste this great talk. 

Ah! Here you can find the video in our Youtube channel as well as the presentation in our Slideshare account. Hope you will enjoy it as we did ;-)



Finally, from the BarcelonaJUG crew, we would like the best for this new year ...and happy coding!

jueves, 5 de diciembre de 2013

Workshop jBPM & Drools (10/12)

Hi community!

Llegan fechas navideñas y con ellas, nuestro evento de Diciembre!

Tal y como algunos ya sabéis, habíamos propuesto hacer un Workshop sobre jBPM y Drools el próximo día 10. Pues bien, dado vuestro interés (casi 30 personas estarían dispuestas a formar parte de este taller)... ¡os invitamos a ello!

Este próximo día 10/12, a partir de las 18:30h y de la mano de Mauricio Salatino, Pere Fernandez y Walter .
Medvedeo, ambos JBoss Core Developers os invitamos a este taller totalmente práctico sobre jBPM y Drools. Algunos reconoceréis a Mauricio como commiter de jBPM, Drools y responsable de jBPM Console NG y es que, el año pasado ya tuvimos el honor de invitaros a una charla que él nos dio.

El objetivo del workshop será introducir ambas tecnologias: jBPM como motor de procesos y Drools como Motor de Reglas. Hablaremos de las herramientas provistas en la version 6 de la comunidad JBoss y "jugaremos" con ellas. La idea del workshop es que podamos interactuar con estas herramientas con la ayuda de este gran equipo de desarrolladores. Siguiendo los ejemplos -que esperamos poder publicar en breve- esperamos que todos podáis instalar y seguir el taller con vuestro propio portátil, así que, si te animas, ¡no te olvides de traerlo! Por supuesto y en cuanto a los requerimientos de vuestro equipo, comentaros que utilizaremos JBoss 7.1.1 con lo que os recomendamos un portátil con un mínimo de 2GB Ram con JDK 6 (o superior) instalado.

Estad atentos que las plazas son limitadas, así que no te despistes y solicita la tuya en Meetup! Y recuerda que si no puedes asistir, liberes tu plaza para que otra persona pueda aprovechar la oportunidad.

See you!

sábado, 30 de noviembre de 2013

Resumen Introduccion a lenguaje Ceylon (07 / 11)

Hola juggers !!!!

El pasado 7 de Noviembre recibimos una presentación al lenguaje Ceylon de mano de Gavin King , líder del proyecto, y de Tako Schotanus.

Tuvimos una primera parte de presentación sobre las ventajas que aporta sobre otros lenguajes, y las particularidades de este lenguaje.

El lenguaje corre tanto en la JVM como en la máquina virtual de JavaScript haciéndolo muy versátil para desplegarlo en entornos variados.

Otra de las ventajas que aporta está en el apartado del tipado. Este es uno de sus fuertes mas impactantes.

Permite las uniones de tipos de tal forma que una variable puede ser de varios tipos ( covarianza y contravarianza ), adquiriendo uno concreto en su momento de asignación. 
A diferencia de Java no existe la palabra reservada null , que en cierto modo rompe el paradigma OOP de Java, y en cambio existe el tipo Null que no es más que un objeto más que depende de Anything , el tipo básico.

Esto junto con la unión de tipos nos permite definir ya en tiempo de ejecución qué métodos o funciones devolverán un tipo que jamás será null, o permitirán un argumento que sea o no nullable.  


Por fin podemos liberarnos del engorroso "NullPointerException".


Otro punto interesante de la unión de tipos hace que ya no debamos usar las Excepciones para pasar información añadida en el proceso de un método. 

Hasta ahora si un método encontraba una situación que debía reportarla como incidencia ( que no como Error ) debía usar las Excepciones porque obviamente el método no permite devolver 2 tipos ( a no ser que se usen argumentos output - cosa no recomendable según CleanCode ). 
Pero ahora podemos hacer que el tipo de salida sea algo como MiTipo | ErrorInfo de tal forma que si va todo bien devolvemos una instancia de MiTipo y sino devolvemos una instancia de ErrorInfo. Parece genial , no ?

La presentación fue eminentemente práctica usando Eclipse en gran parte de ella viendo de primera mano la forma de crear código y ver su resultado.

En definitiva una fantástica presentación de mano de dos comunicadores excelentes que hicieron amena y en ocasiones divertida ( es lo que tiene la mezcla de idiomas ;) ) pero con alto contenido técnico que hicieron las delicias de los asistentes....que por otro lado hay que decir, que tuvimos Full House .... Gracias a todos !!!





Aquí teneis la presentación y el video de la charla:

Videos : Parte 1/2 - Parte 2/2




 

sábado, 23 de noviembre de 2013

Introduction to Graph Databases and Neo4j (28/11)


Hi community!

We continue non-stop and this week we have a new and interesting event. 

We announce a great event next Thursday 28 November at 7:00 pm at La Fontana about Introduction to Graph Databases and Neo4j given by Stefan Armbruster. By the way, stay tuned, this time the talk will be in english.

We are really proud to present this talk with people of Neo Technology, which are the creators of Neo4j and we thank them for their visit to our community.


This talk will demonstrate how graph databases fit within the NoSQL space, and where they are most appropriately used. In this session you will learn:

- Overview of NoSQL 
- Why graphs matter
- Overview of Neo4j
- After laying the groundwork we'll explore Neo4j in live demo mode. We'll install Neo4j, import a sample dataset and discover Cypher, a graph traversal language.
- There's plenty of time to discuss your questions.

This talk will be given by Stefan Armbruster. He has spent ~15 years as a freelance consultant, mainly focused on web applications (esp. Grails). He's been working with Neo4J for the past 3 years. Aside from coding in the java ecosystem he is a passionate Linux veteran since the kernel 1.0.x days. When not coding, he cycles and is a volunteer firefighter at the local fire department, acting as a team lead and instructor. He's a true geek and loves technology, good food, and red wine.

We hope you can join and enjoy this talk, it’s a great opportunity to know graph and NoSQL databases from the guys that have first-half information!  

See you!

jueves, 7 de noviembre de 2013

Resumen introducción a Amazon AWS

Hi JUGers!

Algun@s ya pensaban que nos habíamos olvidado, pero...¡nada más lejos de la realidad! Estamos trabajando en algunos frentes así que iros preparando que llegarán nuevos eventos que esperamos que sean de vuestro interés.

Dicho lo cual, pasamos a resumiros cómo fue nuestro pasado evento del pasado día 15, en el que Alfons Nonell-Canals (CEO de Mind the Byte) nos introdujo las bondades del cloud a través de los servicios de Amazon AWS.

Lo cierto es que charla que nos brindó Alfons, partió de la experiencia que desde Mind the Byte (Technology Partner de Amazon AWS) han tenido en relación a los servicios que han utilizado en la nube de Amazon y desde ahí, quedó muy claro su punto de vista y las ventajas que les ha brindado su uso. Desde ese punto de partida, Alfons nos explicó porqué su uso, les cambió -literalmente- la vida (a mejor). En ese sentido, y dentro del marco científico en el que se mueve Mind the Byte (compañía especializada en proveer soluciones en la nube para el descubrimiento de fármacos), la apuesta por el cloud les permitió afrontar y resolver los problemas de grandes inversiones iniciales a realizar, la falta de flexibilidad y los grandes problemas que conllevan la actualización del software (upgrades, etc).

Después de esta aproximación inicial, Alfons pasó a comentarnos las diferencias entre los diversos servicios ofrecidos en la nube (IaaS, PaaS, NaaS y SaaS) y también se pasó a mencionar algunos de los proveedores más famosos en el sector. A partir de ahí, la charla se centró en la explicación más en detalle de los servicios que provee Amazon AWS para la gestión de los servicios en la nube, de manera que se describió los más importantes relacionados con el procesamiento y gestión de la red (EC2, AutoScaling, Elastic Load Balancing, VPC), almacenamiento y CDN (S3, Glacier, EBS), así como gestión de base de datos (Amazon RDS) y otros servicios de propósito general (Amazon SES) o relacionados con el deployment, gestión de alertas o seguridad (CloudWatch, CloudFormation, AIM).

Por último, Alfons nos explicó algunos casos de éxito en los que desde Mind the Byte han estado colaborando en la definición e implantación de una arquitectura en el cloud con el soporte de los servicios de Amazon AWS: desde la publicación de una API móbil a un sistema web diseñado para el cálculo de procesos complejos, sistemas todos, autogestionados y autodimensionados para el aprovechamiento máximo del uso (y coste) de los recursos.


En fin, en resumen, una gran aproximación al uso del cloud a partir de los servicios de Amazon AWS, os dejamos a continuación con la presentación de Alfons así como la charla que, como siempre, tenéis disponible en nuestro canal en Youtube.




Un saludo y esperamos que os gustara!