lunes, noviembre 28, 2011

Adios Red Hat

Esta semana dejé Red Hat, una empresa en la cual crecí muchísimo y formé parte de un grupo de elite técnica y comercial que voy a valorar por el resto de mi vida profesional. Más allá decir que conocí mucha gente con buena onda y que estoy seguro que van a ser amigos. Lamentablemente no estuve los 2 años que hubiese querido estar, fueron solo 1 año y 3 meses, pero creo que me dieron una visión del negocio, industria y comercial que en IBM iba a tardar mucho en adquirir.

También aprendí muchos skills técnicos que no tenía, en IBM esta muy especializado y no tenia la oportunidad de meterme tan de lleno en temas de infraestructura.

Por otro lado comencé a contribuir código a los proyectos open source, algo que me abrió la cabeza y me dí cuenta que un open source developer es alguien muy respetable y que no cualquiera gana reputación en la comunidad por tirar algunas lineas (como yo), espero seguir con este hobbie :)

Definitivamente el Open Source es un modelo que va a seguir creciendo, y cada vez más van a ser parte fundamental de las empresas y organizaciones.

Con respecto a mi nuevo desafío, es en Pami, como Gerente de Tecnología en Información y Comunicaciones, recién voy una semana y es un puesto con muchas responsabilidades y con iniciativas más que interesante para los próximos años. Habiendo trabajado como Arquitecto por tanto tiempo y Liderando profesionales en IBM, estoy en un momento justo para conducir y gestionar una gerencia y no solo eso, sino que más que nunca me puedo poner la camiseta de mi país y hacer algo bueno para el y no para una corporación.

Espero seguir teniendo tiempo para contar mis experiencias y crecimiento en esta nueva etapa de mi vida profesional, y con poco tiempo me doy cuenta que aquí cuento con un equipo muy profesional.

lunes, octubre 31, 2011

JUGAR: Evento Anual de Desarrolladores Java

El Martes 1ro de Noviembre, se llevará a cabo el primer evento anual de Java User Group de Argentina, JUGAR, un grupo bastante nuevo que viene haciendo eventos mensuales muy copados y cerveza bien fria. Lo que me gusta del grupo es que tienen un buen volumen por ser mensual y no hay talibanes puro Java, hay gente con ganas de aprender lenguajes nuevos y no tienen ningún problema en adoptar técnicas provenientes de otras tecnologías o comunidades.
En esta ocasión yo voy a hablar de Web Frameworks, sería algo así:

El objetivo es una rápida introducción a frameworks web actuales y emergentes, para crear aplicaciones web, describir sus ventajas y desventajas. Este es un resultado de una investigación luego de haber desarrollado aplicaciones Web por más de 10 años en diferentes plataformas y lenguajes.
Temario
1) ¿Que nos importa de un web framework?
2) Evolución de los frameworks
3) Frameworks maduros (GWT, SpringMVC, JEE5 Seam y Rails/Grails)
4) Comparación de frameworks
5) Frameworks emergentes (JEE6/CDI/Forge, Play, Wicket)
6) Otras ideas
7) Conclusión 


En el evento habrá charlas de Play!, Netty, Turneric, iPaaS, JRapid, Mulesoft y JBoss. Acá está la descripción del evento. 


Todavía quedan lugares, mi charla es a las 15hs. Los espero!

viernes, septiembre 16, 2011

Participación en la CISL 2011

La semana pasada tuve la oportunidad de participar en la Conferencia Internacional del Software Libre del 2011, donde se brindan charlas relacionadas con el tópico y tuvieron la participación de Anibal Fernandez y Richard Stallman. Digamos que es una conferencia que viene creciendo año a año y Red Hat es el segundo año que sponsorea el evento.

Por temas laborales solo pude asistir a la presentación de Anibal y obviamente la mia :)
Anibal planteo un mensaje muy interesante, diciendo que todos los años contaba planes del gobierno con el open source, pero este año quería contar lo que habían hecho, esto fue lo que me quedó:
  • Las laptops de conectar igualdad tienen doble booteo, win7 y ubuntu. Yo lo veo como un avance, espero que la próxima versión solo tenga Ubuntu.
  • Anunciaron el contrato marco que firmó el gobierno con Red Hat para tener soporte al software open source
  • La nueva aplicación de argentina compra, ecom, está siendo desarrollada completamente en software open source (jboss+redhat)
  • Anunció la publicación de la nueva oficina de Software Público, que lo dibujó por el lado abierto, pero está claro que esta oficina va a manejar software no open source.
  • Comentó los avances del Ginga por ser código abierto para la TV Digital.
Acá les dejo un post de un periodista.
En mi caso, yo di una charla de ALM, de 20 minutos que tenía un abstract como el siguiente:
Titulo de la ponencia: "Manejo del ciclo de vida de desarrollo de software con Open Source"
Abstract: "A lo largo de los años el Open Source fue cruzando barreras, desde plataformas robustas como sistemas operativos, bases de datos y servidores de aplicaciones hasta frameworks y librerías de desarrollo, en esta charla queremos exponer un conjunto de herramientas open source que nos van a permitir gestionar el ciclo de vida de las aplicaciones (ALM) de manera consistente, trazable y automatizada explicando los conceptos detrás de ingeniería de software y los beneficios de una correcta implementación."
Acá les dejo los videos de la presentación:

viernes, agosto 12, 2011

Introducción a Scala - JUGAR

La semana pasada tuve la oportunidad de participar de una muy buena charla de Scala que se dió en el Java User Group de Argentina, un nuevo grupo que se creó hace bastante poco y está realizando charlas mensuales muy interesantes. Les recomiendo que se registren en el Meetup del grupo y comiencen a participar de las actividades, me estoy postulando para dar una charla para fin de año.
El disertante fue Gustavo Arjones, quien realmente poseía un buen conocimiento teorico-práctico y lo que más me gustó es que explicaba las cosas como un muy buen nerd, con pasión y ganas de contar lo divertido que era utilizar scala. Y algo que también me gustó es que tenia buen background en .NET, lo cual hizo buenas comparaciones.
Obviamente fue una charla de una hora y no se pudo entrar demasiado en detalle, pero fue lo suficiente como para entender los principios del lenguaje y como arrancar. Scala es un lenguaje que corre sobre la JVM, que ofrece una sintaxis y semántica muy concisa y elegante para construir una aplicación integrando ideas de la programación orientada a objetos y la programación funcional.
Acá les dejo la referencia a los materiales expuestos en la charla y las slides.
Cuales fueron mis conclusiones:
  1. Realmente me pareció un lenguaje de avanzada y que incorpora conceptos de la programación funcional que permiten aplicar el concepto "tell don't ask" de manera más sencilla
  2. Tiene una sintaxis muy elegante, minimalista y poderosa, realmente me hizo acordar a ruby
  3. La manera de crear mixins con traits es genial, ver el ejemplo en la presentación
  4. Como viene pasando, los IDEs ya están integrados y Netbeans parece ser el mejor preparado
  5. Posee una IRB para tirar lineas en una consola interactiva, lo cual permite aplanar la curva de aprendizaje y ser muy productivo
  6. El lenguaje se jacta de ser type-safe, lo cual es verdad, pero realmente hubiese esperado algo más dinámico, entiendo el trade-off pero es ahí donde mi corazón se vuelve a volcar un poco más a Ruby/JavaScript.
  7. Como corre en una JVM, es prácticamente natural invocar POJOs desde scala y viceversa
  8. Framework muy potente de Unit Test, incluso se podría usar para testear clases java, es más es una manera excelente para empezar
  9. Frameworks Web como Play! tienen soporte para scala
En fin, esas fueron mis conclusiones, espero que le hayan gustado y si alguien lo prueba me comenta como le fue, yo tendré que planificar un poco de tiempo para hacerlo, no lo veo en los próximos 2 meses al menos.

lunes, agosto 01, 2011

Conferencia RubyConf - Argentina

Hoy me enteré que para Noviembre se va a estar haciendo en el Konex, la RubyConf Argentina, es una conferencia destinada a profesionales interesados en Ruby, Ruby on Rails y Metodologías Agiles. Acá tienen un poco más de información.
Por diferentes razones me interesa esta conferencia:
1) El lenguaje ruby me parece el más expresivo, simple y productivo para programar (ojo, lo dice un programador mediocre)
2) Considero que R/ack/oR podrían ser la base para una plataforma PaaS productiva y escalable. No solo por el lenguaje sino por la filosofía, Ruby cuenta con plataformas muy interesantes que permiten escalar sin problema como Redis, y hay sitios con mucha concurrencia montados sobre Ruby (parte de Twitter, GitHub, los primeros que se me vienen a la cabeza). Por el lado de la productividad, nuevamente, los frameworks en ruby son los más simples del mercado, mucha convención y muy buena curva de aprendizaje.
3) Vienen speakers muy copados.
4) La gente de ruby es muy copada, en general, son todos bastante freak y abiertos al dialogo, son menos organizacionales y trabajan más en start-ups.

Yo estoy viendo si puedo ir a hablar de algo que interese, en principio se me ocurren los siguientes temas:
  • Introducción a Torquebox, el App Server de Red Hat para aplicaciones ruby
  • La plataforma de Red Hat PaaS llamada Open Shift para construir aplicaciones Ruby (que todavía está en pañales).
  • El cliente de Ruby que que comencé para Infinispan, la DB NoSQL (data grid)
Y si, todo relacionado con Red Hat, que le voy a hacer, el open source me fluye por la sangre, se me hace más facil trabajar con cosas del día a día.

viernes, julio 29, 2011

Primeros pasos con JBoss App Server 7

Esta mañana arme un video muy rapidito sobre JBossAS 7, mirenlo:

Introduccion a JBoss AS 7 from JBossAlchemist on Vimeo.

Les dejo las URLs que use:

  • JBoss AS 7 - http://www.jboss.org/as7.html
  • Downloads - http://www.jboss.org/jbossas/downloads/
  • Getting Started Guide - https://docs.jboss.org/author/display/AS7/Getting+Started+Developing+Applications+Guide


lunes, julio 25, 2011

Finalmente subí algunas fotos de Boston

Todavía les debo el resumen de las charlas y lo que quedé, pero estoy seguro que para el viernes voy a subir un video con las cosas que más me quedaron de ambas conferencias, la JUDCon y el JBoss World.

viernes, julio 15, 2011

JBoss AS 7

Esta semana salió la versión final de unos de los proyectos open source más esperados del año, el JBoss Application Server 7. Desde la JUDCon en Boston vengo interiorizándome y en las últimas semanas comencé a presentarlo en algunos clientes (los más avanzados) y obviamente haciendo pruebas locales y en EC2. Quiero explicar los nuevos features:
  • Nueva arquitectura modular: Cambio de la arquitectura, ahora es algo mas lightweight, donde hay un pequeño contenedor de Modules, y que exponen Services, parecido a OSGi pero más simple. Todo esto controlando los "spaces" de depnedencia y classloaders concurrentes, esto permitirá aislamientos de aplicaciones y terminar con la locura de los classpaths en Java
  • Realmente rápido: El startup dura menos de 4 segundos, promedio 3 pero algunas veces han sido de 1.x segundos. No más Jetty locales, con hot e incremental deploy hace la vida del programador más productiva.
  • Soporte de JEE6: Estamos hablando de CDI, JPA2, EJB3.1, JAX-RS y todas las mejoras introducidas en esta especificación purgada.
  • Testeable: Arquillian ya está incorporado desde el vamos, esta es una excelente herramienta de Test de Integración para correr tan rápido como los Unit Test pero asegurándote que está corriendo en un JBoss
  • Mejoras radicales en la administración: Este es un punto importante ya que ahora existe un nuevo concepto de Dominio de servidores y Controllers de esos dominios, lo cual permite una administración más consitente y con esto una nueva consola de administración.
Se lo pueden bajar de aca. Van a ver que tienen dos versiones, Web Profile y Full, y es por que Oracle todavía no corrió los test de certificación, están tardando más de la cuenta. Pero les recominedo que usen el full sin problema, es solo un tilde en un checklist.

Acá también les dejo algunos Webinars muy buenos:
  1. JBoss AS7 - The Next Generation: Vimeo On Demand
  2. EE6 Programming - Immediate Productivity: Vimeo On Demand
  3. Operations, Administration & Management of JBoss AS7: Vimeo On Demand
  4. Clustering for High Availability (HA) with JBoss AS7: Vimeo On Demand


miércoles, julio 13, 2011

Introducción a Soluciones de BRMS

Aca les dejo un video que grabe armé hace varios meses en Red Hat y nunca lo publiqué. El objetivo es introducir teóricamente a soluciones de BRMS y motores de reglas, también expliqué un poco la arquitectura de JBoss BRMS la versión empresarial de Drools.

Introduccion Soluciones BRMS - Red Hat JBoss from JBossAlchemist on Vimeo.


Cualquier comentario será bien recibido.

miércoles, mayo 04, 2011

Terminó la JUDCon 2011 en Boston

Así es, terminó la JUDCon, una conferencia muy interesante donde tipos muy grosos dieron charlas y compartieron su conocimiento. Creo que el 80% de los asistentes eran otros developers de JBoss, estaban los líderes de todos los proyectos (JBossAS, Infinispan, jBPM5, Drools, HornetQ, TorqueBox). Entre los personajes se pudieron destacar Peter Nuir, Dan Allen, Bill Burke (no lo vi pero se que estuvo), Mark Little y Manik Surtani, en fin muchos tipos que vienen aportando a proyectos open source de jboss y a java en general.
Mucha de las charlas fueron extremadamente técnicas y obviamente dadas por los mismos desarrolladores, lo cual lo hacia muy interesante aunque algunas veces un tanto aburridas por la falta de capacidades de presentación, pero al ser de 1 hora, estaba bien.
Estas fueron las charlas que participe:
  1. Demystifying Complex Event Processing (CEP)
  2. Building Cross-Device Apps with Flex and JBoss
  3. Hacking Java EE: CDI extension n00b to l33t in 60 minutes
  4. Drools and jBPM5 in the Real World
  5. Modular Class Loading with JBoss Modules
  6. Weld - past, present and future
  7. Infinispan for ninja developers
  8. Scaling Rails Applications with TorqueBox
  9. Rapid Enterprise Java: RAD Frameworks for developer productivity on JBoss
  10. HornetQ 2.2 new features and what we are planning for the future
Lamentablemente no estoy con mucho tiempo acá para escribir sobre todas, y no todas valen la pena, ya que tengo poco tiempo y ya debería haber rajado al World Trade Center donde se está haciendo el evento. Lo que voy a tratar de hacer es preparar un videito durante el día y lo posteo en un segundo post.
Si no leyeron mis twets durante la conferencia (casi 60), no duden en buscarme @jbossalchemist.

domingo, mayo 01, 2011

Semana desde Boston

El viernes viajé 14 horas para pasar una semana en Boston, Massachusett. y realmente después de dos días quedé maravillado con la ciudad es realmente hermosa. El principal objetivo del viaje es el JBoss World, que arranca el Martes 3 a las noche y termina el Viernes al mediodía. Pero aproveché también voy a asistir a la JUDCon que son los dos primeros días de la semana, esta última es un evento de desarrolladores (shhhh no voy a decir que soy arquitecto) y en gral las charlas son de bajo nivel.
Por ahora estoy parando en el barrio pituco de Beacon Hills, en la casa de Mili y Fer, dos grandes amigos que están viviendo acá hace 3 años, y que tienen una gorda divina, Sofi que la verdad estoy embobado y es muy dulce.
El sábado llegué y recorrimos varios barrios, comimos afuera y terminamos el día en el Quincy Market, básicamente toda la parte norte de Boston. Hoy salimos a recorrer en bici todo lo que es el Charles River, y obviamente visitamos el MIT y Harvard, realmente esta única es increíble. Y después de hacer casi 20km nos fuimos a jugar al tenis con Fer al Boston Common, un parque muy muy lindo que tiene canchas de tenis públicas.
En fin, la verdad que la ciudad es de otro continente, una arquitectura zarpada, es soñada.
Mañana voy a escribir un poco más sobre las charlas, estoy bastante expectante de escuchar a tipos como Bill Burke, o temas como CEP y JEE6.

domingo, abril 10, 2011

Otro año de APIT, viene con cambios...

Comenzamos un nuevo cuatrimestre de APIT con bastantes cambios, este es el 6to año y realmente lo estoy tomando como uno de los últimos, o por lo menos es lo que vengo diciendo hace un tiempo, pero la verdad que me gusta enseñar y sobre todo las discusiones con otros arquitectos de software y en clase. Este año hubo cambios interesantes, acá intento enumerarlos (as usual):
  • Tuvimos dos muy buenos ingresos, Ariel Cassan y Pablo Gonzales, ambos ex alumnos del cuatrimestre pasado que terminaron con excelentes notas y se nota que son del palo.
  • Hemos decidido terminar todos los apuntes y crear presentaciones más minimalistas que hagan foco en el mensaje y no tanto en la teoría. Voy a seguir profesando por el uso del pizarrón, que es un asset que en APIT no utilizamos del todo.
  • Vamos a traer gente los grosos de 10Pines para hablar de Metodologías de Agile y también a un Arquitecto de Infraestructura de Personal para dar la clase de infraestructura
  • Vamos a agregar consideraciones sobre arquitecturas para dispositivos móviles en las clases de creación de arquitectura
  • Vamos a crear un apartado de BPM, Motor de Reglas y CEP en la clase de lógica de negocio.
  • La idea es agregar ALM y los beneficios desde el punto de vista de la arquitectura en la clase del rol del arquitecto.
Bueno, esto es un poco en resumen y las ideas que voy a impulsar, ojalá podamos hacer al menos el 80%.

lunes, marzo 21, 2011

JUDCon Boston 2011 - Infinispan Ruby Client

Finalmente no me aceptaron, no dieron explicaciones, solo que hubo muchos abstracts submitidos y no tenían lugar. Esta fue la respuesta.

"Hi Gustavo. Unfortunately your session on Test Driven Development in JEE6 wasn't accepted for JUDCon Boston. However, hopefully you'll consider submitting this for the next JUDCon or maybe giving a lightning talk at this JUDCon if you are around?"

En fin, siempre mirando el lado positivo, voy a tener más tiempo para hacer otra cosa ( y no aprender tanto JEE6 por ahora) y finalmente elegí programar un poco, en este caso propuse contribuir al proyecto Infinispan, que es un grid de datos (o cache distribuida avanzada) para armar el cliente que soporta un protocolo llamado HotRod para el acceso a la cache soportando load balancing.

Ya hice un par de pruebas al menos dos operaciones están funcionado (put y get), el código está disponible en github para el que lo quiera vez. Algunas de las conclusiones que saqué armando este cliente en unas 12 horitas:
  • No lo voy a parar de decir, Ruby la rompe, es increíble lo feliz que soy programando (I feel alive)
  • Hace unos meses que vengo laburando con git y github, realmente me sentí muy cómodo
  • Laburé por primera vez seriamente con BDD en casi el 40% del código que hice,como había mucho trabajo con sockets, al principio hice mucho IRB, pero después con los temás técnicos y de lenguaje resueltos seguí con BDD y RSpec.
  • Me impresioné positivamente con la cálidad del código open source de la gente que hizo Infinispan, todo muy claro, simple de entender y robusto, esto es para los giles que critican el open source.
  • Todavía no me decidí con el IDE, por ahora estoy con RedCar, pero estoy volviendo a probar Aptana.

jueves, marzo 03, 2011

JUDCon Boston 2011 - TDD en JEE6

La semana pasada me pidieron que piense en diferentes presentaciones para proponer en esta conferencia anual de JBoss, obviamente mi primer pensamiento fue "ojo que hay nenes grosos ahi, y la mayoría son core-developers de JBoss, que voy a hacer yo un alquimista de software?" en fin, pensé en tres presentaciones y finalmente submití una sola, que es la siguiente:

1. Proposed track:
JBoss Application Server & Java EE 6
2. Your name
Ing. Gustavo Andrés Brey
3. Bio
Gustavo Andrés Brey is a Solution Architect at Red Hat, Buenos Aires, Argentina. He has more than 11 years in the design, development and leading implementation of information systems. He has been specialized in object-oriented and web application technologies. He has founded a subject at a National University, UTN FRBA where he teaches Software Architecture, Agile Methodologies and Service Oriented Architecture.
4. Title of talk
Test Driven Development in JEE6
5. A brief summary of the presentation (around 30 words)
This presentation will give a set of recommendations about how TDD can be implemented as part of the daily work in a JEE6 architecture (CDI, JSF2, JPA2, etc)
6. A description of the presentation (around 200 words)
TDD is a proven design practice that helps to achieve better quality software and gain productivity once adopted. And JEE6 is the new set of standards that makes enterprise software development easier, so this talk will demonstrate how TDD can used as a design technique to build each of the component of an enterprise application on top of JEE6 architecture.
Proposed agenda:
* Quick introduction to TDD and JEE6
* JEE6 Application Architecture example (JSF2, JAX-RS, CDI/DI and EJB 3.1)
* Testing first considerations
* Unit testing and refactoring considerations
* Test double considerations (Dependency management)
* Recommendations and best practices (Architecture, Integration Test)
During this session, you’ll find useful recommendations along with code examples in a real JEE6 application.
7. The name and bio of any co-presenters
-

Voy a ver como me va, el 11 de Marzo me contestan y en base a eso me voy a tener que poner a laburar :)

Los otros dos temas que se me ocurrieron fueron los siguientes:
1) Como impactan un BRMS en las Arquitecturas de Aplicaciones. Analizar un poco los atributos de calidad (performance, modificabilidad, disponibilidad, seguridad, etc)
2) The future of the RIA development with HTML5 and JBoss. Aca tendría que pensar un poco a futuro y como el server side debería adaptarse con Comet (reverse ajax), Rest, transacciones, replicación de estado, independencia de dispositivo, etc, etc.

Les gusta?

miércoles, enero 12, 2011

Muy buena presentación sobre frameworks Web actuales

Es una presentación en ingles de Burr Sutter, un fellow de Red Hat que la tiene muy clara y es muy accesible, realmente un groso.

Web Frameworks on JBoss (Having It Your Way) from JBoss Developer on Vimeo.



Me gustaron varias cosas:
  • Como le dió la vuelta a la evolución de los Web Frameworks
  • Como ve el futuro de las aplicaciones (que comparto) creando RIAs (HTML5/JS) y pegandole a servicios "REST" procesando JSON
  • Todavia tengo que pensar un poco si me gusta JSF2, seguro me gusta muuuucho más que JSF (legacy) pero tengo que aprender
  • Algunos temas de JEE 6(CDI) vienen bien también
Espero que les guste, obviamente tiene su cuota corporativa y habla de que todos estos frameworks, SpringMVC, GWT, etc, etc pueden correr en JBoss fácilmente.